Changer les droits

Fondamental

Seuls le super-utilisateur du système (généralement root) et le propriétaire d'un fichier peuvent changer ses permissions d'accès.

Pour cela, on peut utiliser la commande chmod (abréviation de change mode).

Conseil

Faites toutes les manipulations demandées (pas de compte rendu à compléter) ;

en cas de blocage ou de difficulté, appeler l'enseignant.

MéthodeMéthode 1 : en utilisant l'écriture octale

  • Attribuer des droits de lecture et écriture au propriétaire seul sur le fichier de nom fichier1 :

1
cedric@desktop:~/NSI$ chmod 600 fichier1 
2
cedric@desktop:~/NSI$ ls -l
3
total 12
4
drwxrwxr-x 2 cedric cedric 4096 févr. 17 16:21 Activites_Linux
5
-rw------- 1 cedric cedric  106 févr. 17 16:23 fichier1
6
-rw-r--r-- 1 cedric cedric  538 févr. 17 16:24 fichier2
7

600 correspond à 400+200 (soit à rw- --- ---).

  • Attribuer tous les droits au propriétaire et aucun au groupe propriétaire et aux autres sur /home/cedric/NSI et tout ce qu'il contient :

1
cedric@desktop:~/NSI$ chmod -R 700 /home/cedric/NSI/
2
cedric@desktop:~/NSI$ ls -l
3
total 12
4
drwx------ 2 cedric cedric 4096 févr. 17 16:21 Activites_Linux
5
-rwx------ 1 cedric cedric  106 févr. 17 16:23 fichier1
6
-rwx------ 1 cedric cedric  538 févr. 17 16:24 fichier2

L'option -R (récursif) est ce qui permet d'attribuer les droits choisis non seulement au répertoire, mais aussi à tout son contenu.

700 correspond à 400+200+100 (soit à rwx --- ---).

On notera que la récursivité s'écrit avec -R pour éviter la confusion avec le r de read...

MéthodeMéthode 2

Il existe un autre moyen de modifier les droits d'un fichier avec la commande chmod.

Dans ce mode d'utilisation, il faut se rappeler que :

  • u signifie : user (propriétaire) ;

  • g signifie : group (groupe) ;

  • o signifie : other (autres) ;

... et que :

  • + signifie : « Ajouter le droit » ;

  • - signifie : « Supprimer le droit » ;

  • = signifie : « Affecter le droit ».

Ajouter le droit d'écriture au groupe sur unfichier :

1
chmod g+w unfichier
  • Enlever le droit de lecture aux autres sur unfichier :

1
chmod o-r  unfichier
  • Ajouter les droits de lecture et d'exécution au propriétaire sur unfichier :

1
chmod u+rx unfichier
  • Ajouter le droit d'écriture au groupe et l'enlever aux autres sur unfichier:

1
chmod g+w,o-w unfichier
  • Enlever le droit de lecture au groupe et aux autres sur unfichier :

1
chmod go-r unfichier
  • Ajouter le droit d'exécution à tout le monde sur unfichier:

1
chmod +x unfichier
  • Affecter tous les droits au propriétaire, juste la lecture au groupe, rien aux autres sur unfichier:

1
chmod u=rwx,g=r,o=- unfichier