Mit dem Befehl chmod können Sie die Berechtigungen einer Datei oder eines Verzeichnisses ändern. Nur der Eigentümer der Datei oder des Verzeichnisses oder der Systemadministrator kann die Berechtigungen des Objekts ändern.
Syntax
Die Syntax des chmod-Befehls lautet:
# chmod [options] {mode} {file/ directory name}
chmod-Befehlsoptionen
Der Befehl chmod unterstützt verschiedene Optionen zum Ändern von Berechtigungen. Eine oder mehrere dieser Optionen können gleichzeitig verwendet werden.
Option | Beschreibung |
---|---|
-c | Melde Änderungen, die an Berechtigungen vorgenommen wurden. |
-f | Die meisten Fehlermeldungen ausblenden. |
-v | Anzeigen eines Diagnoseeintrags für jede verarbeitete Datei. |
-R | Berechtigungen von Dateien und Verzeichnissen rekursiv ändern. |
Die auf ein Dateisystemobjekt angewendeten Berechtigungsbits entsprechen direkt den Werten, die in dem 4-Ziffern-Tupel angegeben werden können, das dem Dienstprogramm chmod im folgenden Befehl übergeben wird:
# chmod abcd [file system object]
Jeder Wert im Ziffernsatz abcd besteht aus einer Summe der Werte 1, 2 und 4. Durch Addition dieser Werte für jede Ziffer kann ein Wert generiert werden, um alle Dateiobjektattribute zu setzen:
- ein – Diese Ziffer steuert spezielle Attributeinstellungen. der Wert 1 setzt das Setuid-Bit, der Wert 2 das Setgid-Bit und der Wert 4 das Sticky-Bit für das Objekt.
- b, c und d – Diese Ziffern steuern die Lese-, Schreib- und Ausführungsberechtigungen für den Dateieigentümer, die primäre Gruppe der Dateieigentümer und alle anderen Benutzer. Der Wert 4 aktiviert die Leseberechtigung, der Wert 2 die Schreibberechtigung und der Wert 1 die Ausführungsberechtigung.
So stellen Sie eine Datei so ein, dass sie klebrig, lesbar und beschreibbar für den Eigentümer, lesbar für ihre primäre Gruppe und unzugänglich für alle anderen ist:
# chmod 4610 filename
Um jedem im System alle Berechtigungen zu erteilen:
# chmod 0777 filename
Wenn beim Ausführen des chmod-Befehls der folgende Fehler auftritt:
chmod: command not found
Sie können versuchen, das folgende Paket gemäß Ihrer Wahl der Distribution zu installieren:
Verteilung | Befehl |
---|---|
OS X | brew install coreutils |
Debian | apt-get install coreutils |
Ubuntu | apt-get install coreutils |
Alpin | apk Coreutils hinzufügen |
Arch Linux | pacman -S coreutils |
Kali-Linux | apt-get install coreutils |
CentOS | yum installiere coreutils |
Fedora | dnf installiere coreutils |
Raspbian | apt-get install coreutils |
Beispiele für chmod-Befehle
1. Geben Sie dem [Benutzer], dem eine Datei gehört, das Recht, sie auszuführen:
# chmod u+x path/to/file
2. Geben Sie dem [Benutzer] Rechte zum [Lesen] und [Schreiben] in eine Datei/ein Verzeichnis:
# chmod u+rw path/to/file_or_directory
3. Entfernen Sie ausführbare Rechte von der [g]Gruppe:
# chmod g-x path/to/file
4. Geben Sie [allen Benutzern] Rechte zum [Lesen und E[x]ecute:
# chmod a+rx path/to/file
5. Geben Sie [anderen] (nicht in der Gruppe des Dateieigentümers) die gleichen Rechte wie der [Gruppe]:
# chmod o=g path/to/file
6. Alle Rechte von [anderen] entfernen:
# chmod o= path/to/file
7. Ändern Sie die Berechtigungen rekursiv und geben Sie [g]ruppe und [anderen] die Möglichkeit zu [schreiben]:
# chmod -R g+w,o+w path/to/directory
8. Geben Sie [allen] Benutzern rekursiv Leseberechtigungen für Dateien und E[X]ecute-Berechtigungen für Unterverzeichnisse innerhalb eines Verzeichnisses:
# chmod -R a+rX path/to/directory
Schlussfolgerung
Auf Unix- und Linux-Systemen würden Sie das Dienstprogramm chmod verwenden, um Berechtigungswerte für Dateien und Verzeichnisse festzulegen. Sie können Berechtigungen für den Benutzer der Datei oder des Verzeichnisses, die Gruppe, die der Datei oder dem Verzeichnis zugeordnet ist, und mehr festlegen. Die drei grundlegenden Berechtigungen lauten wie folgt:
- r :Dies zeigt eine Leseberechtigung an.
- w :Dies zeigt eine Schreibberechtigung an.
- x :Dies ist die ausführbare Berechtigung. Sie können es auf jede Art von Programmdatei oder auf Verzeichnisse anwenden. Wenn Sie einem Verzeichnis eine ausführbare Berechtigung zuweisen, können autorisierte Personen per CD darauf zugreifen.