Aller au contenu

TP Droits

CrĂ©dits⚓

Sources : M GERVAIS, NSI spécialité - prépabac - Hatier, Université de La Réunion.

I. Prise en main⚓

Pour ce TP, nous allons utiliser un Ă©mulateur du systĂšme Linux qui nous donnera l’accĂšs Ă  une invite de commande mis Ă  disposition par l'universitĂ© de la rĂ©union :Emulateur Linux

Attendre d'obtenir ceci :

accueil

II. Les groupes⚓

Les groupes

Un utilisateur fait partie de groupe(s), dont un principal (qui peut ĂȘtre attribuĂ© par dĂ©faut).

En fait, le systĂšme d’exploitation l’identifie par un numĂ©ro (UID, identifiant d’utilisateur ou user ID) ainsi que ses groupes (par leur GID).

La commandeid

Utiliser la commande id afin de déterminer les groupes auxquels appartient alice .

Noter les renseignements obtenus :

  • NumĂ©ro d’identification et son nom :
  • groupe principal :
  • groupes secondaires :
Solution

alice

  • NumĂ©ro d’identification uid : 1000 et son nom : alice
  • groupe principal gid: 1000 et son nom : user
  • groupes secondaires groups : 1000 (user) et 1001 (developer)
Remonter l'arborescence

Remonter d'un niveau, utiliser la commande pour voir oĂč vous ĂȘtes.
Recommencer.

Solution

remonter

Le dossier etc
  • Lister les dossiers et fichiers de la racine.

  • Utiliser les commandes cat /etc/passwd puis cat /etc/group.

Solution

groupes

On voit qu'en plus de root, il existe deux groupes user et developer auxquels alice et bob appartiennent.

III. GĂ©rer les droits⚓

Voir les droits⚓

Les droits

Aller dans /home/alice et exécuter ls -l

Solution

droits alice

Rappel sur les droits

Exemple : drwxr-xr-x

d rwx r-x r-x
répertoire u : propriétaire g : groupe principal o : autres
  • le premier symbole d signifie que l’on a affaire Ă  un rĂ©pertoire. dans le cas d’un fichier, nous aurions un -
  • les 3 symboles suivants rwx donnent les droits du propriĂ©taire du fichier : lecture autorisĂ©e (r), Ă©criture autorisĂ©e (w), exĂ©cution autorisĂ©e ( x)
  • les 3 symboles suivants r-x donnent les droits du groupe liĂ© au fichier : lecture autorisĂ©e (r), Ă©criture interdite (- ), exĂ©cution autorisĂ©e ( x)
  • les 3 symboles suivants r-x donnent les droits des autres utilisateurs : lecture autorisĂ©e (r), Ă©criture interdite (- ), exĂ©cution autorisĂ©e ( x)

Pour plus de précisions, vous pouvez vous reporter au TP précédant.

Les droits

Aller dans /home/alice/Compagnon/A33

DĂ©tailler les droits pour fichier1.txt

Solution

A33

Il s'agit d'un simple fichier. alice et le groupe principal ont les droits en lecture et écriture mais pas en exécution. Les autres ont les droits seulement en lecture.

Modifier les droits⚓

A savoir

Le propriĂ©taire d’un fichier(ou l’utilisateur "root") peut en modifier les droits avec chmod(change mode).

Seul lui peut le faire, ainsi que le « super-utilisateur » (ou administrateur systĂšme) root qui a les pleins pouvoirs sur la machine (ce qui est donc dangereux : on ne l’utilise que quand cela est strictement nĂ©cessaire)

chmod

La syntaxe est chmod modifications fichier, oĂč modifications est composĂ© :

  • du public (une ou plusieurs lettres parmi u, g et o dĂ©finis ci-dessus, voire a pour « tous », soit all), puis
  • d’un opĂ©rateur (= pour attribuer des droits et seulement ceux-lĂ , + pour ajouter des droits Ă  ceux dĂ©jĂ  donnĂ©s et - pour en ĂŽter Ă  ceux qui existent) et enfin
  • du ou des droits dĂ©signĂ©s par l’une ou plusieurs des lettres parmi r, w et x.

Exemples

  • chmod o-wx mon_fichier ĂŽte les droits en Ă©criture et en exĂ©cution aux « autres utilisateurs ».
  • chmod a+x mon_fichier donne les droits en exĂ©cution Ă  tous les utilisateurs,

👉 On peut mĂȘme donner plusieurs sĂ©ries d’attributs, sĂ©parĂ©es par des virgules.

chmod ug=rwx,o=r mon_fichier donne tous les droits à l’utilisateur et au groupe, mais seulement le droit en lecture aux autres utilisateurs.

A vous de jouer
  • Ecrire la commande qui permet d’ajouter les droits en exĂ©cution au groupe et aux autres utilisateurs, pour fichier1.txt VĂ©rifier le rĂ©sultat aprĂšs exĂ©cution.
  • Essayer ensuite d’autres modifications de droits sur ce fichier, et vĂ©rifier Ă  chaque fois le rĂ©sultat. Pour cela vous pouvez utiliser ls -l fichier1.txt . N’oubliez pas que la flĂšche vers le haut du clavier permet de rappeler les derniĂšres commandes utilisĂ©es.
Solution

chmod

Créer un fichier
  • CrĂ©er un fichier test1 vide dans le rĂ©pertoire d’alice.
  • Noter les permissions de ce fichier.
  • Ecrire la commande pour que les "autres utilisateurs" aient la permission "Ă©criture", puis vĂ©rifier
Solution

test1

Pour le fichier test1 : avant le changement alice avait les droits en lecture et Ă©criture seulement, le groupe principal et les autres avaient les droiits seulement en lecture

Octal

Il existe une autre maniÚre de décrire les droits à appliquer : le codage "octal".

Par exemple :

l’écriture "symbolique" : rwx r-x r-x
correspond Ă  l’écriture binaire 111 101 101. (On met 1 quand il y a r, ou w, ou x, et 0 quand il y a -)

Sur 3 bits les nombres vont de 0 (000 en binaire) Ă  7 = 4 + 2 + 1 (111 en binaire) . On peut donc considĂ©rer que l'on travaille en base 8 (d'oĂč le nom octal)

Il suffit de convertir chaque groupe de 3 bits en octal, pour obtenir la notation "octal"

Ici 111 en binaire correspond Ă  4 + 2 + 1 = 7, 101 en binaire correspond Ă  4 + 1 = 5.

L'Ă©criture "symbolique" rwx r-x r-x correspond Ă  755 en "octal". C'est plus rapide Ă  Ă©crire

Octal

Indiquer quels droits sont attribués par chmod 644 fichier1.txt puis vérifier.

Solution

6 = 4 + 2 s'Ă©crit en binaire sur 3 bits 110
4 s'Ă©crit en binaire sur 3 bits 100
644 correspond donc Ă  110 100 100
C'est Ă  dire Ă  rw- r-- r--

chmod 644

IV. ComplĂ©ments⚓

Lire un fichier⚓

Lire un fichier

Aller dans le répertoire A33 Tester cat sur le fichier fichier2.txt. Que se passe-t-il ?

Solution

Le fichier est trop long, on n'en voit que la fin, ce qui était au début a disparu de la console

less

less charge au fur et Ă  mesure la zone du fichier qui est affichĂ©e, ce qui lui permet de dĂ©marrer trĂšs rapidement mĂȘme avec des fichiers Ă©normes. Pour quitter, il faut taper q

Tester less fichier2.txt. Appuyez plusieurs fois sur la touche "Entrée", puis quitter.

Il existe de nombreuses options possibles avec less.

Aide⚓

Le plus important Ă  retenir, surtout quand on connaĂźt une commande mais pas ses options, ou si l’on dĂ©couvre une commande inconnue dans un exemple, est de savoir accĂ©der Ă  l’information intĂ©grĂ©e au shell :

man

  • man la_commande renvoie une aide complĂšte (souvent plus longue qu’une page, on peut ajouter Ă  la suite |less pour se dĂ©placer dedans avec les flĂšches, puis quitter avec q.
  • info la_commande offre un service comparable.

help

Plus simplement, la plupart des commandes ont une option help(en gĂ©nĂ©ral, double tiret pour une option qui s’écrit sur plus d’un caractĂšre) ou -h qui dĂ©crit leur utilisation.

Tester
  • Tester ls --help
  • Trouver comment lister le contenu d’un rĂ©pertoire en triant les Ă©lĂ©ments par ordre dĂ©croissant de taille.
Solution

ls -S

tailles