Comment rendre un fichier impossible à supprimer par l'utilisateur, même s'il se trouve sous son dossier personnel?
Il est possible de rendre un fichier impossible à supprimer, même de la racine, sur un système de fichiers ext2/3/4, en modifiant un attribut du système de fichiers du fichier:
$ cd
$ touch dummy
$ Sudo chattr +i dummy
$ rm dummy
rm: remove write-protected regular empty file `dummy'? y
rm: cannot remove `dummy': Operation not permitted
$ Sudo rm dummy
[Sudo] password for enzotib:
rm: cannot remove `dummy': Operation not permitted
$
Plus d’informations sur chattr
et lsattr
pages de manuel.
Si vous souhaitez supprimer le fichier ultérieurement, vous devez utiliser
Sudo chattr -i dummy
avant d'utiliser rm
.
Il y a deux inconvénients à cela: