Proibir que o usuário mova / renomeie um diretório?

1

Como posso impedir que um usuário mova / renomeie um subdiretório deste diretório pessoal?

Mesmo que um usuário não tenha nenhum direito em um diretório, ele pode renomeá-lo / movê-lo, desde que o diretório pai de origem e destino seja gravável.

Eu tive um problema semelhante no macosx. Os usuários inadvertidamente arrastam e soltam a pasta "Biblioteca" em outro lugar, quebrando tudo, pois há aplicativos que dependem desse caminho.

Eu não seria melhor depender de outro caminho, fora do diretório home, ou usar ".files", mas tenho uma situação de legado.

Eu tentei consertar o problema, colocando o dir em outro lugar e depois fazendo uma montagem "bind"

mount -o bind sourcepath /home/user/somedir

Evita a renomeação do diretório:

mv: cannot move 'somedir' to 'somethingelse': Device or resource busy

Alguém sabe de uma maneira mais fácil?

    
por ithkuil 01.11.2010 / 19:36

1 resposta

2

O mais fácil é provavelmente usar chattr :

sudo mkdir /home/user/somedir
sudo chown root:root /home/user/somedir
sudo chattr +i /home/user/somedir
    
por Kees Cook 01.11.2010 / 19:42