Eu tentei "chattr + i DIRNAME", é ótimo, mas não consigo criar arquivos no DIR após o chattr. O que mais há para impedir que os usuários excluam um diretório?
root@HOST ~] mkdir test
[root@HOST ~] chattr +i test
[root@HOST ~] cd test
[root@HOST ~/test] touch sth
touch: cannot touch `sth': Permission denied
[root@HOST ~/test] cd ..
[root@HOST ~] chattr -i test
[root@HOST ~] cd test
[root@HOST ~/test] touch sth
[root@HOST ~/test]
UPDATE: somente a exclusão do diretório é importante, por isso ainda preciso que os arquivos sejam excluídos
permissions
files
gasko peter
fonte
fonte
/tmp
e/var/tmp
. Enquanto todo usuário pode criar arquivos lá, ele / ela pode excluir apenas seus próprios arquivos / diretórios, mas não o diretório itselv.Respostas:
Então, o que há de errado com um simples chown / chmod ?:
OK, deixe-me dizer o que há de errado com isso: todo usuário tem acesso a todos os arquivos no
question
diretório devido às777
permissões. É melhorgroupadd question
mkdir question
chown root:question ./question
chmod 770 ./question
usermod -G group user
O truque importante aqui é que o diretório tem um proprietário diferente do que qualquer um dos usuários que tentarão excluí-lo.
fonte
sudo chmod o+t ..
para definir ot
sinalizador no diretório pai. Ot
sinalizador não permitirá remover um arquivo que não pertence ao usuário.t
é comumente usado/tmp
para fazer exatamente isso. O UsuárioA não pode excluir os arquivos pertencentes ao UsuárioB.Crie um arquivo ".protected" e faça como root
Você pode excluir todos os arquivos, exceto
.protected
dentro deste diretório, portanto, o diretório não pode ser excluído por nenhum outro usuário.fonte
deve fazer o trabalho. Você pode criar arquivos dentro, mas não poderá excluí-los.
fonte