Réponses:
La chmod
notation symbolique est plus fine que la notation octale, permettant la modification de bits de mode spécifiques tout en laissant les autres bits de mode intacts.
La notation symbolique se compose de trois éléments:
chmod [references][operator][modes] file
Le se references
compose d'une combinaison des lettres ugoa
, qui spécifient quel utilisateur l'accès au file
sera modifié: l'utilisateur qui le possède ( u
), les autres utilisateurs du groupe du fichier ( g
), les autres utilisateurs n'appartenant pas au groupe du fichier ( o
) ou tous les utilisateurs ( a
). Si le references
composant est omis, il s'applique par défaut à tous les utilisateurs, mais seules les autorisations autorisées par le umask
sont modifiées.
La +
operator
entraîne l'ajout des bits de mode de fichier spécifiés aux bits de mode de fichier existants de chaque fichier; -
provoque leur suppression; et =
les amène à être ajoutés et les bits non spécifiés à enlever, à l' exception setuid
et les setgid
bits positionnés pour les répertoires, sauf si explicitement spécifié.
Le mode
consiste en une combinaison des lettres rwxXst
, qui correspondent aux fonctions lecture ( r
), écriture ( w
), exécution (ou recherche de répertoires) ( x
), exécution / recherche uniquement si le fichier est un répertoire ou a déjà l'autorisation d'exécution pour un utilisateur ( X
), setuid
ou setgid
(selon les références spécifiées) ( s
) et un indicateur de suppression restreint ou un bit collant ( t
). Alternativement, le mode
peut consister en l'une des lettres ugo
, auquel cas le mode
correspond aux autorisations actuellement accordées au propriétaire ( u
), au membre du groupe du fichier ( g
) ou aux autorisations d'utilisateurs dans aucune des catégories précédentes ( o
).
Exemples
En supposant que le jeu d'autorisations pour file
est0764/-rwxrw-r--
Supprimer l'autorisation des autres utilisateurs ne faisant pas partie du groupe de fichiers:
Octal: chmod 760 file
Notez comment les autorisations existantes inchangées doivent être répétées lors de l'utilisation de la notation octale.
Symbolique: chmod o-rwx file
Avec la notation symbolique, les autorisations de fichier existantes n'ont pas d'importance.
Ensemble setuid
:
Octal: chmod 4764 file
Symbolique: chmod u+s file
Ensemble setgid
:
chmod 2764 file
chmod g+s file
L'utilisation des lettres vous permet d'activer et de désactiver des bits individuels sans modifier les autres bits.
Disons que j'ai le répertoire suivant: drwxrwsr-x 6 f261-01a g261-01a 4096 12 septembre 17:51 / home / teams / 261 / f261-01a
Si je veux désactiver l'autorisation de lecture pour d'autres et que je veux utiliser des chiffres, je pourrais le faire rapidement chmod 751
. Sauf que je viens de désactiver le bit setgid sur le répertoire. Oops.
Si, cependant, j'utilise chmod o-r
, je ne désactive que le bit de lecture que je voulais et le bit setgid du répertoire reste activé.
Il est également utile si vous souhaitez activer setuid, setgid ou sticky bits sur un fichier ou un répertoire. Surtout si vous le faites si rarement, vous avez du mal à vous rappeler quel bit est lequel dans le 4e octet.
Cela dépend donc de ce que vous faites. Je préfère toujours utiliser des chiffres lorsque je ne fais que définir des autorisations et je me fiche de ce qui est là pour commencer. Mais si vous basculez des bits individuels, la notation des lettres est beaucoup plus facile.