Vous pouvez modifier les autorisations de fichiers avec la commande chmod. Sous Unix, les autorisations sur les fichiers, qui déterminent qui peut avoir différents types d'accès à un fichier, sont spécifiées à la fois par les classes d'accès et les types d'accès. Les classes d'accès sont des groupes d'utilisateurs, chacun pouvant se voir attribuer un type d'accès spécifique.
Unix / Linux a des utilisateurs et des groupes d’utilisateurs pouvant être attribués pour l’accès aux fichiers
les options g + s sont les suivantes:
g - les permissions que les autres utilisateurs du groupe de fichiers ont pour cela
s - définit l'identifiant de l'utilisateur ou du groupe lors de l'exécution
voici un exemple d'utilisation:
chmod =rwx,g+s filename
(autoriser tout le monde à lire, écrire et exécuter un fichier particulier et activer l'identifiant de groupe défini)
Pour définir / modifier les autorisations d'un fichier, vous devez utiliser le programme chmod. Bien entendu, seul le propriétaire d'un fichier peut utiliser chmod pour modifier les autorisations d'un fichier. La syntaxe de chmod est la suivante: chmod [options] mode fichier (s) La partie 'mode' spécifie les nouvelles autorisations pour les fichiers qui suivent comme arguments. Un mode spécifie les autorisations de l'utilisateur à modifier, puis les types d'accès à modifier. Disons par exemple: chmod ax socktest.pl
Cela signifie que le bit d'exécution doit être effacé (-) pour tous les utilisateurs. (propriétaire, groupe et reste du monde) Les autorisations commencent par une lettre spécifiant quels utilisateurs doivent être affectés par la modification. Cette autorisation peut être l'une des suivantes:
u the owner user
g the owner group
o others (neither u, nor g)
a all users
Ceci est suivi d'une instruction de changement composée d'un + (bit de réglage) ou - (bit d'effacement) et de la lettre correspondant au bit à modifier. Voyons quelques exemples:
$ ls -l socktest.pl
-rwxr-xr-x 1 nick users 1874 Jan 19 10:23 socktest.pl*
$ chmod a-x socktest.pl
$ ls -l socktest.pl
-rw-r--r-- 1 nick users 1874 Jan 19 10:23 socktest.pl
$ chmod g+w socktest.pl
$ ls -l socktest.pl
-rw-rw-r-- 1 nick users 1874 Jan 19 10:23 socktest.pl
$ chmod ug+x socktest.pl
$ ls -l socktest.pl
-rwxrwxr-- 1 nick users 1874 Jan 19 10:23 socktest.pl*
$ chmod ug-wx socktest.pl
$ ls -l socktest.pl
-r--r--r-- 1 nick users 1874 Jan 19 10:23 socktest.pl
Des nombres étranges ... Vous avez peut-être rencontré des problèmes tels que chmod 755 et, bien sûr, vous vous demanderez de quoi il s'agit. Le fait est que vous pouvez changer le modèle de permission d'un fichier en une fois en utilisant un numéro comme celui de cet exemple. Chaque mode a un numéro de code correspondant et, comme nous le verrons, il existe un moyen très simple de déterminer quel numéro correspond à un mode. Chacun des trois chiffres du numéro de mode correspond à l'un des trois triplets de permission. (u, g et o) Chaque bit d'autorisation d'un triplet correspond à une valeur: 4 pour r, 2 pour w, 1 pour x. Si le bit d'autorisation, vous ajoutez cette valeur au numéro du triplet d'autorisation. S'il est effacé, vous n'ajoutez rien. (Certains d'entre vous remarqueront peut-être qu'en fait,
Triplet pour vous: rwx => 4 + 2 + 1 =
7
Triplet pour g: r-x => 4 + 0 + 1 =
5
Triplet pour o: r-x => 4 + 0 + 1 =
5
Ce qui rend : 755
Donc, 755 est une façon laconique de dire: «Cela ne me dérange pas que d’autres personnes lisent ou exécutent ce fichier, mais je suis le seul à pouvoir le modifier» et 777 signifie «tout le monde a accès à ce fichier».
référence parfaite
cp
) sont en fait nouvellement créés. S'ils n'héritent pas de l'autorisation du groupe, le programme de copie joue à des jeux, comme copier dans un fichier temporaire puis le déplacer dans le répertoire cible.