O que o 'd' significa nos resultados ls -al e qual é esse slot chamado? [duplicado]

43

No Linux, o que significa d na primeira posição de drwxr-xr-x ? E quais são todas as possíveis cartas que poderiam estar lá, e o que elas significam?

Estou tentando aprender mais sobre o sistema de permissões de arquivos do Linux e gostaria de ver uma lista dos significados dos caracteres para o primeiro slot.

    
por Eric Leschinski 21.12.2012 / 18:48

2 respostas

52

Isso significa que é um diretório. O primeiro campo de modo é o designador de "arquivo especial"; arquivos regulares são exibidos como - (nenhum). Quanto às possíveis letras possíveis, no Linux existem as seguintes:

  • d (diretório)
  • c (dispositivo de caractere)
  • l (link simbólico)
  • p (pipe nomeado)
  • s (socket)
  • b (dispositivo de bloco)
  • D (porta, não comum em sistemas Linux, mas foi portada)
por 21.12.2012 / 18:49
5

No Gentoo, o que o primeiro caractere em um arquivo linux permissões drwxrwxrwx significa:

O primeiro caractere lhe dá uma dica do tipo de objeto que é.

Valores possíveis para o primeiro caractere: ( - , d , c , l , p , s , b , D )

- (traço) significa arquivo e e d significa diretório.

el@angeliqe ~/tmpdir $ mkdir my_empty_directory
el@angeliqe ~/tmpdir $ touch myfile.txt
el@angeliqe ~/tmpdir $ ls -al
total 16
drwxrwxr-x 3 el users 4096 Dec 21 13:06 .
drwx--x--x 9 el users 4096 Dec 21 11:47 ..
drwxrwxr-x 3 el users 4096 Dec 21 11:54 my_empty_directory
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

my_empty_directory tem um 'd' e é um diretório, e myfile.txt tem um '-' e é um arquivo de texto normal.

c significa arquivo de dispositivo de caractere

el@angeliqe /dev $ ls -al
total 4
drwxr-xr-x 12 root root      4080 Dec 19 21:18 .
drwxr-xr-x 20 root root      4096 Nov  3 19:00 ..
crw-rw----  1 root tty     7, 133 Nov 24 10:13 vcsa5

vcsa5 é um arquivo de dispositivo de caractere. Encontre arquivos de dispositivo de caractere com este comando: find / -type c -print 2>/dev/null

b significa dispositivo de bloco

el@angeliqe /dev $ ls -al
total 4
drwxr-xr-x 12 root root      4080 Dec 19 21:18 .
drwxr-xr-x 20 root root      4096 Nov  3 19:00 ..
brw-rw----  1 root disk    8,   0 Nov 24 10:13 sda

sda é um dispositivo de bloco. Encontre arquivos de dispositivos de bloco com este comando: find / -type b -print 2>/dev/null

l significa link

el@angeliqe ~/tmpdir $ touch myfile.txt
el@angeliqe ~/tmpdir $ ln -s myfile.txt myfile2.txt
el@angeliqe ~/tmpdir $ ls -al
total 8
drwxrwxr-x 2 el users 4096 Dec 21 13:23 .
drwx--x--x 9 el users 4096 Dec 21 13:22 ..
-rw-rw-r-- 1 el users    0 Dec 21 13:23 myfile.txt
lrwxrwxrwx 1 el users   10 Dec 21 13:23 myfile2.txt -> myfile.txt

myfile2.txt é um link simbólico para myfile.txt . Encontre arquivos de links simbólicos com este comando: find / -type l -print 2>/dev/null

p significa canal nomeado

el@angeliqe /dev $ ls -al
total 4
drwxr-xr-x 12 root root      4080 Dec 19 21:18 .
drwxr-xr-x 20 root root      4096 Nov  3 19:00 ..
prw-------  1 root root         0 Nov 24 10:13 initctl

initctl é um pipe nomeado. Encontre arquivos de tubos com este comando: find / -type p -print 2>/dev/null

s é um soquete

el@angeliqe /dev $ ls -al
total 4
drwxr-xr-x 12 root root      4080 Dec 19 21:18 .
drwxr-xr-x 20 root root      4096 Nov  3 19:00 ..
srwxrwxrwx  1 root root         0 Nov 24 10:13 gpmctl

O gpmctl é um soquete. Encontre arquivos de soquete com este comando: find / -type s -print 2>/dev/null

D significa porta

Nenhum encontrado no meu Gentoo.

    
por 21.12.2012 / 19:18