chmod
, como você provavelmente sabe, é a abreviação de "modo de alteração". "Mode" aqui se refere ao campo st_mode
no inode. stat (2) , a página man do stat
, fstat
, e lstat
de chamadas do sistema, mostra valores st_mode de até sete dígitos. Veja um trecho:
S_IFSOCK
0140000 socket
S_IFLNK
0120000 symbolic link
S_IFREG
0100000 regular file
S_IFBLK
0060000 block device
S_IFDIR
0040000 directory
S_IFCHR
0020000 character device
S_IFIFO
0010000 FIFO
OK, o primeiro dígito é sempre zero, para indicar que o número é octal; podemos ignorar isso. MC parece estar ignorando o segundo também. Assim, você pode ver que os arquivos regulares têm 0 para o terceiro dígito (isto é, o quinto da direita) e os diretórios têm 4. 2 e 6 são dispositivo de caractere e dispositivo de bloco, respectivamente; você deve ver isso apenas em /dev
. Os pipes nomeados devem ser 1 e os soquetes do sistema de arquivos devem ser 4. Se os links simbólicos estiverem sendo exibidos como 0, isso é estranho; talvez alguém tenha pensado que exibir 2 seria confuso demais.