Como ler permissões ls -l

2

Estou tentando entender as permissões do Linux. Eu sei que eu poderia baixar um arquivo via CyberDuck de uma máquina Linux remota e o outro não era capaz. Aqui está a saída de ls -l :

-rw-r--r-- 1 root root 5360 Jul 26 17:31 coworking1.crt
-rw------- 1 root root 1704 Jul 26 17:31 coworking1.key

(imagem da saída de ls -l)

Por favor, me diga:

  1. Como posso ler a linha -rw-r--r-- 1 root root ?
  2. Além da duplicação de permissões via chmod --reference:file1 file2 , Como eu poderia definir as permissões de coworking1.key como iguais a coworking1.crt por meio de um comando bash?
por Maxim V. Pavlov 26.07.2015 / 19:43

1 resposta

8

Na linha -rw-r--r-- 1 root root , o primeiro caractere de traço indica um arquivo sem nenhuma permissão especial nele. Os próximos 3 caracteres "rw-" indicam que o proprietário do arquivo pode ler e gravar no arquivo, mas o arquivo não é executável. Ou seja, não é um programa que você possa executar. Se também fosse executável, você veria "rwx" em vez de "rw-".

Os próximos 3 caracteres, "r--", indicam que qualquer outra conta no grupo para este arquivo, que é "root", só tem acesso de leitura; já que há traços onde o "w" e "x" podem aparecer, isso indica que essas permissões não são concedidas ao arquivo do grupo. O "r--" a seguir indica que "outros", ou seja, contas que não são o proprietário e que não estão no grupo que tem acesso a esse arquivo, têm apenas acesso de leitura. Quando você vê "raiz raiz", a primeira "raiz" é a conta que possui o arquivo. A segunda "raiz" mostra o grupo que se aplica ao arquivo. O grupo não precisa necessariamente ser o mesmo do proprietário; eles poderiam ser diferentes. Por exemplo, pode haver um grupo chamado "teste" com raiz e a conta jdoe nele. Mas neste caso, a conta root é provavelmente a única conta no grupo raiz. Você pode ver os grupos no sistema emitindo o comando cat /etc/group . Você pode definir as permissões de coworking1.key como as mesmas de coworking1.crt com chmod 644 coworking1.key ou chmod g+r,o+r coworking1.key . No último exemplo, você está adicionando acesso de leitura para o grupo e acesso de leitura para outras pessoas.

Para referências, veja Noções básicas sobre permissões de arquivos do Linux e Tutorial sobre Linux - 8. Permissões , que explicará por que chmod 644 coworking1.key também funciona. Mas, basicamente, você pode pensar nas 3 posições em cada grupo tendo um valor numérico de 4 para a primeira posição, 2 para a segunda posição e 1 para a terceira posição. Então, se a permissão for "rw-", você terá um total de 6. Se for "r--", você tem um valor de 4. Se fosse "rwx", você teria um total de 7. Esses números se aplicam a cada agrupamento. Portanto, usar 644 significa que você tem 6 para o proprietário (rw-), 4 para o grupo (r--) e 4 para todas as outras contas no sistema (r--). Mas você sempre pode usar o formato chmod g+r,o+r coworking1.key e não se preocupar em como definir as permissões numericamente. Para esse formato, usar um sinal de adição adiciona a permissão e, usando um sinal de menos, a permissão é removida.

    
por 26.07.2015 / 20:13