paulo1205
(usa Ubuntu)
Enviado em 26/10/2012 - 13:06h
Há duas formas tradicionais de impedir a exclusão de um arquivo por pessoas que não sejam seus donos legítimos:
1) retirar a permissão de escrita para outros e/ou para o grupo do diretório que contém os arquivos (só que isso também retira o direito desses outros usuários de criar novos arquivos no diretório);
2) deixar as permissões de escrita para outros e/ou para o grupo, e ligar o sticky-bit ("chmod +t") no diretório; desse modo, só quem criou o arquivo e o dono do diretório poderão apagá-lo, ao passo que outros usuários, se tentarem fazê-lo, tomarão erro de permissão negada.
Fora das formas tradicionais, você pode optar pelo uso de atributos (no Linux) ou flags (BSDs) ou outras propriedades estendidas, dependendo do SO e do tipo de sistema de arquivos. No Linux, você pode usar o comando
chattr para ligar o atributo "undeletable" (u) num arquivo, desde que o sistema de arquivos suporte o uso de atributos (em geral, os sistemas de arquivos locais e nativos, como ext2, ext4, ext4 e btrfs, o suportam, e sistemas remotos ou não nativos, como nfs, afs, smbfs, vfat ou ntfs, não o suportam).