Alle Benutzer (einschließlich des Superusers) haben ihr eigenes Home-Verzeichnis, in dem alle private Daten, wie Dokumente, Lesezeichen oder E-Mails, gespeichert werden. Systemverzeichnisse mit zentralen Konfigurationsdateien oder ausführbaren Dateien können nur vom Superuser geändert werden. Weitere Informationen über Zugriffsrechte und deren Anpassung an Ihre Anforderungen finden Sie unter Abschnitt 8.5, „Bearbeiten von Dateiberechtigungen“.
In Linux können Sie wählen, ob Sie Dateien und Ordner mit einem Dateimanager verwalten möchten oder die traditionelle Verwendung der Kommandozeile bevorzugen. Die letztgenannte Methode ist häufig schneller, erfordert aber umfassendere Kenntnis mehrerer Befehle zum Auflisten, Erstellen, Löschen oder Bearbeiten von Dateien und deren Eigenschaften. Weitere Informationen über Befehle zur Manipulation von Dateien finden Sie unter Abschnitt 8.3, „Arbeiten mit Dateien und Verzeichnissen“. Ein Datei-Manager bietet eine grafische und intuitivere Methode, diese Aufgaben zu erfüllen. Weitere Informationen über die Datei-Manager von GNOME und KDE finden Sie unter Section “Managing Folders and Files with Nautilus” (Chapter 1, Getting Started with the GNOME Desktop, ↑GNOME User Guide) und Chapter Managing Folders and Files with Konqueror (↑KDE User Guide). Egal, für welche Methode Sie sich entscheiden: Die folgenden Abschnitte vermitteln Ihnen einige Grundlagen des Dateisystems und bieten einen Überblick über die Standard-Verzeichnisstruktur in Linux.
Unter Linux befinden sich alle Dateien und Verzeichnisse in einer baumartigen Struktur. Das Verzeichnis der höchsten Ebene wird als Dateisystem- root oder einfach mit /
bezeichnet (nicht zu verwechseln mit dem Benutzer root
). Das Gegenstück zu /
in einem Windows-System wäre wahrscheinlich C:\
. Alle anderen Verzeichnisse in Linux sind über das root-Verzeichnis zugreifbar und in einer hierarchischen Struktur angeordnet.
Die folgende Liste führt die Schlüsselfunktionen des Linux-Dateisystems auf und weist auf einige der Hauptunterschiede zwischen dem Linux- und dem Windows-/DOS-Dateisystem hin:
Im Unterschied zu Windows verwendet Linux zur Trennung der Komponenten eines Pfadnamens keine umgekehrten Schrägstriche, sondern normale Schrägstriche. Beispielsweise können die privaten Daten von Benutzern in Windows unter C:\\Eigene Dateien\\Briefe
gespeichert sein, wohingegen sie in Linux unter /home/
gespeichert wären.
Benutzername
/Briefe
Linux verwendet keine Laufwerksbuchstaben wie Windows. Vom bloßen Aussehen eines Pfadnamens in Linux können Sie nicht erschließen, ob Sie eine Partition, ein Laufwerk/Gerät, ein Netzwerkgerät oder ein „gewöhnliches“ Verzeichnis ansprechen.
Ein weiterer wesentlicher Unterschied zwischen Windows/DOS und Linux ist das Konzept des Ein- und Aushängens von Partitionen, Laufwerken oder Verzeichnissen. Windows erkennt Partitionen und Laufwerke während des Bootvorgangs und weist ihnen einen Laufwerksbuchstaben zu. In Linux sind Partitionen oder Laufwerke gewöhnlich in der Verzeichnisstruktur nur dann sichtbar, wenn sie eingehängt, d. h. an einer bestimmten Stelle in der Verzeichnisstruktur in das Dateisystem integriert sind. Als gewöhnlicher Benutzer können Sie nur dann auf Daten auf einer Partition oder einem Gerät zugreifen, wenn diese(s) eingehängt ist. Aber keine Sorge – in der Regel brauchen Sie keine Partitionen oder Geräte manuell einzuhängen. Während der Installation Ihres Systems können Sie Partitionen definieren, die automatisch beim Systemstart eingehängt werden sollen. Wechselmedien werden gewöhnlich ebenfalls durch Ihr System erkannt und automatisch eingehängt: Die Desktop-Umgebungen wie KDE oder GNOME informieren Sie ggf. über neue Geräte.
Das Konzept des Ein- und Aushängens mag auf den ersten Blick kompliziert oder mühsam erscheinen, ermöglicht jedoch große Flexibilität: So können Sie beispielsweise ein Verzeichnis mühelos von einem anderen Computer aus über das Netzwerk einhängen und dieses Verzeichnis so bearbeiten, als würde es sich auf Ihrem lokalen Computer befinden.
Linux unterscheidet im Dateisystem zwischen Groß- und Kleinbuchstaben. So ist es für Linux ein Unterschied, ob Sie eine Datei test.txt
, TeST.txt
oder Test.txt
nennen. Dies gilt auch für Verzeichnisse: Der Zugriff auf ein Verzeichnis namens Briefe
ist mit briefe
nicht möglich.
Anders als in Windows können Dateien in Linux eine Dateinamenserweiterung wie .txt
aufweisen, müssen jedoch nicht. Für Neulinge ist es am Anfang der Arbeit in einer Shell manchmal schwierig, zwischen Dateien und Ordnern zu unterscheiden, je nachdem, welchen Befehl sie zum Auflisten eines Verzeichnisinhalts verwenden. Weitere Informationen über einige grundlegende Shell-Befehle erhalten Sie unter Kapitel 8, Shell-Grundlagen. Wenn Sie die grafischen Dateimanager in KDE oder GNOME verwenden (siehe Section “Managing Folders and Files with Nautilus” (Chapter 1, Getting Started with the GNOME Desktop, ↑GNOME User Guide) und Chapter Managing Folders and Files with Konqueror (↑KDE User Guide)), werden Dateien und Ordner abhängig von der gewählten Ansicht durch verschiedene Symbole dargestellt.
Ähnlich wie Windows unterscheidet auch Linux zwischen „normalen“ Dateien und verborgenen Dateien, bei denen es sich häufig um Konfigurationsdateien handelt, auf die Sie gewöhnlich als normaler Benutzer nicht zugreifen und die Sie nicht anzeigen möchten. Unter Linux werden verborgene Dateien durch einen vorangestellten Punkt gekennzeichnet (beispielsweise .hiddenfile
). Um auf verborgene Dateien zuzugreifen, können Sie die Ansicht in den Dateimanagern wechseln (siehe Chapter Managing Folders and Files with Konqueror (↑KDE User Guide)) oder ein bestimmtes Kommando in der Shell verwenden (siehe Abschnitt 8.2.2, „Verwenden von Befehlen mit Optionen“) .
Da Linux ein Mehrbenutzersystem ist, ist jede Datei in einem Linux-Dateisystem einem Benutzer oder einer Gruppe zughörig. Nur der Eigentümer einer Datei oder eines Verzeichnisses (oder natürlich root
) kann anderen Benutzern die Zugriffsberechtigung erteilen. Unter Linux wird grundsätzlich zwischen drei unterschiedlichen Arten von Zugriffsberechtigung unterschieden: Schreibberechtigung, Leseberechtigung und Ausführberechtigung. Sie können nur auf eine Datei oder einen Ordner zugreifen, wenn Sie mindestens über die entsprechende Leseberechtigung verfügen. Es gibt mehrere Möglichkeiten, die Zugriffsberechtigungen für Dateien und Ordner zu ändern: Entweder traditionell über die Shell oder mithilfe der Dateiverwaltungsfunktion Ihres Desktop (siehe Section “Changing Access Permissions” (Chapter 4, Managing Folders and Files with Konqueror, ↑KDE User Guide)). Wenn Sie über root
-Privilegien verfügen, können Sie auch den Eigentümer und die Gruppe für eine Datei oder einen Ordner ändern. Entsprechende Informationen über die Vorgehensweise in einer Shell finden Sie unter Abschnitt 8.5, „Bearbeiten von Dateiberechtigungen“.
Ausführlichere Informationen über Dateisystemberechtigungen finden Sie unter Abschnitt 7.3, „Dateizugriffsberechtigungen“. Neben dem herkömmlichen Berechtigungskonzept für Dateisystemobjekte gibt es auch Erweiterungen, die Berechtigungen flexibler handhaben. Weitere Informationen dazu finden Sie unter Kapitel Zugriffssteuerungslisten unter Linux (↑Referenz).
Die folgende Tabelle bietet eine kurze Übersicht über die wichtigsten Verzeichnisse der höheren Ebene auf einem Linux-System. Ausführlichere Informationen über die Verzeichnisse und wichtige Unterverzeichnisse erhalten Sie in der folgenden Liste.
Tabelle 7.1. Überblick über eine Standardverzeichnisstruktur
Verzeichnis |
Inhalt |
---|---|
Root-Verzeichnis - Startpunkt der Verzeichnisstruktur. | |
Grundlegende binäre Dateien, z. B. Befehle, die der Systemadministrator und normale Benutzer brauchen. Enthält gewöhnlich auch die Shells, z. B. Bash. | |
Statische Dateien des Bootloaders. | |
Erforderliche Dateien für den Zugriff auf Host-spezifische Geräte. | |
Host-spezifische Systemkonfigurationsdateien. | |
Enthält die Home-Verzeichnisse aller Benutzer, die ein Konto auf dem System haben. Nur das Home-Verzeichnis von | |
Grundlegende freigegebene Bibliotheken und Kernel-Module. | |
Einhängepunkte für Wechselmedien. | |
Einhängepunkt für das temporäre Einhängen eines Dateisystems. | |
Add-On-Anwendungssoftwarepakete. | |
Home-Verzeichnis für den Superuser | |
Grundlegende Systembinärdateien. | |
Daten für Dienste, die das System bereitstellt. | |
Temporäre Dateien. | |
Sekundäre Hierarchie mit Nur-Lese-Daten. | |
Variable Daten wie Protokolldateien.. | |
Nur verfügbar, wenn sowohl Microsoft Windows* als auch Linux auf Ihrem System installiert ist. Enthält die Windows-Daten. |
Die folgende Liste bietet detailliertere Informationen und bietet einige Beispiele für die Dateien und Unterverzeichnisse, die in den Verzeichnissen gefunden werden können:
/bin
Enthält die grundlegenden Shell-Befehle, die root
und andere Benutzer verwenden können. Zu diesen Kommandos gehören ls, mkdir, cp, mv, rm und rmdir. /bin
enthält auch Bash, die Standard-Shell in openSUSE.
/boot
Enthält Daten, die zum Booten erforderlich sind, z. B. den Bootloader, den Kernel und andre Daten, die verwendet werden, bevor der Kernel mit der Ausführung von Programmen im Benutzermodus beginnt.
/dev
Enthält Gerätedateien, die Hardware-Komponenten darstellen.
/etc
Enthält lokale Konfigurationsdateien, die den Betrieb von Programmen wie das X Window System steuern können. Das Unterverzeichnis /etc/init.d
enthält Skripten, die während des Bootvorgangs ausgeführt werden.
/home/Benutzername
Enthält die privaten Daten aller Benutzer, die ein Konto auf dem System haben. Die Dateien, die hier gespeichert sind, können nur durch den Besitzer oder den Systemadministrator geändert werden. Standardmäßig befinden sich hier Ihr E-Mail-Verzeichnis und Ihre persönliche Desktopkonfiguration in Form von verborgenen Dateien und Verzeichnissen. KDE-Benutzer finden die persönlichen Konfigurationsdaten für den Desktop unter .kde
bzw. .kde4
, GNOME-Benutzer unter .gconf
. Informationen zu verborgenen Dateien finden Sie unter Abschnitt 7.2.1, „Wichtigste Merkmale“.
Home-Verzeichnis in einer Netzwerkumgebung | |
---|---|
Wenn Sie in einer Netzwerkumgebung arbeiten, kann Ihr Home-Verzeichnis einem von |
/lib
Enthält grundlegende freigegebene Bibliotheken, die zum Booten des Systems und zur Ausführung der Befehle im Root-Dateisystem erforderlich sind. Freigegebene Bibliotheken entsprechen in Windows DLL-Dateien.
/media
Enthält Einhängepunkte für Wechselmedien, z. B. CD-ROMs, USB-Sticks und Digitalkameras (sofern sie USB verwenden). Unter
/media sind beliebige Laufwerktypen gespeichert, mit Ausnahme der Festplatte Ihres Systems. Sobald Ihr Wechselmedium eingelegt bzw. mit dem System verbunden und eingehängt wurde, können Sie von hier darauf zugreifen.
/mnt
Dieses Verzeichnis bietet einen Einhängepunkt für ein temporär eingehängtes Dateisystem. root
kann hier Dateisysteme einhängen.
/opt
Reserviert für die Installation zusätzlicher Software. Hier finden Sie Software- und größere Addon-Programmpakete. KDE3 befindet sich hier, während KDE4 und GNOME nach /usr
verschoben wurden.
/root
Home-Verzeichnis für den Benutzer root
. Hier befinden sich persönliche Daten von " root
".
/sbin
Wie durch das s
angegeben, enthält dieses Verzeichnis Dienstprogramme für den Superuser. /sbin
enthält Binärdateien, die zusätzlich zu den Dateien in /bin
wesentlich für Booten und Wiederherstellen des Systems erforderlich sind.
/srv
Enhält Daten für Dienste, die das System bereitstellt, z. B. FTP und HTTP.
/tmp
Dieses Verzeichnis wird von Programmen benutzt, die eine temporäre Speicherung von Dateien verlangen.
/usr
/usr
hat nichts mit Benutzern ("user") zu tun, sondern ist das Akronym für UNIX-Systemressourcen. Die Daten in /usr
sind statische, schreibgeschützte Daten, die auf verschiedenen Hosts freigegeben sein können, die den Filesystem Hierarchy Standard (FHS) einhalten. Dieses Verzeichnis enthält alle Anwendungsprogramme und bildet eine sekundäre Hierarchie im Dateisystem. Dort befinden sich auch KDE4 und GNOME. /usr
enthält eine Reihe von Unterverzeichnissen, z. B. /usr/bin
, /usr/sbin
, /usr/local
und /usr/share/doc
.
/usr/bin
Enthält Programme, die für den allgemeinen Zugriff verfügbar sind.
/usr/sbin
Enthält Programme, die für den Systemadministrator reserviert sind, z. B. Reparaturfunktionen.
/usr/local
In diesem Verzeichnis kann der Systemadministrator lokale, verteilungsunabhängige Erweiterungen installieren.
/usr/share/doc
Enthält verschiedene Dokumentationsdateien und die Versionshinweise für Ihr System. Im Unterverzeichnis manual
befindet sich eine Online-Version dieses Handbuchs. Wenn mehrere Sprachen installiert sind, kann dieses Verzeichnis die Handbücher für verschiedene Sprachen enthalten.
Im Verzeichnis packages
befindet sich die Dokumentation zu den auf Ihrem System installierten Software-Paketen. Für jedes Paket wird ein Unterverzeichnis /usr/share/doc/packages/
angelegt, das häufig README-Dateien für das Paket und manchmal Beispiele, Konfigurationsdateien oder zusätzliche Skripten umfasst.Paketname
Wenn HOWTOs (Verfahrensbeschreibungen) auf Ihrem System installiert sind, enhält /usr/share/doc
auch das Unterverzeichnis howto
mit zusätzlicher Dokumentation zu vielen Aufgaben bei Setup und Betrieb von Linux-Software.
/var
Während /usr
statische, schreibgeschützte Daten enthält, ist /var
für Daten, die während des Systembetriebs geschrieben werden und daher variabel sind, z. B. Protokolldateien oder Spooling-Daten. Beispielsweise befinden sich die Protokolldateien Ihres Systems in /var/log/messages
(nur für "root
" zugreifbar).
/windows
Nur verfügbar, wenn sowohl Microsoft Windows als auch Linux auf Ihrem System installiert ist. Enthält die Windows-Daten, die auf der Windows-Partition Ihres Systems verfügbar sind. Ob Sie die Daten in diesem Verzeichnis bearbeiten können, hängt vom Dateisystem ab, das Ihre Windows-Partition verwendet. Falls es sich um FAT32 handelt, können Sie die Dateien in diesem Verzeichnis öffnen und bearbeiten. In einem NTFS-Dateisystem können Sie jedoch Ihre Windows-Dateien nur von Linux aus lesen, aber nicht ändern. Weitere Informationen dazu finden Sie unter Abschnitt 11.3, „Zugreifen auf Dateien auf verschiedenen Betriebssystemen am selben Computer“.