Je me demandais récemment quelle est la différence entre les autorisations de fichiers numériques à trois et quatre chiffres. stat --format "%a" $file_name
J'obtiens les autorisations numériques en exécutant . Quelle est la différence entre 0644 et 644?
bash
permissions
files
NerdOfCode
la source
la source
Réponses:
Le premier chiffre d'une autorisation à quatre chiffres est la somme de l'identifiant utilisateur défini (4), de l' identifiant de groupe défini (2) et du collant (1). Une autorisation à trois chiffres est similaire à une autorisation à quatre chiffres avec le premier chiffre mis à zéro. Donc:
Exemples d'utilisations des autorisations au quatrième chiffre
Si un fichier avec un ID utilisateur défini est exécuté, il est exécuté comme si par le propriétaire du fichier plutôt que par l'utilisateur effectuant l'exécution. Ainsi, par exemple,
/bin/mount
appartient généralement à root et dispose des autorisations 4755 où le 4 signifie que, même s'il est exécuté par un utilisateur normal, il s'exécutera avec les privilèges du propriétaire (root).La définition de l'ID de groupe dans un répertoire est utile pour partager des fichiers.
Le bit collant est utilisé sur des répertoires comme
/tmp
pour que tous les utilisateurs puissent créer des fichiers mais empêche les non-propriétaires de supprimer les fichiers d'autres personnes. Ainsi, les autorisations de/tmp
sont généralement 1777 où 1 signifie que le bit collant est défini.Documentation
De
man chmod
:la source