File mode no MacOSX

1

Estou familiarizado com o modo de arquivo 3 bits 'definindo usuário, grupo e outras permissões, bem como o setuid / setgid / sticky' bit ', mas quando eu stat os diretórios de nível raiz no meu laptop MacOSX Eu vejo de 1 a 2 campos extras. Quais são esses?

 [onlyanegg@macosx ~]$ stat -f '%p %N' /*
 40775 /Applications
 40755 /Library
 40755 /Network
 40755 /System
 40755 /Users
 41777 /Volumes
 40755 /bin
 41775 /cores
 40555 /dev
120755 /etc
 40555 /home
100644 /installer.failurerequests
 40555 /mnt
 40555 /net
 40775 /opt
 40755 /private
 40755 /sbin
120755 /tmp
 40755 /usr
120755 /var
    
por onlyanegg 21.10.2016 / 07:36

1 resposta

3

stat(1) especifica que %p de solicitações

File type and permissions.

(procure por "datum" na página vinculada). O valor exibido é todo de st_mode (consulte stat(2) :

 #define S_IFMT 0170000           /* type of file */
 #define        S_IFIFO  0010000  /* named pipe (fifo) */
 #define        S_IFCHR  0020000  /* character special */
 #define        S_IFDIR  0040000  /* directory */
 #define        S_IFBLK  0060000  /* block special */
 #define        S_IFREG  0100000  /* regular */
 #define        S_IFLNK  0120000  /* symbolic link */
 #define        S_IFSOCK 0140000  /* socket */
 #define        S_IFWHT  0160000  /* whiteout */
 #define S_ISUID 0004000  /* set user id on execution */
 #define S_ISGID 0002000  /* set group id on execution */
 #define S_ISVTX 0001000  /* save swapped text even after use */
 #define S_IRUSR 0000400  /* read permission, owner */
 #define S_IWUSR 0000200  /* write permission, owner */
 #define S_IXUSR 0000100  /* execute/search permission, owner */

Isso explica os valores que você recebe:

  • valores começando com 4 são diretórios ( /Applications , /Library ...)
  • os valores iniciados por 12 são links simbólicos ( /etc , /tmp , /var )
  • valores iniciados por 10 são arquivos regulares ( /installer.failurerequests )
por 21.10.2016 / 11:29