Partie 1 : Manipuler les commandes de base d’un OS GNU/Linux
Conditions de mise en oeuvre
Travaux et Compte rendu : vous devez réaliser un Travail individuel, vous ferez un compte rendu,avec un traitement de texte, sous le nom "comlinux" , vous utiliserez des captures d'écran pour justifier les réponses aux questions relatives à des saisies de commandes, votre compte rendu sera à déposer dans votre dossier u:\Documents\devoir\nom du prof
Compétences attendues:
Identifier les fonctions d’un système d’exploitation.
Utiliser les commandes de base en ligne de commande.
Gérer les droits et permissions d’accès aux fichiers
Travail demandé
créez une machine virtuelle avec le disque dur lubuntu.vdi du dossier c:\Machines Virtuelles
Utilisez le compte : nsiuser , mot de passe : nsiuser pour ouvrir une session.
1. Se situer dans l'arborescence du système de fichier
- Commande: pwd
La commande pwd vous permet de vous localiser dans l’arborescence du système de fichiers (voir cours) ; À l’ouverture du terminal vous êtes habituellement dans le répertoire utilisateur
À l’ouverture du terminal vous êtes habituellement dans le répertoire utilisateur, ci-dessous l'utilisateur est nsiuser:
Deux exemples:
A gauche sur un PC sous GNU/LINU Debian Buster 10 et à droite sur une raspberry PI avec OS GNU/LINUX raspbian
nsiuser@nsidebian:~$pwd /home/nsiuser |
pi@raspberrypi:~ $ pwd /home/pi |
Question 1
Ouvrez un terminal, lancez la commande pwd et concluez sur votre localisation dans l'arborescence du système.
2. Afficher le contenu d'un répertoire
- Commande: ls
ls est une commande (abréviation de list en anglais) qui permet de lister le contenu d'un répertoire (un dossier).
La commande ls sans arguments vous permet de connaître tous les fichiers et dossier du répertoire courant ( là où vous êtes dans l'arborescence).
La commande ls -a (abréviation de list all) permet de lister les fichiers « cachés » d’un système. Sur un système GNU/Linux, ils sont précédés d’un point comme par exemple .bash_history
Si on ajoute certains arguments on peut obtenir d’autres détails ou affichage.
Question 2
Lancez la commande ls, quelle différence d’affichage constatez-vous entre les fichiers et les répertoires (dossiers)?
Lancez les commandes ls -la puis ls -lS (avec S majuscule), précisez les différences d'affichage constatées.
3. Se déplacer dans l'arborescence
On peut bien entendu se déplacer graphiquement avec l'explorateur Gnome de l'interface graphique comme sous Windows. Cependant ici vous allez utiliser le shell ( la console)
- Commande: cd
La commande cd (Change Directory) permet de se déplacer dans le système de fichiers.
Lorsqu’elle est appelée « sans argument », la commande cd dirige vers le répertoire de l’utilisateur ( la commande cd ~ est équivalente). Exemple d'utilisation de la commande cd:
Chemin Relatif ou absolu
- Tout chemin qui commence par / est un chemin « absolu ».
Pour remonter à la racine avec un chemin absolu:
nsiuser@nsidebian:~$cd / |
si on liste le contenu, on retrouve alors les dossiers placés sous la racine:
En partant du répertoire utilisateur, pour aller dans le répertoire Documents de nsiuser avec un chemin absolu:
nsiuser@nsidebian:~$cd /home/nsiuser/Documents |
- Les chemins qui ne commencent pas par la racine / sont « relatifs ». Un chemin relatif a comme point de départ le répertoire courant.
En partant du répertoire utilisateur, voici un chemin relatif pour se rendre dans le répertoire Documents de nsiuser:
nsiuser@nsidebian:~$cd Documents |
Ici le chemin est relatif à /home/nsiuser qui est le répertoire courant.
Notations relatives à connaître:
- Le tilde : ~/ est interprété, s'il n'est pas entouré de guillemets ou d'apostrophes, comme le répertoire personnel de l'utilisateur qui a lancé la commande. Par exemple, l'utilisateur nsiuser pourra utiliser le caractère tilde dans une ligne de commande en remplacement du chemin absolu de son répertoire personnel : /home/nsiuser.
Exemple: ~/Documents <=> /home/nsiuser/Documents
- Le point “.” représente le répertoire courant (où l'on se trouve) et deux points “..” indiquent le répertoire parent de celui dans lequel on se trouve.
Pour aller du répertoire personnel à la racine avec l'usage des points, on peut saisir:
cd ../.. <=> cd .. suivi d'un autre cd .. <=> remonter de deux niveaux.
En partant du répertoire courant si c'est /home/nsiuser, on peut se rendre dans le répertoire Documents en saisissant:
nsiuser@nsidebian:~$cd ./Documents |
Question 3
Saisissez une commande relative qui permet d'aller dans le répertoire Musique depuis votre dossier courant.
Saisissez la commande absolue qui vous déplace dans le répertoire var qui est un sous-dossier de la racine / (voir annexe)
4. Créer, éditer, supprimer des fichiers
- Commande: touch
Pour créer un fichier, on peut utiliser la commande touch
Exemple:
nsiuser@nsidebian:~$touch test.txt |
On peut l’éditer avec un éditeur simplifié intégré nativement, nano:
nsiuser@nsidebian:~$nano test.txt |
- Commande: cat
Pour « visualiser » en mode terminal ce genre de petits fichiers texte, on peut utiliser cat:
nsiuser@nsidebian:~$cat test.txt Hello World NSI |
Question 4
Créez le fichier test.txt, éditez le avec nano, ajoutez « Hello World NSI » puis CTRL+X pour quitter, puis O pour enregistrer et enfin la touche clavier Entrée pour valider le nom du fichier à écrire. Vérifiez que le fichier contient bien votre texte avec cat.
A SAVOIR pour aller plus vite, UTILISER L’AUTOCOMPLÉTION: la touche «TAB» peut venir compléter les dernières lettres d'un nom de fichier : essayez avec .bash_h puis TAB
Editez avec nano le fichier .bash_history contenu dans votre dossier utilisateur, parcourez le et indiquez ce qu’il semble contenir.
5. Créer, supprimer des répertoires
Pour créer un répertoire, on utilise la commande mkdir (abréviation de make directory) :
nsiuser@nsidebian:~$mkdir Monrep |
Pour supprimer ce répertoire, on utilise la commande rmdir (abréviation de remove directory):
nsiuser@nsidebian:~$rmdir Monrep |
Si le répertoire n’est pas vide, rmdir ne peut pas supprimer le répertoire, il faut utiliser rm -R (abréviation de remove Recursively ) :
nsiuser@nsidebian:~$rm -R Monrep |
Question 5
Créez le répertoire Monrep, saisissez la commande ls -l, précisez quel caractère en début de ligne indique un répertoire, à quelle abréviation Anglaise peut-il faire référence ?
Ajoutez un fichier appelé montexte.txt.
Saisissez la commande qui permet de supprimer le répertoire non vide.
6. déplacer et copier des fichiers et répertoires
- Commande: cp
Pour copier un fichier, on peut utiliser la commande cp ( abreviation de copy) ci-dessous on copie le fichier carte1.txt du dossier Monrep vers le dossier /home/nsiuser
nsiuser@nsidebian:~/Monrep$cp carte1.txt /home/nsiuser |
Pour copier un dossier et son contenu, on utilise la commande cp -r, ci-dessous on copie le dossier Monrep et son contenu vers le dossier /home/nsiuser/Téléchargement
nsiuser@nsidebian:~$cp -r Monrep ~/Téléchargement |
- Commande: mv
La commande mv (abréviation de move) permet de déplacer un fichier ou un dossier. Ci-dessous on déplace le fichier carte2.txt dans le dossier /home/nsiuser/Monrep/et le dossier Monrep avec son contenu vers le dossier /home/nsiuser/Téléchargement:
nsiuser@nsidebian:~$mv carte2.txt /home/nsiuser/Monrep/ nsiuser@nsidebian:~$mv Monrep ~/Téléchargement |
La commande mv peut aussi renommer un répertoire ou un fichier en l’appliquant sur la même localisation. Ci-dessous, on renomme fichier carte1.txt en carton1.txt et le dossier Monrep en Monrep1:
nsiuser@nsidebian:~$mv carte1.txt carton1.txt nsiuser@nsidebian:~$mv Monrep Monrep1 |
Question 6.1
Créez les répertoires Monrep1 et Monrep2 dans votre répertoire utilisateur, créez le fichier carte1.txt dans Monrep1. Vérifiez votre travail en listant les contenus.
Copiez carte1.txt dans Monrep2. Renommez carte2.txt le fichier appelé carte1.txt du répertoire Monrep2. Vérifiez votre travail en listant les contenus.
Déplacez Monrep2 et son contenu dans le répertoire Monrep1. Vérifiez votre travail en listant les contenus.
Déplacez vous dans Monrep2. Vérifiez votre travail en listant les contenus. Remonter dans votre répertoire utilisateur en utilisant une commande relative au répertoire courant Monrep2.
WildCard: *
Le wildcard est un caractère joker qui remplace l’équivalent d’un ou plusieurs caractères. Par exemple, on veut lister tous les fichiers textes d'un dossier, on peut saisir:
nsiuser@nsidebian:~$ls *.txt |
Pour lister tous les fichier qui commence par carton, on peut saisir:
nsiuser@nsidebian:~$ls carton* |
Question 6.2
Créez 3 fichiers différents nommés : carte1.txt, carte2.txt, carte3.txt dans votre répertoire utilisateur.
Listez tous ces fichiers avec la commande ls *.txt
Écrivez la commande avec wildcard qui pourrait copier tous les fichiers « carte » dans le répertoire Monrep1
7. les droits des fichiers
- Commande: id
La commande id permet de savoir à quels groupes du système nous appartenons.
nsiuser@nsidebian:~$id uid=1000(nsiuser) gid=1000(nsiuser) groupes=1000(nsiuser),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev), 109(netdev),111(bluetooth),116(scanner),119(lpadmin) |
La commande ls -l (abréviationde list long) donne les détails et les droits d’accès d'un dossier ou fichier:
d rwx r – x r – – nsiuser nsiuser Monrep
Les 3 publics pour lesquels les droits d’accès sont définis ci-dessus:
Propriétaire du fichier, droits: rwx |
membres du groupe principal du propriétaire, droits: r – x |
autres utilisateurs du système, droits: r – – |
Question 7.1
Créez le fichier un_texte.txt dans votre répertoire utilisateur. Notez les droits par défaut de chacun des publics
- Commande: chmod
On peut modifier les droits d’accès d’un fichier ou d’un répertoire avec la commande chmod (abréviation de CHange MODe) .
Au niveau droits justement, il faut au moins être le propriétaire du fichier.
On utilise le modèle:
chmod public opération droit elements_concernés
avec :
— public peut prendre comme valeur u pour le propriétaire (user), g pour le groupe, o pour les autres utilisateurs (other) ou n’importe quelle combinaison de ces trois valeurs ( ug, uo, go, ugo, etc..) .
La valeur a (all) est équivalente à la combinaison ugo.
— opération est le caractère ’+’ pour ajouter le droit, ’-’ pour le supprimer ou ’=’ pour affecter un droit.
— droit peut prendre comme valeur r, w, x ou toute combinaison de ces trois valeurs.
- elements_concernés : les fichiers et les dossiers concernés
Question 7.2
On considère votre fichier un_texte.txt
Saisissez les commandes ci-dessous, pour chacune d'elle, expliquez les droits affectés ou retirés à chaque public:
$chmod go+wx un_texte.txt
$chmod g-r un_texte.txt
$chmod go=r un_texte.txt
$chmod a=rwx,go-w un_texte.txt
Created with the Personal Edition of HelpNDoc: Free HTML Help documentation generator