chmod -w file
ist in allen UNIX-Umgebungen verfügbar, jedoch chattr -i FILE
Die Verwendung erweiterter Dateiattribute ist möglicherweise auf Ihrem System nicht verfügbar, je nach Typ des Dateisystems/der Distribution!
Sehen Sie sich außerdem diesen Link an, um die guten und schlechten Seiten der Verwendung erweiterter Dateiattribute zu erfahren.
Ab chattr
Manpage
Eine Datei mit dem 'i'-Attribut kann nicht geändert werden:Sie kann nicht gelöscht oder umbenannt werden, es kann keine Verknüpfung zu dieser Datei erstellt werden und es können keine Daten in die Datei geschrieben werden. Nur der Superuser oder ein Prozess mit der Fähigkeit CAP_LINUX_IMMUTABLE kann dieses Attribut setzen oder löschen.
Wie Sie sehen können, chattr ist leistungsfähiger als chmod . chmod -w entfernt nur 'write
' Berechtigung für den Dateiinhalt. Außerdem müssen Sie chattr +i
verwenden um die Datei zu schützen/sperren, dann chattr -i
zum Entsperren
chattr +i
setzt den immutable
Dateisystemattribut für die Datei. Sie unterscheidet sich von Zugriffssteuerungsregeln. Zugriffskontrollregeln gelten für die Dateiattribute, während immutable
ist ein erweitertes Dateisystem Dateiattribut, das möglicherweise nicht auf allen Dateisystemen verfügbar ist. Nur ein Benutzer mit Root-Rechten kann dieses erweiterte Attribut setzen oder aufheben. Niemand, nicht einmal der Besitzer oder ein Benutzer mit Schreibrechten, kann in eine solche Datei schreiben. Ein Benutzer ohne Berechtigung zum Schreiben einer Datei kann einen festen Link zu einer regulären Datei erstellen, aber wenn die Datei als unveränderlich markiert ist, kann ein Benutzer keinen festen Link erstellen, da das Dateisystem die Anzahl der Verweise auf diese unveränderliche Datei nicht ändern kann.
chattr +i
ist nützlich zum Schutz vor versehentlichem Löschen durch root. Außerdem kann eine unveränderliche Datei nicht umbenannt oder von einem Verzeichnis in ein anderes verschoben werden.