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

chattr:Befehl nicht gefunden

Der Befehl chattr wird verwendet, um die Attribute einer Datei oder eines Verzeichnisses zu ändern. Die folgende Tabelle beschreibt einige der Optionen des Befehls chattr.

Option Beschreibung
-R Ändern Sie rekursiv die Attribute von Verzeichnissen und deren Inhalt.
-v {Version} Stellen Sie die Versionsnummer einer Datei ein.
+i Markieren Sie die Datei als schreibgeschützt oder unveränderlich. Erfordert Superuser-Rechte.
-i Entfernen Sie das schreibgeschützte oder unveränderliche Attribut der Datei. Erfordert Superuser-Rechte.

Die Syntax des chattr-Befehls lautet:

# chattr [-R] [-v {version}] [+-{attributes}] {file/directory names}

Wenn beim Ausführen des Chattr-Befehls der folgende Fehler auftritt:

chattr: command not found

Sie können das folgende Paket gemäß Ihrer Wahl der Distribution installieren:

Verteilung Befehl
OS X brew install e2fsprogs
Debian apt-get install e2fsprogs
Ubuntu apt-get install e2fsprogs
Alpin apk fügt e2fsprogs hinzu
Arch Linux pacman -S e2fsprogs
Kali-Linux apt-get install e2fsprogs
CentOS yum installiere e2fsprogs
Fedora dnf installiere e2fsprogs
Raspbian apt-get install e2fsprogs

Entfernen des Attributs -i (unveränderlich) aus den Dateien

Verwenden Sie den folgenden Befehl, um das „i“-Attribut zu entfernen.

# chattr -i geek.txt    # Unset "i" attribute

Nach dem Entfernen des Attributs sehen Sie, dass der Berechtigungsabschnitt leer wird.

# lsattr geek.txt     
--------------- geek.txt

Ein Verzeichnis mit chattr unveränderlich machen

Versuchen wir nun, ein Verzeichnis zu sichern, indem wir sein Attribut rekursiv mit dem Befehl chattr ändern. Hier habe ich ein Verzeichnis namens data und jeder hat rekursiv vollen Zugriff auf dieses Verzeichnis. Sehen Sie sich die Beispielausgabe unten an.

# mkdir data
# chmod -R 777 data/
# ls -l
total 4
drwxrwxrwx. 2 root root 4096 Apr 24 04:25 data

Setzen Sie nun das Attribut auf dieses Verzeichnis.

# chattr +i data/
# lsattr 
----i--------e- ./data

Sie können das Attribut auch rekursiv setzen, indem Sie die Option -R mit chattr.

verwenden
# chattr -R +i data/

Nachdem Sie das Attribut auf das Verzeichnis gesetzt haben, versuchen Sie nun, eine Datei zu löschen, zu verschieben oder zu erstellen. Ich bin sicher, dass Sie dies nicht tun dürfen. Sehen Sie sich die Beispielausgabe unten an.

# rmdir data/        # Deleting the Directory
rmdir: failed to remove `data/': Operation not permitted
# rm -rf data/        # Deletiing the Directory Forcefully
rm: cannot remove `data': Operation not permitted
# mv data/ mydata       # Moving the Directory
mv: cannot move `data/' to `mydata': Operation not permitted
# cd data/
# cat > test.txt       # Creating a File in the directory
bash: test.txt: Permission denied


Linux
  1. Subscription-Manager:Befehl nicht gefunden

  2. dnf:Befehl nicht gefunden

  3. bc:Befehl nicht gefunden

  4. dpkg:Befehl nicht gefunden

  5. id:Befehl nicht gefunden

nc:Befehl nicht gefunden

aws-shell:Befehl nicht gefunden

kubectl:Befehl nicht gefunden

tvservice:Befehl nicht gefunden

lspci:Befehl nicht gefunden

ln:Befehl nicht gefunden