GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi ai-je pu supprimer un fichier appartenant à root dans mon répertoire personnel sans être root ?

Solution 1 :

Les autorisations, le contenu et tous les attributs font partie de l'inode. Le nom se trouve dans l'entrée du répertoire. Les autorisations ne sont pas héritées de manière récursive (sauf lorsque vous utilisez la valeur par défaut dans les ACL Posix).

Lorsque vous supprimez un fichier, en interne, vous supprimez simplement un lien physique de l'entrée du répertoire vers l'inode. Lorsque tous les liens physiques sont supprimés et que l'inode n'est pas utilisé, le système de fichiers récupérera l'espace. Vous n'avez besoin que d'une autorisation en écriture sur le dossier, quelles que soient les autorisations définies sur le fichier (à l'exception de l'autorisation ext immuable). Idem pour un dossier vide.

Lorsque vous supprimez un dossier qui n'est pas vide, vous devez disposer d'une autorisation en écriture sur le dossier que vous supprimez et son parent.

Solution 2 :

Lorsque vous êtes propriétaire du répertoire, vous êtes autorisé à faire quoi que ce soit sur celui-ci et sur son contenu en fonction des autorisations du répertoire. Par conséquent, bien que vous ne possédiez pas le fichier, vous pouviez toujours le supprimer car vous disposiez d'une autorisation de lecture/écriture sur le répertoire dans lequel se trouvait le fichier.


Linux
  1. Pourquoi ‘~’ a-t-il été choisi pour représenter le répertoire personnel ?

  2. Quand le fichier a-t-il été créé ?

  3. mkdir -p échoue lorsque le répertoire existe

  4. Erreur d'E/S sous Linux :impossible de supprimer le répertoire en tant que root

  5. Comment écrire des fichiers sur une clé USB sans être root ?

Comment supprimer (supprimer) un fichier ou un répertoire sous Linux

Vérifiez les autorisations de fichiers Linux avec ls

Aide-mémoire sur les autorisations de fichiers/répertoires Linux

Exclure le répertoire lors de la création d'un fichier .tar.gz

Utilisation de vim pour forcer la modification d'un fichier lorsque vous l'ouvrez sans autorisation

Comment supprimer les fichiers .fuse_hidden* ?