Comment empêcher la suppression d'un fichier du dossier utilisateur?

9

Comment puis-je rendre un fichier impossible à supprimer par l'utilisateur même s'il se trouve sous son dossier personnel?

desgua
la source

Réponses:

13

Il est possible de rendre un fichier impossible à supprimer, même à partir de la racine, sur un système de fichiers ext2 / 3/4, en changeant un attribut de 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 chattret lsattrpages de manuel.

Si plus tard vous souhaitez supprimer le fichier que vous devez utiliser

sudo chattr -i dummy

avant d'utiliser rm.

Il y a deux inconvénients à cela:

  1. vous devez être root pour changer les attributs;
  2. vous pouvez oublier les attributs de ce fichier ou la façon de les modifier, de sorte qu'il semble que vous ne puissiez plus supprimer le fichier.
enzotib
la source
Existe-t-il un moyen de l'utiliser et de conserver d'autres autorisations? Par exemple, toujours autoriser l'utilisateur et les autorisations de groupe pour les rwxsous-répertoires et les fichiers.
roydukkey