Galileo Computing < openbook >
Galileo Computing - Bücher zur Programmierung und Softwareentwicklung
Galileo Computing - Bücher zur Programmierung und Softwareentwicklung


'Wie werde ich Unix-Guru' als Buch bestellen
A. Willemer
Wie werde ich UNIX-Guru
I  ANWENDUNG
Know-How für Unix/Linux-User: Einführung, Shell, Befehle, Hilfe, Arbeit mit Dateien, Editoren, Reguläre Ausdrücke, nützliche Tools, Hardware.

II  ADMINISTRATION
Tools, Systemstart, Benutzer verwalten, Hardware konfigurieren, Software installieren, Datensicherung, Tuning, Kernel

III  NETZWERK
Client/Server Systeme, TCP/IP, Routing, IPv6, Internet-Dienste, DHCP, Webserver, Firewalls

IV  DAS X-WINDOW SYSTEM
Die grafische Oberfläche von UNIX einrichten und nutzen

V  PROGRAMMIERUNG VON SHELLSKRIPTEN
Automatisieren von Tasks durch Shell-Skripte.

VI  PERL
Interpreter, Syntax, Variablen, Steuerung, Funktionen, UNIX-Aufrufe, GUIs mit Tk

VII  PROGRAMMIERWERKZEUGE
C-Compiler, Analyse-Tools, CVS, yacc, diff

VIII  UNIX-SYSTEMAUFRUFE
UNIX-Befehle in eigenen Programmen nutzen

IX  LITERATUR
Weiterführende Literatur zu UNIX und LINUX

 
Galileo Computing / <openbook> / "Wie werde ich UNIX-Guru ?"
« Swapping Festplatten Konsistenz der Dateisysteme »

Einbinden eines Dateisystems: mount

Nachdem ein Dateisystem erzeugt wurde, muss es in den Verzeichnisbaum eingehängt werden, damit es nutzbar ist. Der Aufruf zum Einhängen eines Dateisystems lautet mount, der zum Freigeben umount.

Bei einem neuen System sollte vor der Installation klar sein, welches Dateisystem an welche Stelle im Verzeichnisbaum eingehängt werden soll. Bei der Installation wird dies oft automatisch vom Installationsprogramm unterstützt. Soll beispielsweise eine eigene Partition das Verzeichnis /usr aufnehmen, wird das Verzeichnis angelegt und das Dateisystem mit einem mount eingehängt. Intern werden also quasi folgende Befehle ausgeführt:

mkdir /usr
mount /dev/sda2 /usr

Wird dagegen nachträglich eine Platte als Speichererweiterung eingebaut, wird man sie unter einem Dummy-Verzeichnis in den Verzeichnisbaum einhängen und die Zugriffe über einen symbolischen Link realisieren. Manchmal werden Platten über die Verzeichnisse /u, /u1 oder /v eingehängt. Etwas ordentlicher ist es, wenn man innerhalb eines Verzeichnisses /mount oder /drives Verzeichnisse für das Einhängen der Platten einrichtet. Durch einen symbolischen Link kann man anschließend jedes beliebige Verzeichnis auf die Platte verlegen. Zum Beispiel:

mkdir /mount/hda3
mount /dev/hda3 /mount/hda3
ln -s /mount/hda3 /home/tacoss

Das Verzeichnis /mnt eignet sich dazu weniger, da es traditionell gern verwendet wird, um kurzfristig Dateisysteme einzuhängen.

Nachdem die neue Platte eingehängt worden ist, muss man normalerweise einige Verzeichnisbäume auf die neue Platte schaffen, um auf den vollen Dateisystemen wieder Luft zu bekommen. Beim Umschichten der Dateien und Verzeichnisse ist es wichtig, dass nicht nur alle Daten transportiert werden, sondern auch, dass alle Dateirechte erhalten bleiben. Um das zu gewährleisten, sollte die Verzeichniskopie per tar (siehe S. tarcopy) erfolgen, damit die Eigenschaften der Dateien erhalten bleiben.

In moderneren Systemen kennt der Befehl cp auch die Option -R zum Kopieren kompletter Verzeichnisse und die Option -p zum Erhalt der Dateieigenschaften. Falls symbolische Links in dem Verzeichnis existieren, muss auch kontrolliert werden, ob cp auch mit ihnen richtig umgeht.

Schließlich wird ein symbolischer Link anstelle des ursprünglichen Verzeichnisortes erzeugt, der auf die neue Position auf der neuen Platte zeigt. Danach ist für die normalen Anwendungsprogramme kein Unterschied zu vorher zu erkennen, außer dass nun wieder Platz zum Arbeiten ist.

Damit das System beim nächsten Booten die Platte wieder an der richtigen Stelle einhängt, wird ein Eintrag in der Datei /etc/fstab für die Platte eingerichtet. Die Zeile für das obige Beispiel würde unter Linux so aussehen:

/dev/hda3    /mount/hda3       ext2    defaults 1 1

Die Datei /etc/fstab enthält alle Dateisysteme, die beim Booten bereits eingebunden werden. Eine typische fstab sieht so aus:

/dev/hda3       swap    swap    defaults 0 2
/dev/hda2       /boot   ext2    defaults 1 2
/dev/hda5       /       ext2    defaults 1 1
/dev/cdrom      /cdrom  auto    ro,noauto,user,exec 0 0
/dev/fd0        /floppy auto    noauto,user 0 0

In der ersten Spalte stehen die Partitionen. Die zweite Spalte bezeichnet den Ort, wo die Partition ihren Platz im Verzeichnisbaum findet. Die dritte Spalte bezeichnet den Typ des Dateisystems. ext2 ist beispielsweise das Standarddateisystem von Linux. Die vierte Spalte enthält Optionen, die kommasepariert aufgeführt werden, aber aus nahe liegenden Gründen kein Leerzeichen enthalten dürfen. Diese Optionen entsprechen denen des Befehls mount. ro bezeichnet schreibgeschützte Systeme, wie beim CD-ROM-Laufwerk zu erwarten. user bedeutet, dass der Anwender das Dateisystem mounten darf und anschließend auch Zugriffsrechte auf dieses Dateisystem hat. noauto verhindert, dass die CD-ROM bereits beim Booten in das Dateisystem eingehängt wird. Die Zahl in der fünften Spalte ist 1, wenn das Dateisystem bei einem dump (siehe S. dump) berücksichtigt werden soll. Die Zahl in der sechsten Spalte wird von fsck verwendet, um festzustellen, in welcher Reihenfolge die Dateisysteme beim Booten geprüft werden müssen. Steht dort eine 0, braucht das System nicht geprüft zu werden.

Allein durch die unterschiedlichen Namen der Dateisysteme ist die Datei fstab nicht zwischen den UNIX-Systemen portabel. Da die Partitionseinteilung aber auch sehr individuell für jeden Computer ist, muss sie auch nicht zwischen den Systemen austauschbar sein. Immerhin sind die Varianten so konsistent, dass man sich auch unter einem fremden UNIX-Derivat sofort darin zurecht findet.

Um den Spezialisten für die einzelnen Systeme ein gewisses Spezialwissen zu garantieren, haben die Hersteller für die gleiche Datei verschiedene Namen in Umlauf gebracht:

[Namensvarianten für fstab]C|C System & Name der Datei
SCO & /etc/default/filesys
HP-UX 10.10 & /etc/fstab
Solaris & /etc/vfstab

Ein Dateisystem, das in den Verzeichnisbaum eingehängt wurde, muss vor dem physikalischen Entfernen des Mediums wieder ausgehängt werden. Der Befehl dazu lautet umountEs darf kein n hinter dem u stehen.. Wechselmedien kann man erst entnehmen, wenn sie ausgehängt sind. Auch wenn ein Dateisystem per fsck geprüft werden soll, muss es erst ausgehängt werden.

Ein Dateisystem kann nur dann aus dem Verzeichnisbaum genommen werden, wenn es von niemandem mehr benutzt wird. Schlägt der Befehl umount fehl, gibt es noch Benutzer, die das Dateisystem verwenden. Wenn Sie den Befehl fuser auf das Wurzelverzeichnis des Dateisystems anwenden, ist schnell ermittelt, welche Prozess-ID die Platte in Beschlag nimmt.

Bestimmte Systemverzeichnisse sind natürlich immer in Gebrauch, wie etwa das Verzeichnis /var, das von beinahe jedem Hintergrundprozess verwendet wird. Solche Verzeichnisse kann man nur im Single-User-Modus aushängen.



« Swapping | Festplatten | Konsistenz der Dateisysteme »
 
 Zum Katalog
Zum Katalog
Wie werde ich UNIX-Guru?
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 UNIX/Linux

PHP 4-Workshop

Einstieg in Python

Perl fürs Web

MySQL 4

GNOME 2.0
 Empfehlung

Einstieg in XML
 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
Info

 MyGalileo
Der Service für registrierte Leser:
Zu MyGalileo
Info



Copyright © Galileo Press GmbH 2003
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.
[Galileo Computing]

Galileo Press GmbH, Gartenstraße 24, 53229 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de