Acabei de notar na minha máquina Ubuntu (sistema de arquivos ext3) que remover permissões de gravação de um arquivo não impede que o root grave nele.
Essa é uma regra geral de permissões de arquivo UNIX? Ou específico para o Ubuntu? Ou uma configuração incorreta na minha máquina?
# touch abc # chmod ugo-w abc # python Python 2.6.4 (r264: 75706, 7 de dezembro de 2009, 18:45:15) [GCC 4.4.1] no linux2 Digite "ajuda", "direitos autorais", "créditos" ou "licença" para obter mais informações. >>> open ('abc', 'w'). write ('AAA \ n') >>> # cat abc AAA
A gravação no arquivo falha (conforme o esperado) se eu fizer isso na minha conta de usuário normal.
Esse comportamento é normal?
Existe uma maneira de impedir que o root grave acidentalmente um arquivo? (De preferência, usando mecanismos normais do sistema de arquivos, não o AppArmor etc.)
Por favor, ensine-me sobre algo que eu definitivamente não entendo.
NOTA: Entendo que o root tem controle total sobre o sistema e pode, por exemplo, alterar as permissões em qualquer arquivo. Minha pergunta é se as permissões atualmente definidas são aplicadas no código em execução como root . A idéia é que o usuário root se impeça de gravar acidentalmente em um arquivo.
NOTA: Também entendo que um não deve estar conectado como root para operações normais. Acabei de perceber esse comportamento e estou lhe perguntando sobre isso.