Linux: il membro del gruppo non può eliminare il file con l'autorizzazione rw


15

Di seguito mostra un file, di /tmp/testfileproprietà di user1 con gruppo modificato in wheel che include anche user2 . Il file ha l' rwautorizzazione per il gruppo. Quindi nessun membro del gruppo dovrebbe essere in grado di eliminarlo? L'output di esempio seguente mostra che user2 non è in grado di eliminare il file. Perché?

[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


Inoltre, per la spiegazione completa di @grawity, una buona soluzione è quella di creare la tua 'propria' directory sotto tmpe correggere la situazione appiccicosa
fcm

Risposte:


30

Innanzitutto, stai esaminando le autorizzazioni sbagliate. Quando sposti / rinomini / elimini un file, stai solo modificando la directory principale - le autorizzazioni del file stesso non vengono controllate. Si rimuove solo una voce dall'elenco di file della directory. Pertanto, è necessario verificare le autorizzazioni della directory principale (in questo caso /tmp).

$ ls -ld /tmp
drwxrwxrwt 15 root root 460 Jul 19 15:18 /tmp/

Secondo, /tmpè speciale. Praticamente su tutti i sistemi, è scrivibile da chiunque ( ugo=rwx), quindi a prima vista sembra che chiunque possa rinominare o eliminare qualsiasi file al suo interno. Ciò ovviamente renderebbe facile (beh, anche più semplice) creare problemi per altri utenti, quindi /tmpha sempre impostato la modalità "appiccicosa" o "eliminazione limitata" ( o+t). Con questa modalità impostata, solo il proprietario del file può spostare o eliminare i file in quella directory, indipendentemente da qualsiasi autorizzazione.

(Su coreutils GNU, la chmod(1)pagina di manuale ha una sezione sul "flag di cancellazione limitata o bit appiccicoso" .)


Sto affrontando lo stesso problema a causa del secondo punto del permesso appiccicoso speciale. Ho provato a rimuoverlo chmod o-t /tmpe poi ho riprovato a eliminare il file, ma si lamenta ancora lo stesso.
Shashank Agrawal,

1
Non solo il proprietario del file può eliminare i file in detta directory, ma anche root e il proprietario della directory (ad esempio / tmp).
wulfgarpro,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.