Permissão avançada de arquivos e como lê-los corretamente

Permissão avançada de arquivos e como lê-los corretamente
alisto@ubuntu:/projects/solarproj$ \ls -al
total 32
drwxrwsr-t 3 root   solarproj 4096 Dec 8 16:02 .
drwxr-xr-x 3 root   root      4096 Dec 8 15:29 ..
-rw-rw---- 1 boband boband    802  Dec 8 15:44 bearings.jpg
-rw-rw-r-- 1 boband solarproj 101  Dec 8 15:43 controller.c
drwxrwSr-x 2 alisto solarproj 4096 Dec 8 15:40 old
-------rwx 1 alisto solarproj 19   Dec 8 14:08 power
-rw-r--r-- 1 alisto solarproj 81   Dec 8 15:44 schedule.txt
-rw----r-- 1 boband solarproj 576  Dec 8 15:58 temp
lrwxrwxrwx 1 alisto solarproj 24   Dec 8 16:02 temp.sym      ->  ../solarproj/temp

Ambos os usuários estão no grupo solarproj

  1. Bob pode alterar o conteúdo do arquivo schedule.txt? Por que?

    Se estou lendo corretamente, a resposta é não, porque o grupo está configurado para apenas leitura.

  2. Alice pode remover o arquivo controller.c? Por que?

    O arquivo dá permissão de leitura e gravação, mas por causa do problema ela não consegue removê-lo/não tem tanta certeza

  3. Quais usuários podem ler o arquivo power? Por que?

    Todos os outros usuários que não fazem parte do grupo ou do Alisto

  4. Por que Alice, mas não Bob, pode listar o conteúdo do diretório antigo?

    Por causa do S na permissão do grupo, o x não existe

  5. Alice pode ler o arquivo temp.sym? Por que?

    Não, porque ela não é permitida.

Não sei se minhas respostas estão corretas e adoraria se alguém pudesse corrigir minhas respostas erradas e me ajudar um pouco. Eu adoraria testar e ver por mim mesmo, mas minha VM não está funcionando e preciso estudar para o próximo teste em alguns dias, tente novamente!

Responder1

Quando uma permissão é exibida usando o lscomando, ela segue uma determinada estrutura. Vamos dar uma olhada em um exemplo:

-rw-rw-r--

Oprimeirocaractere indica o tipo de arquivo e é chamado dedescritor de arquivo,próximos três personagensindicar as permissões do usuário que criou o arquivo, opróximo conjunto de três caracteresindicar as permissões para o grupo do usuário e oúltimos três caracteresindique as permissões para todos os outros.

Neste exemplo:

  • oprimeirocaractere, conhecido como descritor de arquivo, indica o tipo de arquivo. Neste caso de -rw-rw-r--, é o travessão no início.
  • opróximos três personagensindique as permissões do usuário que criou o arquivo. Neste caso -rw-rw-r--, é rw-.
  • opróximos três caracteres depois dissoindique as permissões para o grupo de usuários mencionado anteriormente.
  • oúltimos três caracteresmostre as permissões para todos os outros.

O primeiro caractere, ou descritor de arquivo, um único traço ( -), mostra que este é apenas um arquivo normal. Por outro lado, se essas fossem as permissões para o diretório, seria um único d. Uma lista não abrangente de valores possíveis para o descritor de arquivo:

  • d- um diretório
  • -- um arquivo "normal"
  • l- um link simbólico
  • s- um soquete UNIX
  • p- um gasoduto

Os outros três conjuntos de três caracteres seguem a estrutura [read][write][exec], onde cada colchete contém um caractere.

Então, em nosso exemplo de -rw-rw-r--:

  • as permissões do usuário que criou o arquivo são rw-. Para que o usuário possa ler e gravar no arquivo, mas não executá-lo.
  • as permissões para o grupo do usuário também são rw-, o que significa que o grupo do usuário também pode ler e gravar nele.
  • as permissões para todos os outros são r--; isso significa que todos os outros só podem ler o arquivo, não gravar ou executá-lo.

Então, para suas perguntas:

Bob pode alterar o conteúdo do arquivo schedule.txt? Por que?

Se estou lendo corretamente, a resposta é não, porque o grupo está configurado para apenas ler

-rw-r--r-- 1 alisto solarproj 81   Dec 8 15:44 schedule.txt

Você está certo. bobandfaz parte do solarprojgrupo, então suas permissões são r--, o que significa que ele só pode ler o arquivo, não alterá-lo.

Alice pode remover o arquivo controller.c? Por que?

O arquivo dá permissão de leitura e gravação, mas por causa do problema ela não consegue removê-lo/não tem tanta certeza

-rw-rw-r-- 1 boband solarproj 101  Dec 8 15:43 controller.c

Sim, ela pode. Suas permissões são rw-porque ela faz parte do grupo solarproj, então pode alterar o arquivo, o que inclui excluí-lo.

Quais usuários podem ler o poder do arquivo? Por que?

Todos os outros usuários que não fazem parte do grupo ou do Alisto

-------rwx 1 alisto solarproj 19   Dec 8 14:08 power

Novamente, correto. Somente um usuário que 1) não esteja no solarprojgrupo e 2) não esteja alistopoderá ler, alterar ou executar esse arquivo.

Por que Alice, mas não Bob, pode listar o conteúdo do diretório antigo?

Por causa do S na permissão do grupo, o x não existe

drwxrwSr-x 2 alisto solarproj 4096 Dec 8 15:40 old

Não. O Ssignifica o arquivoéexecutáveleo bit setguid está definido.

Alice consegue ler o arquivo temp.sym? Por que?

Não porque ela não é permitida

-rw----r-- 1 boband solarproj 576  Dec 8 15:58 temp
lrwxrwxrwx 1 alisto solarproj 24   Dec 8 16:02 temp.sym      ->  ../solarproj/temp

Correto. temp.symaponta o arquivo temp; while alistopode ler temp.sym, porque aponta para temp, o quealisto não podeler, ela terá permissão negada.

informação relacionada