O que significa o número após as permissões de arquivo Unix/Linux como "-rw-rw-r--. 1" na saída "ls -l"

O que significa o número após as permissões de arquivo Unix/Linux como "-rw-rw-r--. 1" na saída "ls -l"

Alguém pode explicar -rw-rw-r--. 1e fornecer algumas informações "detalhadas" sobre o comando ls -lart.

Especificamente, o que o número1depois que as permissões do arquivo significam? Por que isso muda ou por que é diferente para arquivos diferentes?

Responder1

Alguns exemplos:

-rwxrw-r-- 1é um arquivo com privilégios de leitura, gravação e execução para o proprietário. O grupo leu e escreveu, e outros apenas leram. Não há links para esses dados.

drwxr-xr-x 10é um diretório com 8 arquivos. Os 2 extras são .e ... Somente o proprietário pode criar arquivos neste diretório, outros podem acessar quais arquivos estão no diretório e ler o conteúdo desses arquivos se os privilégios permitirem.

-r-------- 2é um arquivo que somente o proprietário pode ler, mas não pode executar ou modificar. Possui um link, o que significa que há outra referência de arquivo em algum lugar do disco que acessa os mesmos dados. Portanto, o "conteúdo do arquivo" real no disco possui 2 "arquivos" referenciando-o. Esses links geralmente são criados usando, lnsem fornecer -s, .

Então:

  • O caractere 1 é o tipo de nó: comumente -ou dindicando arquivo ou diretório.
  • Os caracteres 2, 3, 4 indicam read, writo e xecute para o proprietário.
  • Os personagens 5, 6, 7 fazem o mesmo para o grupo.
  • Os caracteres 8, 9, 10 fazem o mesmo com os outros.
  • O número de caracteres de permissão seguintes indica o número de links se o nó for um arquivo e o número de "subnós" se o nó for um diretório.

Veja o capítuloO formato longode man ls.

Responder2

Para arquivosé o número delinks físicosao conteúdo do arquivo. 1 significa sem hard-links (o caso típico), um númeroNacima de 1 significa isso e outroN-1nomes de arquivos compartilham o mesmo conteúdo.

Para diretórios a maioria, mas não todossistemas de arquivos relatam uma contagem de links de 2+NondeNé o número de subdiretórios.

Responder3

[max@localhost ~]$ ll

total 4

drwxrwxr-x2max max 4096 25 de setembro 17:11 zzz

Aqui 2 significa número de contagem de links

agora vou criar 3 diretórios dentro do zzz

agora o valor muda para 5

[max@localhost ~]$ cd zzz
[max@localhost zzz]$ mkdir abc
drwxrwxr-x 5 max max 4096 25 de setembro 17:16 .
drwx ------ 5 max max 4096 25 de setembro 17:12 ..
drwxrwxr-x 2 max max 4096 25 de setembro 17:16 a
drwxrwxr-x 2 max max 4096 25 de setembro 17:16 b
drwxrwxr-x 2 max max 4096 25 de setembro 17:16 c

[max@localhost zzz]$cd

[max@localhost ~]$ ll

total 4

drwxrwxr-x5max max 4096 25 de setembro 17:16 zzz

Isso ocorre porque agora 5 diretórios estão presentes dentro do zzz 3 são a b ce 2 são diretórios ocultos. ..

se eu criar um arquivo, nada acontecerá com a contagem de links

[max@localhost zzz]$ toque 1 2 3
[max@localhost zzz]$ ls -al
total 20
drwxrwxr-x 5 max max 4096 25 de setembro 17:26 . ------> contagem de links do diretório atual
drwx ------ 5 max max 4096 25 de setembro 17:12 .. ------> contagem de links do diretório pai
-rw-rw-r-- 1 máx. máx. 0 25 de setembro 17:26 1
-rw-rw-r-- 1 máx. máx. 0 25 de setembro 17:26 2
-rw-rw-r-- 1 máx. máx. 0 25 de setembro 17:26 3
drwxrwxr-x 2 max max 4096 25 de setembro 17:16 a
drwxrwxr-x 2 max max 4096 25 de setembro 17:16 b
drwxrwxr-x 2 max max 4096 25 de setembro 17:16 c
[max@localhost zzz]$cd
[max@localhost ~]$ ll
total 4
drwxrwxr-x 5 max max 4096 25 de setembro 17:26 zzz

mas se eu excluir qualquer diretório, a contagem de links mudará

[max@localhost zzz]$ rmdir bc
[max@localhost zzz]$cd
[max@localhost ~]$ ll
total 4
drwxrwxr-x 3 max max 4096 25 de setembro 17:28 zzz

informação relacionada