O Linux divide as configurações de permissão em três grupos:
- Proprietário - o usuário que possui o arquivo
- Grupo - conjunto de usuários
- Mundo - Não é proprietário e não faz parte do grupo
A seguinte permissão pode ser concedida:
Você pode usar o comando chmod para definir as permissões para cada grupo ( Owner/User/World ), aplicando as tags desejadas ( Read/Write/Execute ) a cada uma delas. Os dígitos usados para definir as permissões são, na verdade, a representação decimal dos sinalizadores binários ( 0/1 ) configurados por grupo. Por exemplo, você deseja definir permissões que permitirão o seguinte:
- Proprietário - leia, escreva e execute
- Grupo - leia e execute (mas não escreva)
- Mundo - sem permissões
Então, nesse caso, para Owner , teremos: read=1 , write=1 e execute=1 resultando em permissão:
111 -> 7
O Group terá: read=1 , write=0 e execute=1 resultando em permissão:
101 -> 5
E, finalmente, o World terá: read=0 , write=0 e execute=0 resultando em permissão:
000 -> 0
Além disso, você pode definir o que é chamado de sticky bit em um diretório. Isso impedirá que outros usuários excluam ou renomeiem os arquivos dentro desse diretório. Apenas o proprietário pode excluir ou renomear os arquivos dentro desse diretório. Portanto, no seu caso, o comando chmod correto será parecido com este:
chmod 1777 temp
Onde 777 permite read/write/execute para todos os três grupos e o adicional 1 é o bit pegajoso .