- 1 1. Einführung
- 2 2. Was ist chmod? (Grundlagen)
- 3 3. Das Verständnis der Bedeutung von -rw-r–r–
- 4 4. How to Set -rw-r–r– Using chmod (Practical Guide)
- 5 5. Checking Permissions with the ls -l Command
- 6 6. Überprüfen und Ändern von Berechtigungen mit GUI‑Tools (Einsteiger‑freundlich)
- 7 7. Wichtige Hinweise und Fehlersuche für chmod
- 8 8. Praktische Anwendungsfälle und gängige Szenarien
- 8.1 Wie werden chmod‑Berechtigungen in realen Umgebungen verwendet?
- 8.2 1. Verwaltung von HTML‑Dateien auf einem Webserver
- 8.3 2. Ausführen‑Berechtigung für Skriptdateien gewähren
- 8.4 3. Zugriff auf sensible Dateien einschränken
- 8.5 4. Sicheres Teilen eines Verzeichnisses
- 8.6 5. Probleme durch Fehlkonfiguration vermeiden
- 9 9. Häufig gestellte Fragen (FAQ)
- 9.1 Q1. Was ist der Unterschied zwischen chmod 644 und -rw-r--r--?
- 9.2 Q2. Was passiert, wenn eine Datei keine Ausführungsberechtigung hat?
- 9.3 Q3. Ist es sicher, 644 auf Verzeichnissen zu setzen?
- 9.4 Q4. Gibt es Risiken beim Verwenden von chmod -R?
- 9.5 Q5. Ich bekomme ständig „Permission denied.“ Was sollte ich überprüfen?
- 9.6 Q6. Ich möchte eine Datei teilen, aber Bearbeiten verhindern. Was sollte ich tun?
- 9.7 Q7. Ich habe versehentlich Rechte geändert. Wie kann ich sie wiederherstellen?
- 10 10. Zusammenfassung
1. Einführung
Was sind „Zugriffsrechte“ in Linux?
In Linux‑ und Unix‑ähnlichen Systemen ist die korrekte Verwaltung von Datei‑ und Verzeichniszugriffsrechten äußerst wichtig. Das ist nicht nur aus Sicherheitssicht entscheidend, sondern auch für den stabilen Betrieb des Systems.
Viele Menschen haben sich wahrscheinlich schon gefragt, was Symbole wie -rw-r--r-- bedeuten, wenn sie Dateilisten im Terminal ansehen.
Die Beziehung zwischen chmod und -rw-r–r–
Diese Symbole stellen Dateizugriffsrechte in symbolischer Notation dar. Der Befehl chmod wird verwendet, um diese Rechte zu setzen und zu ändern. Mit anderen Worten: Wenn Sie chmod benutzen, um einer Datei bestimmte Rechte zuzuweisen, wird das Ergebnis als Symbole wie -rw-r--r-- angezeigt.
Zweck dieses Artikels und Zielgruppe
Dieser Artikel erklärt, was -rw-r--r-- tatsächlich bedeutet und wie man es mit chmod setzt oder ändert, auf eine Weise, die für Anfänger leicht verständlich ist. Wir behandeln außerdem Sicherheitsaspekte und praktische Anwendungsbeispiele aus der Praxis.
Der Inhalt richtet sich an alle von Linux‑Anfängern bis zu fortgeschritteneren Benutzern, die sich mit Terminal‑Operationen vertraut machen, mit dem Ziel, praktisches Wissen zu vermitteln, das in realen Arbeitsumgebungen einsetzbar ist.
2. Was ist chmod? (Grundlagen)
Die Rolle des chmod‑Befehls
chmod (ausgesprochen „change mode“) ist ein Befehl, der in Linux‑ und Unix‑ähnlichen Betriebssystemen verwendet wird, um Zugriffsrechte von Dateien und Verzeichnissen zu ändern.
Mit diesem Befehl können Sie flexibel steuern, wer welche Operationen (lesen, schreiben, ausführen) durchführen darf.
Richtige Rechteinstellungen sind nicht nur für Sicherheit, sondern auch zur Vermeidung von Datei‑Sharing‑ und Ausführungsproblemen entscheidend.
Grundsyntax von chmod
chmod [options] [permissions] filename
Zum Beispiel:
chmod 644 sample.txt
Dieser Befehl ändert die Rechte von sample.txt wie folgt:
-rw-r--r-- 1 user group 1234 Apr 13 20:00 sample.txt
- Besitzer (user): Lesen und Schreiben erlaubt (rw-)
- Gruppe: Nur Lesen (r–)
- Andere: Nur Lesen (r–)
Zwei Möglichkeiten, Rechte anzugeben
Es gibt zwei Methoden, Rechte mit chmod anzugeben:
- Numerischer Modus
- Beispiel:
chmod 755 script.sh - Diese Methode weist Rechte mithilfe von Zahlen zu.
- Symbolischer Modus
- Beispiel:
chmod u=rw,g=r,o=r file.txt - Diese Methode verwendet Symbole wie u (user), g (group), o (others) und r/w/x.
Beide Methoden führen zum gleichen Ergebnis. Der numerische Modus ist schnell für Massenänderungen, während der symbolische Modus flexiblere Kontrolle ermöglicht.
Unterschied zwischen chmod und chown
Ein häufig verwechselter Befehl ist chown:
chmod: ändert Zugriffsrechtechown: ändert Dateieigentümer und Gruppe
Da ihre Zwecke unterschiedlich sind, ist es wichtig, die Rolle jedes Befehls klar zu verstehen.
3. Das Verständnis der Bedeutung von -rw-r–r–
Aufbau der Rechte‑Symbole
Wenn Sie ls -l in Linux ausführen, wird die Dateiinformation im folgenden Format angezeigt:
-rw-r--r-- 1 user group 1234 Apr 13 2025 sample.txt
Der linke Teil, -rw-r--r--, stellt die Zugriffsrechte der Datei dar. Dieses zu verstehen, lässt Sie genau wissen, wer was mit der Datei tun kann.
Detaillierte Aufschlüsselung jedes Teils
① Erstes Zeichen: Dateityp
| Symbol | Meaning |
|---|---|
- | Regular file |
d | Directory |
l | Symbolic link |
b | Block device |
c | Character device |
Im Fall von -rw-r--r-- zeigt das führende - eine reguläre Datei an.
② Zeichen 2–10: Rechte (3 Zeichen × 3 Gruppen)
- Besitzer (user) :
rw-Lesen und Schreiben erlaubt; Ausführen nicht erlaubt. - Gruppe :
r--Nur Lesen. - Andere :
r--Nur Lesen.
Das bedeutet, dass nur der Besitzer die Datei bearbeiten kann, während alle anderen sie nur ansehen können.
Numerische Darstellung: Was 644 bedeutet
Linux‑Rechte können auch mit numerischer (oktal) Notation ausgedrückt werden.
Das numerische Gegenstück zu -rw-r--r-- ist 644.
| User Type | Symbolic | Number | Meaning |
|---|---|---|---|
| Owner | rw- | 6 | Read + Write |
| Group | r-- | 4 | Read only |
| Others | r-- | 4 | Read only |
Die numerischen Werte werden wie folgt berechnet:
- Lesen (r) = 4
- Schreiben (w) = 2
- Ausführen (x) = 1
Thus, rw- = 4 + 2 = 6, and each r-- = 4, resulting in 644.
Why This Permission Is Commonly Used
-rw-r--r-- (644) is a very common permission for public files and static web server content such as HTML and CSS.
- Only the owner can modify the file, preventing unintended changes
- Other users can read the file, allowing sharing and public access
When used correctly, this setting balances security and usability.
4. How to Set -rw-r–r– Using chmod (Practical Guide)
Changing Permissions with the chmod Command
File and directory access permissions can be freely changed using the chmod command. For example, if you want to set permissions to -rw-r--r--, simply apply permission 644.
Setting Permissions Using Numeric Mode
Use the format chmod 644 filename.
chmod 644 document.txt
This command changes the permissions of document.txt as follows:
-rw-r--r-- 1 user group 1234 Apr 13 20:00 document.txt
- Owner (user): read and write allowed (rw-)
- Group: read-only (r–)
- Others: read-only (r–)
Setting Permissions Using Symbolic Mode
If you need more flexible control, symbolic mode is useful.
chmod u=rw,g=r,o=r document.txt
This command means:
u=rw: grant read and write permissions to the ownerg=r: grant read-only permission to the groupo=r: grant read-only permission to others
The result is exactly the same as using numeric mode 644.
Important Notes When Applying Permissions to Directories
Unlike files, directories require execute permission (x) to be accessible.
For example, the following setting may restrict access:
chmod 644 my_folder
With this configuration, read permission is granted, but users cannot enter the directory because execute permission is missing.
Correct example:
chmod 755 my_folder
- Owner: read, write, execute
- Group and others: read and execute
This allows other users to list and access files inside the directory.
Recursively Changing Permissions: The -R Option
If you want to change permissions for many files and subdirectories at once, use the -R (recursive) option.
chmod -R 644 my_folder
This applies permission 644 to all files under my_folder. However, this approach comes with important caveats.
5. Checking Permissions with the ls -l Command
How to View File Permissions
To check file and directory permissions in Linux, use the standard ls -l command. This displays detailed information such as permissions, owner, file size, and last modified date.
Basic Usage
ls -l
The output looks like this:
-rw-r--r-- 1 naoya devs 2048 Apr 13 20:00 index.html
Each column has the following meaning:
| Field | Description |
|---|---|
-rw-r--r-- | Permissions |
1 | Number of hard links |
naoya | Owner (user) |
devs | Group |
2048 | File size (bytes) |
Apr 13 20:00 | Last modified date |
index.html | File name |
How to Read the Permission Field
Focus on the -rw-r--r-- portion. It can be broken down as follows:
- First character: file type
-: regular filed: directoryl: symbolic link- Remaining nine characters: permissions (3 × 3 sets)
- Owner:
rw-→ read and write - Group:
r--→ read-only - Others:
r--→ read-only
This tells you that only the owner can edit the file, while others can only read it.
Checking a Specific File
To check permissions for a specific file, specify the file name:
ls -l index.html
This is useful when working in directories containing many files.
Checking Directory Permissions
Directories can also be checked using ls -l. To view the directory itself rather than its contents, use the -d option.
ls -ld my_folder
This displays permission information for my_folder only.
Safe Permission Management
After modifying permissions with chmod, it is recommended to always verify the result using ls -l.
Incorrect settings can lead to security issues or unexpected behavior.
Sie können es auch mit Pipes zum Filtern kombinieren:
ls -l | grep '.sh'
Dies filtert und zeigt nur Shell‑Skript‑Dateien an.
6. Überprüfen und Ändern von Berechtigungen mit GUI‑Tools (Einsteiger‑freundlich)
Eine Option für diejenigen, die sich mit der Befehlszeile unwohl fühlen
Linux wird häufig über das Terminal und die Befehlszeile bedient, aber viele Anfänger empfinden textbasierte Schnittstellen als schwierig oder fehleranfällig.
Für solche Benutzer können Dateiberechtigungen auch mit GUI‑ (Graphical User Interface)‑Tools überprüft und geändert werden.
Verwendung des Ubuntu-Dateimanagers (Nautilus)
Linux‑Distributionen wie Ubuntu enthalten einen Standard‑Dateimanager namens Nautilus, ähnlich dem Windows Explorer.
So prüfen Sie Berechtigungen:
- Rechtsklicken Sie auf die gewünschte Datei oder das Verzeichnis
- Wählen Sie „Eigenschaften“
- Öffnen Sie den Reiter „Berechtigungen“ (die Bezeichnung kann je nach Version variieren)
Was Sie dort tun können:
- Besitzer und Gruppe anzeigen und ändern (Administratorrechte erforderlich)
- Lese‑, Schreib‑ und Ausführungsrechte umschalten
- Änderungen werden sofort übernommen
Anstatt symbolischer Notationen wie rw- oder r-- werden Berechtigungen in klaren Beschreibungen wie „Nur lesen“ oder „Lesen und schreiben“ angezeigt, was sie für Anfänger leicht verständlich macht.
WinSCP (SFTP‑Client für Windows‑Benutzer)
Beim Verbinden von Windows zu einem entfernten Linux‑Server ermöglicht WinSCP die Verwaltung von Berechtigungen über eine GUI.
Schritte:
- Melden Sie sich mit WinSCP am Server an
- Rechtsklicken Sie auf eine Datei und wählen Sie „Eigenschaften“
- Ändern Sie die Berechtigungswerte (z. B. 644) oder verwenden Sie die Kontrollkästchen
- Klicken Sie auf „OK“, um die Änderungen zu übernehmen
Vorteile:
- Berechtigungen können sowohl im numerischen als auch im symbolischen Format angezeigt werden
- Rekursive Berechtigungsänderungen werden über die GUI unterstützt
Hinweise:
- Dateien, die Root‑Rechte benötigen, können ohne sudo‑Berechtigungen nicht geändert werden
WinSCP is a popular free file manager for Windows supporting…

FileZilla (plattformübergreifender SFTP‑Client)
Der plattformübergreifende SFTP‑Client FileZilla, verfügbar für macOS und Linux, ermöglicht ebenfalls das Ändern von Berechtigungen.
Schritte:
- Verbinden Sie sich mit dem Server
- Rechtsklicken Sie auf die gewünschte Datei
- Wählen Sie „Dateiberechtigungen“
- Passen Sie die Berechtigungen über Kontrollkästchen oder numerische Werte an und klicken Sie auf „OK“
Vorteile und Einschränkungen von GUI‑basierten Operationen
Vorteile:
- Für Anfänger weniger fehleranfällig
- Änderungen können sofort visuell bestätigt werden
- Keine Notwendigkeit, die Befehls‑Syntax auswendig zu lernen
Einschränkungen:
- Einige Serverumgebungen erlauben keine Berechtigungsänderungen über GUI‑Tools
- Angezeigte Werte spiegeln nicht immer die tatsächlich angewendeten Berechtigungen wider, daher wird eine Überprüfung mit
ls -lempfohlen
FileZilla - The free FTP solution for both client and server…
7. Wichtige Hinweise und Fehlersuche für chmod
Es funktioniert immer noch nicht – warum?
Selbst nach dem Ändern von Berechtigungen mit chmod können Dateien nicht wie erwartet funktionieren. In den meisten Fällen liegt das an fehlerhaft konfigurierten Berechtigungen oder Missverständnissen. Im Folgenden finden Sie häufige reale Probleme und deren Lösungen.
„Permission denied“-Fehler
Symptom:
bash: ./script.sh: Permission denied
Ursache:
- Die Datei hat keine Ausführungsberechtigung (x)
Lösung:
chmod +x script.sh
Oder im numerischen Modus:
chmod 755 script.sh
Beachten Sie, dass Lese‑ oder Schreibberechtigungen nicht automatisch Ausführungsberechtigungen bedeuten.
Verzeichnisse ohne Ausführungsberechtigung können nicht zugegriffen werden
Das Anwenden von chmod 644 auf ein Verzeichnis kann den Zugriff auf dessen Inhalt verhindern.
Grund:
- Auf Verzeichnissen ist die Ausführungsberechtigung (x) erforderlich, um sie zu betreten und deren Inhalt aufzulisten.
Beispiel:
chmod 644 my_folder
ls my_folder
Dies kann zu einem Fehler führen.
Lösung:
chmod 755 my_folder
Fallstricke rekursiver Änderungen (-R)
Obwohl chmod -R praktisch ist, wendet es dieselben Berechtigungen sowohl auf Dateien als auch auf Verzeichnisse an, was zu unerwarteten Problemen führen kann.
Häufiger Fehler:
chmod -R 644 /var/www/html
Damit werden die Ausführungsberechtigungen von Verzeichnissen entfernt, sodass sie nicht mehr zugänglich sind.
Korrekte Vorgehensweise:
# Apply execute permissions to directories
find /var/www/html -type d -exec chmod 755 {} \;
# Apply file permissions
find /var/www/html -type f -exec chmod 644 {} \;
Eigentümer- und Gruppen-Mismatch
Berechtigungen allein reichen nicht aus; Dateieigentümer und Gruppeneinstellungen sind ebenfalls wichtig.
Zum Beispiel, wenn ein Webserver‑Benutzer wie apache eine Datei lesen muss, der Eigentümer jedoch ein normaler Benutzer ist und andere keine Leseberechtigung haben, wird die Datei nicht korrekt ausgeliefert.
Lösungen:
- Eigentümer ändern:
sudo chown www-data:www-data index.html - Gruppen‑Zugriff gewähren:
chmod 640 index.html(falls die Gruppe passend ist)
Warum chmod 777 gefährlich ist
Manche Benutzer versuchen, Probleme zu beheben, indem sie die Berechtigungen auf 777 setzen, aber das ist extrem gefährlich.
Gründe:
- Jeder kann die Datei lesen, schreiben und ausführen
- Hohes Risiko von Manipulation oder bösartiger Skriptausführung
Empfohlene Best Practices:
- Dateien : 644 oder 600
- Verzeichnisse : 755 oder 700
- Skripte/Binärdateien : 755 (nach Bedarf)
8. Praktische Anwendungsfälle und gängige Szenarien
Wie werden chmod‑Berechtigungen in realen Umgebungen verwendet?
Der Befehl chmod und Berechtigungen wie -rw-r--r-- werden häufig in realen Serveroperationen und Entwicklungsumgebungen verwendet.
Im Folgenden sind mehrere repräsentative Szenarien aufgeführt, die zeigen, wie Berechtigungen in der Praxis angewendet werden.
1. Verwaltung von HTML‑Dateien auf einem Webserver
Szenario:
Beim Veröffentlichen von HTML‑Dateien auf einem Webserver wie Apache oder Nginx ist die typische Berechtigung -rw-r--r-- (644).
chmod 644 index.html
Warum 644?
- Der Eigentümer (Seitenadministrator) benötigt Schreibzugriff
- Der Webserver‑Benutzer (z. B. www-data) benötigt nur Lesezugriff
- Schreibzugriff für andere ist unnötig und unsicher
Diese Konfiguration ermöglicht die sichere Veröffentlichung von Webinhalten nach dem Prinzip der minimalen Rechte.
2. Ausführen‑Berechtigung für Skriptdateien gewähren
Szenario:
Sie haben ein Shell‑Skript backup.sh erstellt, aber die Ausführung schlägt mit dem Fehler „Permission denied“ fehl.
chmod 755 backup.sh
Bedeutung dieser Einstellung:
- Eigentümer: lesen, schreiben, ausführen (rwx)
- Gruppe und andere: lesen und ausführen (rx)
Damit können andere das Skript ausführen, während das Bearbeiten auf den Eigentümer beschränkt bleibt.
3. Zugriff auf sensible Dateien einschränken
Szenario:
Sie verwalten eine Datei secrets.txt mit API‑Schlüsseln oder Passwörtern und möchten verhindern, dass andere darauf zugreifen.
chmod 600 secrets.txt
Bedeutung:
- Eigentümer: nur lesen und schreiben
- Gruppe und andere: kein Zugriff
Dies ist eine kritische Sicherheits‑Best‑Practice. Sensitive Dateien sollten immer mit 600 oder 400 (nur lesbar) verwaltet werden.
4. Sicheres Teilen eines Verzeichnisses
Szenario:
Sie erstellen ein gemeinsames Verzeichnis shared_folder, auf das mehrere Entwickler zugreifen.
chmod 770 shared_folder
Bedeutung:
- Eigentümer und Gruppe: volle Berechtigungen (rwx)
- Andere: kein Zugriff
Indem Sie das Entwicklungsteam als Gruppe zuweisen, ermöglichen Sie sichere und effiziente Zusammenarbeit. Die Gruppenmitgliedschaft kann mit chgrp angepasst werden.
5. Probleme durch Fehlkonfiguration vermeiden
Szenario:
Sie führen versehentlich chmod -R 777 . aus, wodurch alle Dateien für jeden schreibbar werden.
Empfohlene Vorsichtsmaßnahmen:
- Immer
findverwenden, um zwischen Dateien und Verzeichnissen zu unterscheiden - Vorab die Berechtigungen mit
ls -lprüfen - Änderungen zuerst in einer Staging‑Umgebung testen
9. Häufig gestellte Fragen (FAQ)
Q1. Was ist der Unterschied zwischen chmod 644 und -rw-r--r--?
A. Sie stellen dieselbe Berechtigung dar; nur die Schreibweise unterscheidet sich.
chmod 644: numerische Berechtigungsspezifikation-rw-r--r--: symbolische Darstellung, die vonls -langezeigt wird
Q2. Was passiert, wenn eine Datei keine Ausführungsberechtigung hat?
A. Das Ausführen von Skripten oder Binärdateien schlägt fehl.
bash: ./script.sh: Permission denied
Lösung:
chmod +x script.sh
Q3. Ist es sicher, 644 auf Verzeichnissen zu setzen?
A. Im Allgemeinen nein.
Verzeichnisse benötigen Ausführungsrechte (x), um zugänglich zu sein.
Korrekte Einstellung:
chmod 755 directory_name
Q4. Gibt es Risiken beim Verwenden von chmod -R?
A. Ja. Die gleichen Rechte werden auf Dateien und Verzeichnisse angewendet.
chmod -R 644 my_project/
Dies entfernt Ausführungsrechte von Verzeichnissen.
Sichererer Ansatz:
find my_project/ -type d -exec chmod 755 {} \;
find my_project/ -type f -exec chmod 644 {} \;
Q5. Ich bekomme ständig „Permission denied.“ Was sollte ich überprüfen?
A. Überprüfen Sie Folgendes:
- Die Datei hat Ausführungsrechte, wenn sie ausgeführt wird
- Sie sind der Eigentümer oder haben Schreibrechte
- Das Verzeichnis hat Ausführungsrechte
- Sie haben sudo-Berechtigungen, falls erforderlich
Q6. Ich möchte eine Datei teilen, aber Bearbeiten verhindern. Was sollte ich tun?
A. Verwenden Sie Rechte 644 oder 444.
chmod 644 share.txt
- 644: Andere können nur lesen
- 444: Jeder hat nur Lesezugriff
Q7. Ich habe versehentlich Rechte geändert. Wie kann ich sie wiederherstellen?
A. Vergleichen Sie mit einer korrekt konfigurierten Datei.
ls -l /path/to/correct_file
Wenden Sie die Rechte mit chmod erneut an. Idealweise dokumentieren Sie die Standardrechte für Ihr Projekt.
10. Zusammenfassung
Warum das Verständnis von chmod und Rechten wichtig ist
Dieser Artikel hat den chmod-Befehl und die Bedeutung symbolischer Rechte wie -rw-r--r-- erklärt, die in Linux- und Unix-ähnlichen Systemen weit verbreitet sind.
Diese Konzepte sind essenziell, um System-Sicherheit, betriebliche Stabilität und genaues Dateifreigabe zu gewährleisten.
Wichtige Erkenntnisse
chmodändert Zugriffsrechte für Dateien und Verzeichnisse-rw-r--r--bedeutet, der Eigentümer kann lesen und schreiben, andere können nur lesen- Numerische (
644) und symbolische (-rw-r--r--) Darstellungen sind äquivalent - Rechte können mit numerischen oder symbolischen Modi gesetzt werden
ls -lwird verwendet, um Rechte zu überprüfen- GUI-Tools wie Nautilus, WinSCP und FileZilla können Rechte ebenfalls verwalten
- Falsche Rechte verursachen oft „Permission denied“-Fehler
- Es gibt immer einen Grund hinter gängigen Rechtermustern
Die „Beste“ Berechtigung hängt vom Kontext ab
Es gibt keine universelle Rechteeinstellung, die für alle Fälle passt.
Rechte sollten immer basierend auf Zweck, Benutzern und erforderlichem Sicherheitsniveau gewählt werden.
Abschließender Rat
Während Rechte anfangs komplex wirken mögen, ermöglicht das Meistern von chmod, Probleme proaktiv zu verhindern und Systeme sicher zu betreiben.
Fragen Sie sich immer:
Wer sollte auf diese Datei zugreifen und zu welchem Zweck?
Diese Perspektive zu behalten, hilft Ihnen, sichere und zuverlässige Linux-Umgebungen aufzubauen.





