Comment voyez-vous les autorisations de fichiers?

80

Je veux savoir comment voir les autorisations d'un fichier particulier. Quelle commande dois-je taper dans le terminal? Cependant, je ne veux pas le changer.

CENTAURE
la source
S'il ne s'agit pas d'un doublon, veuillez le marquer comme protégé. Ceci est une question importante.
evilMinion

Réponses:

112

Si vous voulez voir la permission d'un fichier, vous pouvez utiliser la ls -l /path/to/filecommande.

Par exemple

   ls -l acroread 
   -rwxr-xr-x 1 10490 floppy 17242 May  8  2013 acroread


Qu'est-ce que ça veut dire ?

Premier -représente un fichier régulier. Cela vous donne une idée du type d'objet dont il s'agit. Il peut avoir les valeurs suivantes.

  • d (répertoire)
  • c (périphérique de caractère)
  • l (lien symbolique)
  • p (pipe nommée)
  • s (prise)
  • b (bloc périphérique)
  • D (porte)
  • - (fichier régulier)


rreprésente la permission de lecture.
wreprésente l'autorisation d'écriture et
xreprésente l'autorisation exécutable.

La première combinaison de rwxreprésente l'autorisation pour le propriétaire .
La deuxième combinaison de rwxreprésente l'autorisation pour le groupe .
La troisième combinaison de rwxreprésente l’autorisation pour l’ autre du fichier.


Notation octale

L'autorisation de fichier peut également être représentée en notation octale.
En notation octale

Read ou rest représenté par 4,
Write ou west représenté par 2
Execute xest représenté par 1.

La somme de ces trois est utilisée pour représenter l'autorisation.

stat Cette commande peut être utilisée pour afficher les autorisations de fichiers en notation octale.

  stat -c "%a %n" /path/of/file

Par exemple

   stat -c "%a %n" acroread 
   755 acroread

Içi vous pouvez voir

Pour le propriétaire, il s'agit de 4 + 2 + 1 = 7 (111 en binaire).
Pour le groupe, il s'agit de 4 + 0 + 1 = 5 (101 en binaire) et
pour les autres , de 4 + 0 + 1 = 5 (101 en binaire).

g_p
la source
19

Vous pouvez utiliser soit une longue liste:

ls -l [filename]

Ou stat:

stat [filename]

Stat est plus complet. il vous indique les accès, les modifications et les changements d'heure, ainsi que les informations relatives à l'inode et à la taille, qui peuvent vous être utiles ou non.

Viv Diwakar
la source
Remarque: "cela dépend", cette commande affiche les autorisations standard. Cependant, votre accès peut être limité par d'autres moyens. Acl, apparmor et selinux peuvent tous limiter l'accès en dehors de ce qui est indiqué par ls -l.
Panthère
7

Indépendamment du fait que vous utilisiez réellement les autorisations ACL, si le aclpackage est installé, vous pouvez utiliser getfacl <path>pour obtenir une répartition assez décente des autorisations sur ce fichier.

$ getfacl /root/
# file: root/
# owner: root
# group: root
user::rwx
group::---
other::---

Si vous n'utilisez les autorisations ACL, il va vous dire sur les autorisations et juste ne peut pas.lsstat

$ sudo setfacl -m u:oli:r /root
$ getfacl /root/
# file: root/
# owner: root
# group: root
user::rwx
user:oli:r--
group::---
mask::r--
other::---
Oli
la source