Ich habe ein Backup-Upload-Skript, das die Dateien von scp mithilfe des Benutzers auf einen anderen Server überträgt upload
. Ein anderes Skript auf dem Zielserver zeigt diese dann einem anderen Benutzer an und setzt den Dateimodus auf 755
.
Wenn ich dann SSH in den Zielserver mit dem upload
Benutzer, kann ich die chowned-Dateien löschen. Sollten sie nicht nur gelesen werden?
So sieht eine Datei auf dem Zielserver aus und der Benutzer upload
kann sie löschen.
-rwxr-xr-x 1 maciekish maciekish 650M Nov 1 01:07 2014-11-01-data.tar.bz2
Der Benutzer upload
wurde gerade mit hinzugefügt useradd
und ist kein Teil der maciekish
Gruppe.
Wenn upload
ich versuche, die Datei per ssh zu löschen, erhalte ich die Frage, ob ich "schreibgeschützte reguläre Datei" löschen möchte und ich kann sie sagen Y
und löschen.
linux
security
file-permissions
Maciej Swic
quelle
quelle
rm
schreibgeschützte Dateien entfernt werden?Antworten:
Die Dateien sind schreibgeschützt. Wenn Sie eine Datei löschen, wird sie jedoch nicht geändert, sondern nur das übergeordnete Verzeichnis (dh, die Datei wird im Grunde genommen aus der Verzeichnisliste entfernt) - und es scheint, als hätten Sie vollständige Schreibberechtigungen für das Verzeichnis.
Sie können das
sticky
Bit setzen, auch bekannt als "Eingeschränktes Löschen", das verhindert, dass andere Personen außer dem Eigentümer Dateien in diesem Verzeichnis umbenennen oder löschen (wie in/tmp
). Führen Sie dazuchmod o+t *directory*
als den Besitzer des Verzeichnisses aus.quelle
In einem typischen Unix-Dateisystem kann jede Datei durch eine beliebige Anzahl von Verzeichniseinträgen identifiziert werden, von denen jeder einen "Hardlink" enthält.
Aus Sicht der Implementierung besteht ein Unterschied zwischen dem Löschen des letzten Verzeichniseintrags (fester Link) für eine Datei und dem einfachen Löschen einer Referenz aus vielen. Aus semantischer Sicht gibt es jedoch keinen Unterschied.
Wenn mehrere feste Verknüpfungen zu einer Datei vorhanden sind, ändert das Schreiben in die Datei unter Verwendung einer dieser Verknüpfungen die Datei, die von allen von ihnen gesehen wird. Die Verwendung
rm
eines Links bewirkt jedoch lediglich, dass auf die Datei über diesen Link nicht zugegriffen werden kann. Andere Links zur Datei zeigen weiterhin genau dieselbe Datei an.quelle
st_nlink
Feld ("Anzahl der festen Links") instruct stat
. Einfach ausgedrückt, enthalten Verzeichnisse feste Links zu Dateien.