Digamos que o usuário tenha o Diretório1 e ele contenha Arquivo1 Arquivo2 CantBeDeletedFile Como fazer para que o usuário nunca possa excluir o CantBeDeletedFile ?
Se eu alterar a propriedade do Directory1 e remover as permissões de gravação, os usuários não poderão excluir nenhum arquivo. Eles também não poderiam adicionar novos arquivos, etc.
Eu só quero poder definir alguns arquivos que nunca seriam excluídos.
Descrição mais específica.
Estou criando perfis de usuário. Estou criando arquivos do iniciador de aplicativos na área de trabalho . Então, eu quero definir alguns arquivos do iniciador (.desktop) e torná-los para que o usuário possa iniciá-los apenas e eles não possam renomear nem excluir, basta iniciar.
Atualmente, se o usuário possuir o diretório que contém qualquer arquivo. Ele pode excluir.
Se não houver uma maneira genérica para todos * nix, é um Linux e ext4 FS.
fonte
cp /here/is/the/master/ThisDesktopFile $HOME
. Assinado : BOfH "Torne o arquivo imutável com o
i
atributoveja
man chattr
para mais informação.fonte
chattr
só funciona em sistemas de arquivos ext2 / ext3 / ext4.chattr -i file.desktop
bacula
a ignorar a pasta.Eu não acho que exista uma maneira de impedir a exclusão de um arquivo individual com permissões de arquivo Unix, mas posso pensar em uma solução alternativa: escreva um daemon que o substitua quando for removido.
inotify-tools
é perfeito para esse tipo de coisa se você estiver no Linux.Existem algumas maneiras de substituir o item excluído: copiar um novo no local ou manter o arquivo real em um local seguro e apenas copiar um link no diretório do usuário. Para o link, você pode usar um link simbólico ou um link físico. Eu começaria com um link simbólico, mas alguns (muito poucos) programas não lidam com links simbólicos corretamente. Se você achar que o usuário encontra um programa como esse, use um link físico.
fonte
Um simples
meio que "protegerá" esse arquivo da exclusão.
Você ainda pode excluí-lo, mas pelo menos deve ter certeza o suficiente sobre o que está fazendo.
fonte