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