Sobes.tech
Junior

Comment modifier les droits d'accès à un fichier?

sobes.tech IA

Réponse de l'IA

Dans les systèmes Linux/Unix, il existe trois types de permissions : lecture (read), écriture (write) et exécution (execute), ainsi que trois catégories d'utilisateurs : propriétaire du fichier (owner), groupe (group) et autres (others).

Les permissions peuvent être modifiées à l'aide de la commande chmod.

1. Méthode numérique :

# r=4, w=2, x=1
# Chaque chiffre correspond à la somme des permissions pour le propriétaire, le groupe et les autres
# Par exemple : 777 (rwx pour tous), 755 (rwx pour le propriétaire, rx pour le groupe et les autres)
chmod 755 nom_fichier

2. Méthode symbolique :

# u (propriétaire), g (groupe), o (autres), a (tous - ugo)
# +, - (ajouter/supprimer une permission), = (définir des permissions spécifiques)
# r (lecture), w (écriture), x (exécution)
chmod u+x nom_fichier         # Ajouter la permission d'exécution au propriétaire
chmod go-w nom_fichier        # Supprimer la permission d'écriture pour le groupe et les autres
chmod a=rw- nom_fichier       # Définir les permissions de lecture et d'écriture pour tous, en supprimant x

Exemples :

  • Rendre un fichier exécutable uniquement pour le propriétaire :
    chmod u+x nom_fichier
    
  • Définir les permissions de lecture et d'écriture pour le propriétaire, lecture pour le groupe et les autres :
    chmod 644 nom_fichier
    

Options supplémentaires :

  • -R : modification récursive des permissions (pour les répertoires et leur contenu).
    chmod -R 755 nom_répertoire
    

Les permissions d'accès peuvent être visualisées avec la commande ls -l.

# Exemple de sortie de ls -l
# -rwxr-xr-x 1 utilisateur groupe 1024 11 Nov 10:00 nom_fichier

où :

  • Le premier caractère - indique qu'il s'agit d'un fichier. d indique un répertoire.
  • Les trois caractères suivants (rwx) sont les permissions pour le propriétaire.
  • Les trois caractères suivants (r-x) sont les permissions pour le groupe.
  • Les trois derniers caractères (r-x) sont les permissions pour les autres.