Gérer les droits d accès et les utilisateurs



Modification des droits d'un fichier ou d'un dossier

pgd@rpi01:~ $ chmod <droit> <fichier>                 # Change les droits d'un fichier (chmod = change mode).


Les groupes de droits

pgd@rpi01:~ $ ls -al                                  


Le premier caractère peut être l’un de ceux-ci :
d = répertoire
– = fichier normal
l = lien symbolique
s = socket Unix
p = tube nommé
c = fichier de périphérique caractère
b = fichier de périphérique en mode bloc

Le reste des droits se compose de 3 groupes de trois caractères. Chaque groupe représente les droits (de gauche à droite) :
  • du propriétaire du fichier
  • du groupe propriétaire du fichier
  • de tous les autres utilisateurs

    Signification des lettres :
    r = permission de lire (read)
    w = permission d’écrire (write)
    x = permission d’exécuter (execute)
    – = Pas de permission

    Correspondances de représentation des droits :

    DroitValeur alphanumériqueValeur octaleValeur binaire
    aucun droit---0000
    exécution seulement--x1001
    écriture seulement-w-2010
    écriture et exécution-wx3011
    lecture seulementr--4100
    lecture et exécutionr-x5101
    lecture et écriturerw-6110
    tous les droits (lecture, écriture et exécution)rwx7111

    Chaque groupe de trois lettres reçoit une valeur numérique pour chacune des positions :
    r vaut 4
    w vaut 2
    x vaut 1
    Pour convertir en octal, il suffit d’ajouter le(s) chiffre(s) correspondant à la (aux) lettres existantes. Exemples :
    r w – vaut 4 + 2 = 6
    r w x vaut 4+ 2 + 1 = 7

    Le mode symbolique est assez facile à retenir, il faut définir pour qui modifier les autorisations :
  • pour l’utilisateur (u),
  • pour le groupe (g),
  • pour les autres (o),
  • ou pour les trois (a).

    Exemples :

    pgd@rpi01:~ $ chmod u+rw <fichier>                    # donne au propriétaire les droits en écriture et en lecture au fichier.

    pgd@rpi01:~ $ chmod -R a+rx <dossier>                 # donne à tous les utilisateurs les droits en lecture et en exécution à tout ce que contient le dossier. Le "a" est facultatif : chmod -R +rx dossier fonctionne tout aussi bien.

    pgd@rpi01:~ $ chmod 644 <fichier>                     # donne au propriétaire les droits de modification et lecture, aux membres du groupe et aux autres uniquement les droits de lecture. C'est un droit utilisé traditionnellement sur les fichiers.

    pgd@rpi01:~ $ chmod 755 <dossier>                     # donne au propriétaire tous les droits, aux membres du groupe et aux autres les droits de lecture et d'accès. C'est un droit utilisé traditionnellement sur les répertoires.

    pgd@rpi01:~ $ chmod 777 <dossier>                     # donne tous les droits à tout le monde.



    Modification du propriétaire d'un fichier :

    pgd@rpi01:~ $ chown <propriétaire>:<groupe> <fichier># Change le propriétaire et le groupe d'un fichier (chown = change owner).


    Exemple :

    Pour modifier le propriétaire de tout le contenu d'un dossier :

    pgd@rpi01:~ $ chown -Rf <utilisateur> <répertoire>   



    Créer un nouvel utilisateur

    pgd@rpi01:~ $ sudo useradd <utilisateur>              

    pgd@rpi01:~ $ sudo passwd <utilisateur>               

    ou bien
    pgd@rpi01:~ $ sudo adduser <utilisateur>              


    Afficher les utilisateurs

    pgd@rpi01:~ $ cat /etc/passwd                         

    ou bien
    pgd@rpi01:~ $ getent passwd