Ci - dessous montre un fichier, /tmp/testfile
, appartenant à user1 avec le groupe a changé de roue qui comprend également utilisateur2 . Le fichier est rw
autorisé pour le groupe. Donc, aucun membre du groupe ne devrait-il pouvoir le supprimer? La sortie exemple ci - dessous montre que user2 ne peut pas supprimer le fichier. Pourquoi?
[user2@files ~]$ ls -l /tmp/testfile
-rw-rw-r-- 1 user1 wheel 0 Jul 18 18:54 /tmp/testfile
[user2@files ~]$ groups
user2 wheel
[user2@files ~]$ rm /tmp/testfile
rm: cannot remove `/tmp/testfile': Operation not permitted
linux
permissions
file-permissions
utilisateur347765
la source
la source
tmp
et à résoudre le problèmeRéponses:
Tout d'abord, vous regardez les mauvaises autorisations. Lorsque vous déplacez / renommez / supprimez un fichier, vous ne modifiez que le répertoire parent . Les autorisations propres au fichier ne sont pas vérifiées. Vous ne supprimez qu'une entrée de la liste de fichiers du répertoire. Par conséquent, vous devez vérifier les autorisations du répertoire parent (dans ce cas
/tmp
).Deuxièmement,
/tmp
c'est spécial. Sur pratiquement tous les systèmes, any (ugo=rwx
) est accessible en écriture ( ), ainsi, à première vue, il semble que quiconque puisse renommer ou supprimer n'importe quel fichier. Cela faciliterait bien sûr (bien, encore plus) la création de problèmes pour les autres utilisateurs, par conséquent,/tmp
le mode "collant", également appelé "suppression restreinte", est défini (o+t
). Lorsque ce mode est défini, seul le propriétaire du fichier peut déplacer ou supprimer des fichiers dans ce répertoire, quelles que soient les autorisations.(Sur GNU, la
chmod(1)
page de manuel contient une section sur "l'indicateur de suppression restreinte ou le bit collant" .)la source
chmod o-t /tmp
, puis j'ai essayé de nouveau de supprimer le fichier, mais il continue de se plaindre.