Handbücher für die Kommandozeile

Man » chmod Manual online - detaillierte Online-Dokumentation für die chmod-Manpage

🌍
chmod - ändert die Dateimodus-Bits

SYNOPSIS

chmod [OPTION]... MODE[,MODE]... DATEI...
chmod [OPTION]... OKTAL-MODUS DATEI...
chmod [OPTION]... --reference=RDATEI DATEI...

BESCHREIBUNG

Diese Manpage dokumentiert die GNU-Version von chmod. chmod ändert die Dateimodus-Bits jeder gegebenen Datei gemäß dem Modus, der entweder eine symbolische Darstellung der durchzuführenden Änderungen oder eine Oktalziffer, die das Bitmuster für die neuen Modus-Bits darstellt, sein kann.

Das Format eines symbolischen Modus ist [ugoa...][[-+=][Berechtigungen...]..., wobei Berechtigungen entweder Null oder mehr Buchstaben aus der Menge rwxXst oder ein einzelner Buchstabe aus der Menge ugo sind. Mehrere symbolische Modi können durch Kommas getrennt angegeben werden.

Eine Kombination der Buchstaben ugoa steuert, welche Benutzerberechtigungen für die Datei geändert werden: den
Benutzer, der sie besitzt (u), andere Benutzer in der Dateigruppe (g), andere Benutzer, die nicht in der Dateigruppe
sind (o) oder alle Benutzer (a). Wenn keiner dieser Buchstaben angegeben wird, ist die Wirkung so, als wäre (a) angegeben,
aber Bits, die in der umask gesetzt sind, werden nicht beeinflusst.

Der Operator + fügt die ausgewählten Dateimodus-Bits zu den vorhandenen Dateimodus-Bits jeder Datei hinzu; - entfernt sie; und = fügt sie hinzu und entfernt nicht genannte Bits, mit der Ausnahme, dass die nicht genannten Set-User- und Set-Group-ID-Bits eines Verzeichnisses nicht beeinflusst werden.

Die Buchstaben rwxXst wählen Dateimodus-Bits für die betroffenen Benutzer aus: Lesen (r), Schreiben (w), Ausführen (oder Suchen für Verzeichnisse) (x), Ausführen/Suchen nur, wenn die Datei ein Verzeichnis ist oder bereits Ausführungsberechtigungen für einen Benutzer hat (X), Set-User- oder Set-Group-ID bei Ausführung (s), Restricted-Deletion- Flag oder Sticky-Bit (t). Anstelle eines oder mehrerer dieser Buchstaben können Sie genau einen der Buchstaben ugo angeben: die Berechtigungen, die dem Benutzer gewährt werden, der die Datei besitzt (u), die Berechtigungen, die anderen Benutzern gewährt werden, die Mitglieder der Dateigruppe sind (g), und die Berechtigungen, die Benutzern gewährt werden, die nicht zu den beiden vorherigen Kategorien gehören (o).

Ein numerischer Modus besteht aus einer bis vier Oktalziffern (0-7), die durch Addition der Bits mit den Werten 4 2 und 1 ermittelt werden. Ausgelassene Ziffern werden als führende Nullen angenommen. Die erste Ziffer wählt die Set-User-ID (4) und Set-Group-ID (2) sowie die Restricted-Deletion- oder Sticky-Attribute (1) aus. Die zweite Ziffer wählt die Berechtigungen für den Benutzer aus, der die Datei besitzt: Lesen (4), Schreiben (2) und Ausführen (1); die dritte wählt die Berechtigungen für andere Benutzer in der Dateigruppe mit den gleichen Werten aus; und die vierte für andere Benutzer, die nicht in der Dateigruppe sind, mit den gleichen Werten.

chmod ändert die Berechtigungen von symbolischen Links nicht; das chmod-System kann ihre Berechtigungen auf den meisten Systemen nicht ändern, und die meisten Systeme ignorieren die Berechtigungen von symbolischen Links. Für jeden symbolischen Link, der in der Befehlszeile aufgeführt ist, ändert chmod jedoch die Berechtigungen der verlinkten Datei. Im Gegensatz dazu ignoriert chmod symbolische Links, die bei der rekursiven Traversierung von Verzeichnissen gefunden werden. Optionen, die dieses Verhalten ändern, werden im Abschnitt OPTIONEN beschrieben.

SETUID- UND SETGID-BITS

chmod löscht das Set-Group-ID-Bit einer regulären Datei, wenn die Gruppen-ID der Datei nicht mit der
effektiven Gruppen-ID des Benutzers oder einer der ergänzenden Gruppen-IDs des Benutzers übereinstimmt, es sei denn, der Benutzer verfügt über entsprechende Berechtigungen. Zusätzliche Einschränkungen können dazu führen, dass die Set-User-ID- und Set-Group-ID-Bits von
MODE oder RFILE ignoriert werden. Dieses Verhalten hängt von der Richtlinie und Funktionalität des zugrunde liegenden chmod-Systemaufrufs ab. Im Zweifelsfall prüfen Sie das Verhalten des zugrunde liegenden Systems.

Für Verzeichnisse behält chmod die Set-User-ID- und Set-Group-ID-Bits bei, es sei denn, Sie geben dies explizit an. Sie können die Bits mit symbolischen Modi wie u+s und g-s setzen oder löschen. Um diese Bits für Verzeichnisse mit einem numerischen Modus zu löschen, ist eine zusätzliche führende Null wie 00755, ein führendes Minuszeichen wie -6000 oder ein führendes Gleichheitszeichen wie =755 erforderlich.

RESTRIKTIONS-FLAG FÜR DAS LÖSCHEN ODER STICKY-BIT

Das Restriktions-Flag für das Löschen oder das Sticky-Bit ist ein einzelnes Bit, dessen Interpretation von dem Dateityp abhängt. Für Verzeichnisse verhindert es, dass nicht privilegierte Benutzer eine Datei in dem Verzeichnis löschen oder umbenennen, es sei denn, sie besitzen die Datei oder das Verzeichnis; dies wird als Restriktions-Flag für das Verzeichnis bezeichnet und ist häufig in weltbeschreibbaren Verzeichnissen wie /tmp zu finden. Für reguläre Dateien auf einigen älteren Systemen speichert das Bit das Textimage des Programms auf dem Swap-Speicher, sodass es beim Ausführen schneller geladen wird; dies wird als Sticky-Bit bezeichnet.

OPTIONEN

Ändern Sie den Modus jeder DATEI in MODUS. Mit --reference ändern Sie den Modus jeder DATEI in den von RFILE.

-c, --changes
wie ausführlich, aber nur eine Meldung ausgeben, wenn eine Änderung vorgenommen wurde

-f, --silent, --quiet
die meisten Fehlermeldungen unterdrücken

-v, --verbose
eine Diagnose für jede verarbeitete Datei ausgeben

--dereference
die Referenz jedes symbolischen Links anstelle des symbolischen Links selbst beeinflussen

-h, --no-dereference
jeden symbolischen Link anstelle der Referenz beeinflussen

--no-preserve-root
behandeln Sie '/' nicht besonders (Standardeinstellung)

--preserve-root
verhindern Sie die rekursive Bearbeitung von '/'

--reference=RFILE
verwenden Sie den Modus von RFILE anstelle der Angabe von MODUS-Werten. RFILE wird immer dereferenziert, wenn es sich um einen symbolischen Link handelt.

-R, --recursive
Dateien und Verzeichnisse rekursiv ändern

Die folgenden Optionen ändern die Art und Weise, wie eine Hierarchie durchlaufen wird, wenn die Option -R ebenfalls angegeben ist. Wenn mehr als eine angegeben ist, gilt nur die letzte. -H ist die Standardeinstellung.

-H     Wenn ein Befehlszeilenargument ein symbolischer Link zu einem Verzeichnis ist, durchlaufen Sie es

-L     Jeden symbolischen Link zu einem Verzeichnis durchlaufen

-P     keine symbolischen Links durchlaufen

--help diese Hilfe anzeigen und beenden

--version
Versionsinformationen ausgeben und beenden

Jeder MODUS hat die Form '[ugoa]\*(\[-+=\]([rwxXst]\*|[ugo]))+|\[-+=\][0-7]+'.

AUTOR

Geschrieben von David MacKenzie und Jim Meyering.

FEHLERMELDUNGEN

GNU coreutils Online-Hilfe: [https://www.gnu.org/software/coreutils/] Melden Sie alle Übersetzungsfehler unter [https://translationproject.org/team/]

SIEHE AUCH

chmod(2)

Vollständige Dokumentation [https://www.gnu.org/software/coreutils/chmod] oder lokal verfügbar über: info '(coreutils) chmod invocation'

Verpackt von Debian (9.7-3) Copyright © 2025 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder neuer [https://gnu.org/licenses/gpl.html]. Dies ist freie Software: Sie können sie ändern und weiterverbreiten. Es gibt KEINE GARANTIE, soweit es gesetzlich zulässig ist.