Befehle · 5 min read · Sep 14, 2025
Linux chmod Befehl Tutorial für Anfänger

Der Linux chmod Befehl wird verwendet, um die Datei- und Verzeichnisberechtigungen in einem Linux-basierten Betriebssystem zu ändern. Er ermöglicht es Benutzern, festzulegen, wer eine Datei lesen, schreiben oder ausführen kann, indem die Berechtigungseinstellungen geändert werden. Berechtigungen werden typischerweise drei Kategorien zugewiesen: dem Eigentümer der Datei, der Gruppe, zu der die Datei gehört, und anderen (allen anderen). Der chmod-Befehl kann mit symbolischer Notation (z. B. chmod u+x dateiname, um die Ausführungsberechtigung für den Benutzer hinzuzufügen) oder numerischer Notation (z. B. chmod 755 dateiname, um spezifische Lese-, Schreib- und Ausführungsberechtigungen für jede Kategorie festzulegen) verwendet werden. Dieser Befehl ist entscheidend für die Verwaltung der Zugriffskontrolle auf einem System und stellt sicher, dass Dateien und Verzeichnisse die entsprechenden Sicherheitseinstellungen haben.
Bitte beachten Sie, dass alle in diesem Tutorial genannten Beispiele und Anweisungen auf Ubuntu 24.04 getestet wurden und die verwendete chmod-Version 8.25 ist.
Chmod Grundlagen
Betrachten Sie das folgende Beispiel des ls-Befehls:

Die erste Spalte in der Ausgabe ist von Interesse. Lassen Sie das anfängliche ‘-‘ (das den Dateityp anzeigt) beiseite. Die verbleibenden Felder in der Spalte können weiter unterteilt werden in: rw-, rw- und r–. Dies sind die Berechtigungen, die der Dateieigentümer, die Gruppe, zu der die Datei gehört, und andere für diese Datei haben.
Das bedeutet, dass der Eigentümer sowohl Lese- (r) als auch Schreibberechtigungen (w) hat, ebenso wie die Gruppe. Andere haben jedoch nur Lesezugriff auf die Datei. Bitte beachten Sie, dass wir davon ausgehen, dass der aktuelle Benutzer die Datei besitzt.
Angenommen, die Anforderung besteht darin, jedem das Recht zu geben, diese Datei auszuführen. So kann dies geschehen:
chmod +x script.shHier sind die Berechtigungen jetzt:

Das zusätzliche ‘x’ in den Berechtigungen für Eigentümer, Gruppe und andere bedeutet, dass jetzt jeder Zugriff auf die Ausführung dieser Datei hat.
Es ist jedoch wahrscheinlicher, dass Sie nicht möchten, dass jeder Ausführungszugriff auf eine Datei hat. Was ist, wenn die Anforderung darin besteht, nur dem Eigentümer/aktuellen Benutzer Ausführungszugriff auf script.sh zu gewähren?
Nun, dafür wäre der erste Schritt, den Ausführungszugriff von allen zurückzunehmen, was Sie mit dem folgenden Befehl tun können:
chmod -x script.shUnd dann ihn ausdrücklich dem Eigentümer zu gewähren:
chmod u+x script.shWie Sie sich wahrscheinlich gedacht haben, sagt ‘u+x’, gewähren (+) Sie dem Eigentümer/aktuellen Benutzer (u) Ausführungs- (x) Zugriff auf die Datei. Ebenso können Sie für die Gruppe ‘g’ verwenden und für andere ‘o’.
Bitte beachten Sie, dass Sie immer, wenn Sie eine gemeinsame Berechtigungsmenge gewähren/entziehen möchten, ‘a’ anstelle von ‘ugo’ verwenden können. Was ich meine, ist dies:
chmod ugo-x script.shkann durch dies ersetzt werden:
chmod a-x script.shDenken Sie auch daran, dass, wenn keiner dieser (‘u’, ‘g’, ‘o’ und ‘a’) ausdrücklich angegeben ist, auch standardmäßig ‘a’ angenommen wird.
Wenn Sie möchten, können Sie auch einfach die Berechtigungen, die dem Eigentümer/aktuellen Benutzer gewährt wurden, kopieren und sie für die Gruppe oder andere haben. Verwenden Sie dafür das Zeichen ‘=’.
Zum Beispiel, um die Berechtigungen des Eigentümers/Benutzers auf die Gruppe zu kopieren, verwenden Sie den folgenden Befehl:
chmod g=u script.shEin weiteres Szenario könnte sein, Berechtigungen für eine bestimmte Datei zu kopieren und sie für Ihre Datei zu haben. Verwenden Sie dafür die –reference Befehlszeilenoption. Hier ist die allgemeine Vorlage für die Verwendung dieser Befehlszeilenoption:
chmod --reference=[quell-datei] [ziel-datei]In dem obigen Befehl ist quell-datei die Datei, deren Berechtigungseinstellungen Sie kopieren möchten, und ziel-datei ist die Datei, deren Berechtigungseinstellungen Sie ändern möchten.
Darüber hinaus gibt es auch eine numerische Notation (auch bekannt als oktale Darstellung), mit der Sie chmod anweisen können, Berechtigungen zu ändern. Es gibt drei Zahlen, mit denen Sie in diesem Modus spielen: 4, 2 und 1. Während 4 für Lesen steht, sind die anderen beiden für Schreiben und Ausführen.
Zum Beispiel, betrachten Sie das folgende Beispiel:

Angenommen, die Aufgabe besteht darin, die Ausführungsberechtigung für den Eigentümer/Benutzer hinzuzufügen, die Schreibberechtigung zu entfernen, aber die Ausführungsberechtigung für die Gruppe hinzuzufügen, und alle Berechtigungen von anderen zu entfernen. Dies kann wie folgt geschehen:
chmod 750 script.shIn dem obigen Befehl steht ‘7’ für den Benutzer, was das Ergebnis von 4+2+1 ist, da die Anforderung für den Benutzer darin besteht, alle Berechtigungen zu haben. Ebenso steht ‘5’ für die Gruppe, was das Ergebnis von 4+0+1 ist, da die Anforderung darin besteht, der Gruppe nur Lese- und Ausführungsberechtigungen zu gewähren. Schließlich steht ‘0’ für andere, was das Ergebnis von 0+0+0 ist, da die Anforderung darin besteht, allen anderen die Berechtigungen zu entziehen.
Für diejenigen, die mit symbolischen Links arbeiten, gibt es hier etwas Wissenswertes:
chmod ändert niemals die Berechtigungen von symbolischen Links; der chmod-Systemaufruf kann deren Berechtigungen nicht ändern. Dies ist kein Problem, da die Berechtigungen von symbolischen Links niemals verwendet werden. Für jeden symbolischen Link, der in der Befehlszeile aufgeführt ist, ändert chmod die Berechtigungen der Datei, auf die verwiesen wird. Im Gegensatz dazu ignoriert chmod symbolische Links, die während rekursiver Verzeichnisdurchläufe gefunden werden.Befehlszeilenreferenz
Der chmod-Befehl in Linux hat mehrere Befehlszeilenoptionen, die sein Verhalten ändern. Hier ist eine Liste der am häufigsten verwendeten Optionen:
- -R, –recursive: Diese Option wendet die Berechtigungsänderungen rekursiv auf alle Dateien und Verzeichnisse im angegebenen Verzeichnis an. Sie ist nützlich, wenn Sie die Berechtigungen eines Verzeichnisses und aller seiner Inhalte auf einmal ändern möchten.
Beispiel: chmod -R 755 /pfad/zum/verzeichnis
- -c, –changes: Diese Option berichtet nur, wenn eine Änderung vorgenommen wird. Wenn die Berechtigungen erfolgreich geändert werden, gibt sie eine Nachricht aus, die die Änderung anzeigt.
Beispiel: chmod -c 644 dateiname
- -v, –verbose: Diese Option bietet detaillierte Informationen über jede verarbeitete Datei, unabhängig davon, ob die Berechtigungen geändert wurden oder nicht.
Beispiel: chmod -v 755 dateiname
- -reference=RFILE: Anstatt Berechtigungen direkt anzugeben, ermöglicht diese Option, die Berechtigungen einer Datei oder eines Verzeichnisses an eine andere Datei oder ein anderes Verzeichnis (RFILE) anzupassen.
Beispiel: chmod –reference=datei1 datei2
- -f, –silent, –quiet: Diese Option unterdrückt die meisten Fehlermeldungen, sodass der Befehl ohne Ausgabe von Fehlern ausgeführt wird.
Beispiel: chmod -f 755 dateiname
Diese Optionen ermöglichen es, chmod flexibel in verschiedenen Szenarien zu verwenden, von Anpassungen an einzelnen Dateien bis hin zu großangelegten Änderungen der Verzeichnisberechtigungen.
Fazit
In diesem Tutorial haben wir die meisten Grundlagen zu diesem Tool besprochen, und die Beispiele, die wir diskutiert haben, zielen darauf ab, diese Grundlagen klar zu machen.
Bitte beachten Sie, dass sich unsere Diskussion hauptsächlich auf Dateien konzentrierte. Sie sollten einige Details im Hinterkopf behalten, während Sie chmod mit Verzeichnissen verwenden. Für all diese Informationen (sowie weitere Details zu chmod) besuchen Sie die Man-Seite des Tools.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.