Grundlegende Konzepte

Inhaltsverzeichnis

6.1. Benutzerkonzept
6.2. Das Linux-Dateisystem
6.3. Dateizugriffsberechtigungen

Zusammenfassung

Falls dies Ihre erste Begegnung mit einem Linux-System ist, möchten Sie wahrscheinlich etwas über die grundlegenden Linux-Konzepte erfahren, bevor Sie zu arbeiten beginnen. Die grafischen Bedienoberflächen von Linux, Mac OS* und Windows* enthalten ähnliche Desktop-Komponenten. Es ist also ziemlich einfach, von einer grafischen Bedienoberfläche zu einer anderen zu wechseln. Wenn Sie jedoch das zugrundeliegende System betrachten, bemerken Sie rasch einige Unterschiede.

Die folgenden Abschnitte sollen Sie durch die ersten Schritte mit Ihrem Linux-System begleiten und Linux-"Neulingen" dabei helfen, sich mit ihrem neuen Betriebssystem vertraut zu machen. Sie werden das Benutzerkonzept von Linux, die Struktur des Linux-Dateisystems (wo sich was in der Verzeichnisstruktur befindet) und den Umgang mit Zugriffsberechtigungen auf Dateien und Verzeichnisse kennenlernen, die eine wesentliche Funktion in Linux darstellen.

Benutzer, die schon mit Mac OS gearbeitet haben, erkennen wahrscheinlich, dass die in den folgenden Abschnitten erläuterten Konzepte denen sehr ähnlich sind, die sie bereits von Mac OS kennen. Windows-Benutzer erkennen möglicherweise deutliche Unterschiede, die beachtet werden sollten.

Benutzerkonzept

Linux wurde von Anfang an als Mehrbenutzer-System konzipiert: An einem Computer können beliebig viele Benutzer gleichzeitig arbeiten. Diese Benutzer können eine Verbindung zum System über verschiedene Terminals oder Netzwerkverbindungen herstellen. Bevor Benutzer eine Sitzung starten können, müssen Sie sich gewöhnlich beim System anmelden. Persönliche Informationen und die individuelle Desktop-Konfiguration werden für jeden Benutzer separat gespeichert.

Unterschiedliche Benutzerrollen

Zur Unterscheidung der Benutzer, die an einem Rechner arbeiten, dienen unter Linux unterschiedliche Arten von Benutzerrollen: Sie können sich bei einem Linux-Rechner als "normaler" Benutzer oder als Superuser (Administrator) anmelden (unter Linux traditionell als root bezeichnet). Der Superuser verfügt über Privilegien, die ihn zum Zugriff auf alle Bereiche des Systems und zur Ausführung von administrativen Aufgaben berechtigen. Er kann uneingeschränkt Änderungen am System vornehmen und unbegrenzt auf alle Dateien zugreifen. Wenn Sie als normaler Benutzer angemeldet sind, fehlen Ihnen diese Privilegien. Benutzer und root kann natürlich dieselbe physische Person darstellen, die in unterschiedlichen Rollen agiert.

Der Benutzer root wird immer standardmäßig bei der Installation auf Ihrem Linux-System angelegt, daher müssen Sie für root ein Passwort eingeben. Welche anderen Benutzer sich bei Ihrem System anmelden können, hängt von der Methode der Authentifizierung ab, die bei der Installation gewählt wurde (siehe Abschnitt 1.11, „Erstellen von neuen Benutzern“).

Für Ihre tägliche Arbeit melden Sie sich gewöhnlich als normaler Benutzer bei Ihrem System an. Das Ausführen von einigen administrativen Aufgaben oder bestimmten Programmen wie YaST erfordert root-Berechtigungen. Sie können einfach von Ihrem normalen Konto zu root und dann wieder zurück in Ihr normales Benutzerkonto wechseln, wenn die administrative Aufgabe erledigt ist. Informationen über die Vorgehensweise in einer Shell finden Sie unter Abschnitt 7.4, „Umschalten zu Root“. Wenn Sie mit einer grafischen Bedienoberfläche arbeiten, werden Sie gewöhnlich bei Bedarf aufgefordert, das root-Passwort einzugeben. Wenn Sie die Anwendung schließen, für die root-Berechtigungen erforderlich waren, werden Ihnen die root-Privilegien entzogen: Sie wechseln automatisch wieder zu Ihrem normalen Benutzerkonto.

Dieses Konzept wirkt vielleicht anfangs nicht überzeugend, sorgt aber für größere Sicherheit. Ein Benutzer ohne root-Privilegien kann nicht das gesamte System beschädigen. Alle Schäden sind strikt begrenzt auf das eigene Benutzerkonto und die Benutzerdaten. Eine mit root-Privilegien ausgeführte Operation kann das ganze System beschädigen. Wer ein laufendes Linux-System beschädigen will, muss zunächst über root-Privilegien verfügen. Daher ist es erheblich schwieriger, Viren für Linux-Systeme zu programmieren. Sie müssen zuerst die root-Barriere überwinden.

Gruppen

Jeder Benutzer in einem Linux-System gehört mindestens einer Gruppe an. Eine Gruppe kann, in diesem Fall, als eine Reihe verbundener Benutzer mit bestimmten gemeinsamen Privilegien definiert werden. Gruppen werden gewöhnlich nach ihren funktionalen Rollen oder den Daten und Ressourcen definiert, auf die Gruppenmitglieder zugreifen müssen. Wenn ein neues Benutzerkonto auf Ihrem System angelegt wird, wird dieser Benutzer automatisch einer primären Standardgruppe zugewiesen. Der Systemadministrator kann bei Bedarf diese primäre Gruppe ändern oder den Benutzer einer zusätzlichen Gruppe zuteilen.

Abbildung 6.1. Gruppenmitgliedschaft für einen Benutzer in YaST

Gruppenmitgliedschaft für einen Benutzer in YaST

Das Linux-Dateisystem

Alle Benutzer, einschließlich des Superusers, haben ihr eigenes Home-Verzeichnis, in dem alle privaten 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 7.5, „Bearbeiten von Dateiberechtigungen“.

In Linux können Sie wählen, ob Sie Dateien und Ordner mit einem Dateimanager oder mithilfe der Kommandozeile, der traditionellen Methode, verwalten möchten. Die letztgenannte Methode ist häufig schneller, erfordert aber umfassendere Kenntnis mehrerer Kommandos zum Auflisten, Erstellen, Löschen oder Bearbeiten von Dateien und deren Eigenschaften. Weitere Informationen über Kommandos zur Manipulation von Dateien finden Sie unter Abschnitt 7.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 2, Working with Your Desktop, ↑GNOME User Guide) und Section “Using Dolphin File Manager” (Chapter 2, Working with Your Desktop, ↑KDE User Guide). Die folgenden Abschnitte vermitteln Ihnen einige Grundlagen des Dateisystems und bieten einen Überblick über die Standard-Verzeichnisstruktur in Linux.

Wichtigste Merkmale

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:

Angeben von Pfaden

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/Benutzername/Briefe gespeichert wären.

Partitionen, Laufwerke/Geräte und Verzeichnisse

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.

Einhängen und Aushängen

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.

Abbildung 6.2. Automatische Erkennung eines USB-Sticks in KDE

Automatische Erkennung eines USB-Sticks in KDE

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.

Groß-/Kleinschreibung

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.

Dateinamenserweiterungen

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, welches Kommando sie zum Auflisten eines Verzeichnisinhalts verwenden. Weitere Informationen über einige grundlegende Shell-Kommandos erhalten Sie unter Kapitel 7, Shell-Grundlagen. Wenn Sie die grafischen Dateimanager in KDE oder GNOME verwenden (siehe Section “Managing Folders and Files with Nautilus” (Chapter 2, Working with Your Desktop, ↑GNOME User Guide) und Section “Using Dolphin File Manager” (Chapter 2, Working with Your Desktop, ↑KDE User Guide)), werden Dateien und Ordner abhängig von der gewählten Ansicht durch verschiedene Symbole dargestellt.

Abbildung 6.3. Dateien und Ordner in der KDE-Dateiverwaltung

Dateien und Ordner in der KDE-Dateiverwaltung

Verborgene Dateien

Ä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 Section “Using Dolphin File Manager” (Chapter 2, Working with Your Desktop, ↑KDE User Guide)) oder ein bestimmtes Kommando in der Shell verwenden (siehe Abschnitt 7.2.2, „Verwenden von Kommandos mit Optionen“).

Dateisystemberechtigungen

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. 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 7.5, „Bearbeiten von Dateiberechtigungen“.

Ausführlichere Informationen über Dateisystemberechtigungen finden Sie unter Abschnitt 6.3, „Dateizugriffsberechtigungen“. Neben dem herkömmlichen Berechtigungskonzept für Dateisystemobjekte gibt es auch Erweiterungen, die Berechtigungen flexibler handhaben. Weitere Informationen dazu finden Sie unter Chapter Access Control Lists in Linux (↑Security Guide).

Die Verzeichnisstruktur

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 6.1. Überblick über eine Standardverzeichnisstruktur

Verzeichnis

Inhalt

/

Root-Verzeichnis - Startpunkt der Verzeichnisstruktur.

/bin

Grundlegende binäre Dateien, z. B. Kommandos, die der Systemadministrator und normale Benutzer brauchen. Enthält gewöhnlich auch die Shells, z. B. Bash.

/boot

Statische Dateien des Bootloaders.

/dev

Erforderliche Dateien für den Zugriff auf Host-spezifische Geräte.

/etc

Host-spezifische Systemkonfigurationsdateien.

/home

Enthält die Home-Verzeichnisse aller Benutzer mit einem Konto im System. Das Home-Verzeichnis von root befindet sich jedoch nicht unter /home, sondern unter /root.

/lib

Grundlegende freigegebene Bibliotheken und Kernel-Module.

/media

Einhängepunkte für Wechselmedien.

/mnt

Einhängepunkt für das temporäre Einhängen eines Dateisystems.

/opt

Add-on-Anwendungssoftwarepakete.

/root

Home-Verzeichnis für den Superuser root.

/sbin

Grundlegende Systembinärdateien.

/srv

Daten für Dienste, die das System bereitstellt.

/tmp

Temporäre Dateien.

/usr

Sekundäre Hierarchie mit Nur-Lese-Daten.

/var

Variable Daten wie Protokolldateien.

/windows

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 einige Beispiele für die Dateien und Unterverzeichnisse, die in den Verzeichnissen verfügbar sind:

/bin

Enthält die grundlegenden Shell-Kommandos, 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, wie zum Beispiel den Bootloader, den Kernel und andere 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 .kde4, GNOME-Benutzer unter .gconf. Informationen zu verborgenen Dateien finden Sie unter Abschnitt 6.2.1, „Wichtigste Merkmale“.

[Note]Home-Verzeichnis in einer Netzwerkumgebung

Wenn Sie in einer Netzwerkumgebung arbeiten, kann Ihr Home-Verzeichnis einem von /home abweichenden Verzeichnis zugeordnet sein.

/lib

Enthält die grundlegenden freigegebenen Bibliotheken, die zum Booten des Systems und zur Ausführung der Kommandos im Root-Dateisystem erforderlich sind. Freigegebene Bibliotheken entsprechen in Windows DLL-Dateien.

/media

Enthält Einhängepunkte für Wechselmedien, wie zum Beispiel 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 von Drittanbieter-Software. Hier finden Sie optionale Softwareprogramme und größere Add-on-Programmpakete.

/root

Home-Verzeichnis für den Benutzer root. Hier befinden sich die persönlichen Daten von "root".

/sbin

Wie durch das s angegeben, enthält dieses Verzeichnis Dienstprogramme für den Superuser. /sbin enthält die Binärdateien, die zusätzlich zu den Binärdateien in /bin zum Booten und Wiederherstellen des Systems unbedingt 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.

[Important]Bereinigen des temporären Verzeichnisses /tmp bei Systemstart

Im Verzeichnis /tmp gespeicherte Daten werden nicht zwingend bei einem Neustart des Systems beibehalten. Dies hängt zum Beispiel von den Einstellungen unter /etc/sysconfig/cron ab.

/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 System-Daemons und Programme, die für den Systemadministrator reserviert und zum Starten des Systems nicht zwingend erforderlich sind.

/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 Handbuch 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 Pakete finden Sie die Dokumentation zu den auf Ihrem System installierten Software-Paketen. Für jedes Paket wird ein Unterverzeichnis /usr/share/doc/packages/Paketname angelegt, das häufig README-Dateien für das Paket und manchmal Beispiele, Konfigurationsdateien oder zusätzliche Skripten umfasst.

Wenn HOWTOs (Verfahrensbeschreibungen) auf Ihrem System installiert sind, enhält /usr/share/doc auch das Unterverzeichnis howto mit zusätzlicher Dokumentation zu vielen Aufgaben im Zusammenhang mit der Einrichtung und Ausführung 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. Eine Übersicht über die wichtigsten Protokolldateien finden Sie unter /var/log/. Weitere Informationen stehen unter Tabelle 9.1, „Protokolldateien“ zur Verfügung.

/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. Für NTFS unterstützt openSUSE auch den Schreibzugriff. Die Funktionalität des Treibers für das NTFS-3g-Dateisystem ist jedoch eingeschränkt. Weitere Informationen dazu finden Sie unter Abschnitt „Zugreifen auf Dateien auf verschiedenen Betriebssystemen am selben Computer   “ (Kapitel 34, Kopieren und Freigeben von Dateien, ↑Referenz).

Dateizugriffsberechtigungen

In Linux gehören Objekte wie Dateien, Ordner oder Prozesse generell dem Benutzer, der sie erstellt oder initiiert hat. Für diese Regel gelten jedoch einige Ausnahmen. Weitere Informationen zu den Ausnahmen finden Sie unter Chapter Access Control Lists in Linux (↑Security Guide). Die Gruppe, die mit einer Datei oder einem Ordner verbunden ist, hängt von der primären Gruppe ab, der ein Benutzer beim Erstellen des Objekts angehört.

Wenn Sie eine neue Datei oder ein neues Verzeichnis anlegen, werden die anfänglichen Zugriffsrechte für dieses Objekt nach einem vordefinierten Schema festgelegt. Als Eigentümer einer Datei bzw. eines Verzeichnisses können Sie die Zugriffsberechtigungen für dieses Objekt ändern. Sie können beispielsweise andere Benutzer daran hindern, auf Dateien mit vertraulichen Daten zuzugreifen. Andererseits können Sie den Mitgliedern Ihrer Gruppe oder anderen Benutzern im Bedarfsfall Schreib-, Lese- und Ausführrechte für bestimmte Dateien in Ihrem Besitz erteilen. Als root können Sie auch den Eigentümer von Dateien oder Ordnern ändern.

Berechtigungen für Benutzer, Gruppe und andere

Für jedes Dateiobjekt sind unter Linux drei Berechtigungsgruppen definiert. Diese Gruppen enthalten die Berechtigungen zum Lesen, Schreiben und Ausführen für den Eigentümer der Datei, die Gruppe und andere Benutzer. Sie können die Zugriffsberechtigungen für eine Datei oder einen Ordner in den Dateimanagern Ihres Desktops oder in einer Shell ändern (siehe Abschnitt 7.5, „Bearbeiten von Dateiberechtigungen“).

Abbildung 6.4. Dateizugriffsberechtigungen in der KDE-Dateiverwaltung

Dateizugriffsberechtigungen in der KDE-Dateiverwaltung

Das folgende Beispiel zeigt ein Beispiel der Ausgabe für das Kommando ls -l in einer Shell. Dieses Kommando listet den Inhalt eines Verzeichnisses auf und zeigt die Details für jede Datei und jeden Ordner in diesem Verzeichnis.

Beispiel 6.1. Zugriffsrechte für Dateien und Ordner

-rw-r----- 1 tux users      0 2006-06-23 16:08 checklist.txt
-rw-r--r-- 1 tux users  53279 2006-06-21 13:16 gnome_quick.xml
-rw-rw---- 1 tux users      0 2006-06-23 16:08 index.htm
-rw-r--r-- 1 tux users  70733 2006-06-21 09:35 kde-start.xml
-rw-r--r-- 1 tux users  47896 2006-06-21 09:46 kde_quick.xml
drwxr-xr-x 2 tux users     48 2006-06-23 16:09 local
-r-xr-xr-x 1 tux users 624398 2006-06-23 15:43 tux.jpg

Wie aus der dritten Spalte hervorgeht, gehören alle Objekte dem Benutzer tux. Sie sind der Gruppe users zugewiesen, die die primäre Gruppe ist, welcher der Benutzer tux angehört. Zum Ermitteln der Zugriffsberechtigungen muss die erste Spalte der Liste näher geprüft werden. Sehen wir uns die Datei kde-start.xml an:

Typ

Benutzerberechtigungen

Gruppenberechtigungen

Berechtigungen für andere

-

rw-

r--

r--

Die erste Spalte der Liste besteht aus einem vorangestellten Zeichen, auf das neun in Dreierblöcke gegliederte Zeichen folgen. Das vorangestellte Zeichen gibt Aufschluss über den Dateityp des Objekts: In diesem gibt der Bindestrich () an, dass es sich bei kde-start.xml um eine Datei handelt. Wenn Sie stattdessen das Zeichen d finden, besagt dies, dass das Objekt ein Verzeichnis ist (wie local im obigen Beispiel Beispiel 6.1, „Zugriffsrechte für Dateien und Ordner“.

Die nächsten drei Blöcke zeigen die Zugriffsberechtigungen für den Eigentümer, die Gruppe und andere Benutzer (von links nach rechts). Jeder Block folgt demselben Muster: Die erste Position zeigt die Leseberechtigung (r), die nächste Position zeigt die Schreibberechtigung (w) und die letzte Position zeigt die Ausführungsberechtigung (x). Eine fehlende Berechtigung wird durch - gekennzeichnet. Im obigen Beispiel verfügt der Eigentümer der Datei kde-start.xml über Lese- und Schreibzugriff auf die Datei, kann die Datei aber nicht ausführen. Die Gruppe users kann die Datei lesen, aber nicht schreiben oder ausführen. Dasselbe gilt für die anderen Benutzer, wie im dritten Zeichenblock gezeigt.

Dateien und Ordner

Die geringfügig unterschiedliche Wirkung von Zugriffsberechtigungen hängt vom betreffenden Objekttyp ab: Datei oder Verzeichnis. Die folgende Tabelle zeigt Einzelheiten:

Tabelle 6.2. Zugriffsberechtigungen für Dateien und Verzeichnisse

Zugriffsberechtigung

Datei

Ordner

Lesen (r)

Benutzer können die Datei öffnen und lesen.

Benutzer können den Inhalt des Verzeichnisses anzeigen. Ohne diese Berechtigung können Benutzer beispielsweise den Inhalt dieses Verzeichnisses mit ls -l nicht auflisten. Wenn sie jedoch über Ausführungsberechtigung für das Verzeichnis verfügen, können sie dennoch auf bestimmte Dateien in diesem Verzeichnis zugreifen, sofern sie von deren Existenz wissen.

Schreiben (w)

Die Benutzer können die Datei ändern: Sie können Daten hinzufügen oder verwerfen und sogar den Inhalt der Datei löschen. Jedoch umfasst dies nicht die Berechtigung, die Datei vollständig aus dem Verzeichnis zu entfernen, sofern sie nicht über Schreibberechtigung für das Verzeichnis verfügen, in dem sich die Datei befindet.

Benutzer können Dateien im Verzeichnis erstellen, umbenennen oder löschen.

Ausführen (x)

Benutzer können die Datei ausführen. Diese Berechtigung ist nur relevant für Dateien wie Programme oder Shell-Skripten, nicht für Textdateien. Wenn das Betriebssystem die Datei direkt ausführen kann, brauchen Benutzer keine Leseberechtigung zum Ausführen der Datei. Wenn die Datei jedoch wie ein Shell-Skript oder ein Perl-Programm interpretiert werden muss, ist zusätzlich die Leseberechtigung erforderlich.

Benutzer können in das Verzeichnis wechseln und Dateien dort ausführen. Wenn sie über keinen Lesezugriff auf dieses Verzeichnis verfügen, können sie die Dateien nicht auflisten, aber dennoch auf sie zugreifen, falls sie von deren Existenz wissen.


Beachten Sie, dass der Zugriff auf eine bestimmte Datei immer von der korrekten Kombination von Zugriffsberechtigungen für die Datei selbst und das Verzeichnis abhängt, in dem sie sich befindet.