GNU/Linux >> LINUX-Kenntnisse >  >> Linux

chattr-Befehl unter Linux mit Beispielen

Einführung

Der chattr Befehl in Linux ist ein Dateisystembefehl, der zum Ändern der Attribute einer Datei in einem Verzeichnis verwendet wird. Der Hauptzweck dieses Befehls besteht darin, mehrere Dateien für andere Benutzer als den Superuser unfähig zu machen, sie zu ändern. Da wir wissen, dass Linux ein Mehrbenutzer-Betriebssystem ist, besteht die Möglichkeit, dass ein Benutzer eine Datei löschen kann, die für einen anderen Benutzer von großer Bedeutung ist, sagt der Administrator. Um solche Szenarien zu vermeiden, stellt Linux „chattr bereit ‘. Kurz gesagt, „chattr“ kann eine Datei unveränderlich, nicht löschbar, nur anhängbar und vieles mehr machen!

Zusammenfassung

chattr [ -RVf ] [ -v version ] [ mode ] files...

Am Anfang eines Mode-Strings muss einer der folgenden Operatoren stehen:

  • + ‘ :Hinzufügen ausgewählter Attribute zu den bestehenden Attributen der Dateien.
  • Und „ ‘ :Bewirkt, dass ausgewählte Attribute entfernt werden.
  • = ‘ :Bewirkt, dass ausgewählte Attribute die einzigen Attribute sind, die die Dateien haben.

Das Format des symbolischen Modus ist:

{+|-|=}[aAcCdDeijsStTu]

Im Folgenden finden Sie eine Liste allgemeiner Attribute und zugehöriger Flags, die mit dem Befehl chattr gesetzt/ungesetzt werden können:

  • A set :Der Zeitdatensatz wurde nicht aktualisiert.
  • S set :Die Änderungen werden synchron auf der Festplatte aktualisiert.
  • ein set :Datei kann nur_im Append-Modus zum Schreiben geöffnet werden.
  • ich set :Datei kann nicht geändert werden (unveränderlich), der einzige Superuser kann das Attribut zurücksetzen.
  • j set :Alle Dateiinformationen werden im ext3-Journal aktualisiert, bevor sie in der Datei selbst aktualisiert werden.
  • t set :Kein Tail-Merging erlaubt.
  • d set :Kein Kandidat mehr für Backup beim Dump-Prozess .
  • du set :Wenn eine solche Datei gelöscht wird, werden ihre Daten gespeichert, sodass der Benutzer ihre Wiederherstellung anfordern kann.

Also unten sind die verschiedenen Optionen des Chattr-Befehls:

  • -R :Wird verwendet, um die Listenattribute von Verzeichnissen und deren Inhalt rekursiv anzuzeigen.
  • -V :Zeigt die Version des Programms an.
  • -a :Wird verwendet, um alle Dateien eines Verzeichnisses aufzulisten, das auch die enthält, deren Name mit einem Punkt (‘.’) beginnt.
  • -d :Diese Option listet die Verzeichnisse als normale Dateien auf, anstatt ihren Inhalt aufzulisten.
  • -v :Wird verwendet, um die Versions-/Generationsnummer usw. der Datei anzuzeigen.

Verwendung von chattr Befehl: Das chattr’ can_be verwendet werden, um einige Systemdateien zu erhalten, die sehr wichtig sind und auf jeden Fall auf dem Host-PC bleiben müssen. Auch um ein Verzeichnis für andere Benutzer als Superuser unlöschbar oder unveränderbar zu machen, ist dies notwendig. Die übliche Verwendung von „chattr“ ist wie folgt:-

chattr [OPERATOR][Flags] FILE

Verwenden Sie das Attribut „i“, um eine Datei unveränderlich zu machen

Der „chattr“-Befehl, der verwendet wird, um Dateien unveränderlich zu machen. Unveränderlich bedeutet, dass die Datei nicht verschoben, umbenannt oder gelöscht werden kann.

Hier geben wir als Beispiel einer Datei namens „unixcop.txt“ das ‚i‘-Flag:

[qadry@unixcop ~]# chattr +i unixcop.txt 
[qadry@unixcop ~]# 
[qadry@unixcop ~]# lsattr 
----i--------------- ./unixcop.txt
[qadry@unixcop ~]# 

Sie können das "lsattr" verwenden um die Attribute der Datei zu überprüfen.

Wie Sie im obigen Screenshot sehen können, wurde das Attribut „i“ gesetzt und die Datei ist unveränderlich geworden.

Das ‚i‘-Attribut kann auch verwendet werden, um Verzeichnisse unveränderlich zu machen.

Entfernen Sie das ‚i‘-Attribut aus der Datei

Sobald das Attribut „i“ gesetzt wurde, kann die Datei erst geändert oder gelöscht werden, wenn das Attribut vom Root-Benutzer entfernt wurde. Verwenden Sie den Operator „-“ mit der Option, das Attribut zu entfernen:

[qadry@unixcop ~]# chattr -i unixcop.txt 
[qadry@unixcop ~]# 
[qadry@unixcop ~]# lsattr 
-------------------- ./unixcop.txt
[qadry@unixcop ~]#

verwenden Sie das Attribut ‚a‘, um die Datei im Anhängemodus zu öffnen

Wir können das Attribut ‚a‘ verwenden, um die Datei im Anhängemodus zu öffnen. Im Anhängemodus können Benutzer nur Daten an eine Datei anhängen, ohne die bereits in der Datei vorhandenen Daten zu ändern.

[qadry@unixcop ~]# chattr +a unixcop.txt 
[qadry@unixcop ~]# 
[qadry@unixcop ~]# lsattr 
-----a-------------- ./unixcop.txt
[qadry@unixcop ~]# 

Wie Sie im Screenshot unten sehen können, gibt mir das Terminal einen Fehler, wenn ich versuche, weitere Daten in die Textdatei hinzuzufügen, indem ich den echo-Befehl verwende:

[qadry@unixcop ~]# echo "Hello Unixcop" > unixcop.txt 
-bash: unixcop.txt: Operation not permitted
[qadry@unixcop ~]#

Wir können Daten an die Datei anhängen, indem wir den Operator „>>“ anstelle des Operators „>“ verwenden:

[qadry@unixcop ~]# echo "Hello Unixcop" >> unixcop.txt 
[qadry@unixcop ~]# cat unixcop.txt 
Hello Unixcop
[qadry@unixcop ~]#

Verzeichnisse sichern

Das Flag +i’ kann für ein Verzeichnis (wie unten gezeigt) verwendet werden, um das Verzeichnis unveränderlich zu machen. Außerdem wird hier das Flag -R’ verwendet, wodurch der Aufruf rekursiv wird und alle Unterdateien und Verzeichnisse ebenfalls unveränderlich gemacht werden.

[qadry@unixcop ~]# chattr -R +i temp/
[qadry@unixcop ~]# rm -rf temp/
rm: cannot remove 'temp/': Operation not permitted
[qadry@unixcop ~]# lsattr -R temp/
-----i--------e------ temp/unixcop_file.txt
[qadry@unixcop ~]# chattr -R -i temp/
[qadry@unixcop ~]# lsattr -R temp/
--------------e------ temp/unixcop_file.txt
[qadry@unixcop ~]# 

Fügen Sie das Attribut „j“ hinzu, um die Daten der Datei im ext3-Journal zu aktualisieren

Durch die Verwendung des ‚j‘-Attributs werden die Daten des files-Attributs vor der Datei selbst im ext3-Journal aktualisiert:

[qadry@unixcop ~]# chattr +j unixcop.txt 
[qadry@unixcop ~]# 
[qadry@unixcop ~]# lsattr 
-----j-------------- ./unixcop.txt
[qadry@unixcop ~]# 

Schlussfolgerung

Der Befehl „chattr“ ist ein sehr nützliches Tool für Administratoren. Es ermöglicht ihnen, Dateiberechtigungen zu ändern, was zum Schutz wichtiger Dateien beiträgt und verhindert, dass sie geändert werden.


Linux
  1. wc Linux-Befehl mit Beispielen

  2. Sortierbefehl in Linux mit Beispielen

  3. JQ-Befehl in Linux mit Beispielen

  4. ln-Befehlsbeispiele in Linux

  5. file Befehlsbeispiele in Linux

Linux-WC-Befehl mit Beispielen

Linux-IP-Befehl mit Beispielen

Verwendung des Linux-mv-Befehls mit Beispielen

Linux-Mount-Befehl mit Beispielen

gawk Linux-Befehl mit Beispielen

Linux-make-Befehl mit Beispielen