Mounten von Dateisysteme
In Linux müssen auf internen oder externen Datenträgern befindliche Dateisysteme in das System eingebunden werden. Man spricht hier auch von „Aufsetzen“, „Einhängen“ oder „Mounten“ eines Dateisystems.
Bei den Desktop-Umgebungen GNOME und KDE ist das Einhängen von Datenträgern per Mausklick möglich. Externe, über USB angeschlossene Datenträger werden bei jedem Systemstart oder beim Einstecken im laufenden Betrieb („HotPlug“) erkannt und eingebunden (siehe udev). Auch andere Datenträger werden automatisch in das System eingebunden, und man braucht sich normalerweise nicht selbst darum zu kümmern.
Eine gewisse Grundkenntnis zu mount ist jedoch durchaus vorteilhaft, da z.B. nicht immer alle Windowslaufwerke richtig eingebunden werden. Außerdem unterstützen nicht alle Live-CDs (Rettungs-CDs) das automatische Einbinden von Laufwerken bzw. Datenträgern.
„mount“ (einhängen) und „umount“ (aushängen) werden über das Paket mount bereitgestellt und sind Bestandteil jeder Standardinstallation.
Statisches und temporäres Einbinden
Statisches Einbinden
Partitionen, die beim Installieren von Ubuntu bereits verfügbar sind, können durch einen automatisch erstellten Eintrag in der Datei /etc/fstab so ins System eingebunden werden, dass sie immer gleich nach dem Systemstart verfügbar sind. Entsprechende Einträge können auch nachträglich noch von Hand vorgenommen werden. Man spricht hier von „statischem Einbinden“ oder von „statischem Mounten“.
Temporäres Einbinden
Von „temporärem Einbinden“ oder „temporärem Mounten“ spricht man dann, wenn der Datenträger im laufenden Betrieb nach Bedarf ein- und wieder ausgehängt werden kann. Je nach Gerät sind unterschiedliche Möglichkeiten sinnvoll:
Wechseldatenträger (z.B. CD-ROM, DVD, Disketten): Hier sollte das Einbinden per /etc/fstab und Nutzen der Option noauto erfolgen
Andere Datenträger: Hierbei kann man für alle nicht benötigten Datenträger auf einen Eintrag in /etc/fstab verzichten. Zu diesen Datenträgern gehören z.B. nicht benötigte Festplattenpartitionen anderer Betriebssysteme/Distributionen oder externe Festplatten.
Automount
Von „Automount“ spricht man dann, wenn Partitionen bei einem Zugriffsversuch automatisch temporär eingebunden (gemountet) und dann auch automatisch wieder ausgehängt werden, wenn über eine bestimmte Zeit kein Zugriff mehr erfolgt. Dies ist mit Zusatzprogrammen (z.B. AutoFS) möglich.
Nutzung von mount
Anzeige der eingehängten Datenträger
Wird der Befehl mount alleine eingegeben, werden die eingehängten Datenträger zeilenweise ausgegeben. Mit der Option -l wird am Ende jeder Zeile in eckigen Klammern zusätzlich das Label angezeigt (falls vorhanden):
mount -l
1 2 3 4 5 6 7 8 9 |
/dev/sda10 on / type ext3 (rw,errors=remount-ro) proc on /proc type proc (rw) none on /sys type sysfs (rw,noexec,nosuid,nodev) udev on /dev type tmpfs (rw,mode=0755) [... weitere systemrelevante Dateisysteme ...] /dev/sda11 on /home type ext3 (rw) [User904] /dev/sda5 on /media/Daten type vfat (rw,utf8,umask=007,gid=46) [DATEN] /dev/sdc1 on /media/disk type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed,flush) [] /dev/sr0 on /media/cdrom0 type iso9660 (ro,nosuid,nodev,utf8,user=kaputtnik) [Debian 5.0.3 i386 Bin-1] |
Ab der Ubuntu-Version 12.10 wurde es außerdem aus den offiziellen Paketquellen genommen.
●Der Nachfolger ist das sogenannte „cifs“-Protokoll.
●Mit dem Befehl „sudo mount -t cifs //“IP-Adresse-der-Freigabe“/“Name-der-Freigabe“ /mnt -o user=“benutzername“,domain=“Domäne“ “ können Sie Ihre Freigabe unter Ubuntu einbinden.
Datenträger einhängen (mount)
Syntax
Die Syntax von mount hängt davon ab, ob für den Datenträger ein Eintrag in /etc/fstab besteht oder nicht; von den Optionen in diesem Eintrag hängt es ggf. auch ab, ob für die Befehle Root-Rechte (siehe sudo) nötig sind. Besteht kein Eintrag in der /etc/fstab, müssen in der mount-Befehlszeile alle Parameter, das Gerät und der Einhängepunkt angegeben werden. Da außerdem in diesem Fall grundsätzlich Root-Rechte nötig sind, lautet die Syntax von mount dann folgendermaßen
# allgemein: sudo mount [Parameter] Gerät Einhängepunkt # Beispiel: sudo mount -t ntfs -o umask=007,gid=046,uid=0,nls=utf8 /dev/sda1 /media/winxp Wie das Beispiel zeigt, kann dies eine recht lange Befehlszeile ergeben, die dann bei jedem temporären Einbinden einzugeben ist. Bei häufiger gebrauchten Geräten ist es deshalb besser, das temporäre Einbinden durch einen Eintrag in /etc/fstab vorzubereiten, bei dem das automatische Einbinden beim Systemstart über die Optionnoauto
unterbunden wird. Alle Parameter werden dann dort fest eingetragen. Mit einer der Optionenuser
oderusers
kann zudem das Einbinden ohne Root-Rechte erlaubt werden:
#Beispieleintrag in /etc/fstab: UUID=8A4831E44831CFA5 /media/winxp ntfs umask=007,gid=46,uid=0,nls=utf8,noauto,users 0 0
Die obige Befehlszeile vereinfacht sich dann zu
# allgemein: mount <Einhängepunkt> #Beispiel: mount /media/winxp
Befehlszeilenoptionen
Parameter
Eine vollständige Übersicht zu den Parametern findet man in den Man-Pages zu mount. Die folgende Tabelle führt nur die gängigsten auf:
Parameter von mount | |
Parameter | Beschreibung |
-a |
Es werden alle Geräte bzw. Dateisysteme eingehängt, die in der Datei /etc/fstab ohne die Option noauto aufgeführt sind. Dies wird standardmäßig beim Systemstart durchgeführt. |
-o Option |
Übergibt weitere Optionen an mount , mit denen das Verhalten des eingehängten Dateisystems sehr detailliert festgelegt werden kann. |
-B |
Remount von Verzeichnissen so, dass sie an beiden Orten verfügbar sind (entspricht --bind oder -o bind ). |
-M |
Remount von Verzeichnissen so, dass sie nur noch am neuen Ort verfügbar sind (entspricht --move oder -o move ). |
-t Typ |
Es wird der Typ des einzuhängenden Dateisystems definiert. mount kennt alle gängigen Dateisysteme sowie einige „Exoten“. Einige Typen sind z.B.: ext, ext2, ext3, ext4, reiserfs, nfs, iso9660 (für CDs), udf (für DVDs), vfat (=FAT32), ntfs uvm. Eine vollständige Übersicht findet man in der Man-Page. |
-f |
Simuliert die Durchführung von mount, der Befehl wird nicht wirklich ausgeführt. |
Gerät
Hinweis:
Dieser Abschnitt hat keine Gültigkeit für das Einbinden von einzelnen Ordnern.
Für <Gerät> (engl. „device“) kann eine Gerätedatei angegeben werden, mittels derer auf das einzuhängende Dateisystem zugegriffen werden kann. Die vom System erkannten und benutzbaren Datenträger sind dabei als Datei im Verzeichnis /dev aufgeführt, z.B. /dev/sda1 oder /dev/scd0.
Eine Einführung zu den Geräten unter Linux bieten die Artikel Datenverwaltung und – spezieller – Datenträger.
Während man beim temporären Einbinden <Gerät>
wie im obigen Beispiel angibt, verwendet man für die Einträge in der /etc/fstab vorzugsweise die UUID oder das Label des entsprechenden Datenträgers.
Einhängepunkt
Um ein Dateisystem einhängen zu können, muss zuerst ein Einhängepunkt (Mountpunkt) vorhanden sein. Dies ist ein zunächst leerer Ordner, der sich prinzipiell in jedem Verzeichnis befinden kann. Über diesen Einhängepunkt wird dann später auf das eingehängte Dateisystem zugegriffen. Weil außer in /home/$USER neue Ordner nur mit Root-Rechten angelegt werden können, gibt man folgende Zeile in einem Terminal ein:
#allgemein: sudo mkdir <Einhängepunkt> Beispiel: sudo mkdir /media/winxp
Unter Ubuntu sind die Verzeichnisse /media oder /mnt üblich, wobei unter GNOME die unter /media eingehängten Dateisysteme auch auf dem Desktop angezeigt werden.
Die Namen der Einhängepunkte sollten den darauf einzuhängenden Datenträger möglichst beschreiben. Dies soll verhindern, dass versehentlich mehrere Datenträger auf denselben Einhängepunkt eingehängt werden. Sollte dies geschehen, so kann auf den ersten Datenträger nicht mehr zugegriffen werden, da er durch das zweite Dateisystem überlagert wird!
Eine Besonderheit bei Netzwerk-Dateisystemen: In manchen Fällen verwendet der Befehl mount
dort Hilfsprogramme (z.B. mount.cifs), die verlangen, dass der Mountpunkt im Besitz desjenigen Benutzers ist, der einhängt.
Dateisystemrelevante Rechte
Sind auf einem Datenträger bereits Dateien und Ordner mit eigenen Rechten vorhanden, so hängt es vom Dateisystem ab, wie diese berücksichtigt werden:
- Linux-Dateisysteme (z.B. ext2, ext3, ext4, ReiserFS): Bestehende Rechte bleiben erhalten. Nach dem Einhängen können die Rechte in einem solchen Dateisystem mit den Befehlen chown und chmod verändert werden.
- Windows-Dateisysteme (z.B. VFAT, NTFS):
- Bei VFAT (FAT32) ist eine echte Rechteverwaltung nicht möglich; eine solche wird deshalb lediglich simuliert. Hierfür sind besondere Mountoptionen vorgesehen. Die so festgelegten (simulierten) Rechte gelten dann immer für das gesamte Dateisystem. Die Zugriffsrechte lassen sich für einzelne Dateien zwar weiter einschränken, aber nicht erweitern. Solche Änderungen sind nur temporär, d. h., sie verfallen mit dem Aushängen.
- NTFS wird standardmäßig wie VFAT behandelt. Der in Ubuntu verwendete Dateisystem-Treiber NTFS-3G erlaubt es aber auch, über die Mount-Optionen
permissions
undacl
auf NTFS-Partitionen eine echte (beständige) Rechteverwaltung einzurichten, mit der sich diese wie Linux-Dateisysteme verhalten.
Mehr zu den Besitz- und Zugriffsrechten dieser Dateisysteme findet sich im Artikel Windows-Partitionen einbinden.
Optionen
Die Man-Page listet alle möglichen Optionen auf, einen Überblick gibt die folgende Tabelle. Die mit (*) gekennzeichneten Optionen sind nur bei Einträgen in /etc/fstab verwendbar:
Optionen | |
Option | Beschreibung |
defaults |
Das Gerät wird mit folgenden Optionen eingehängt: rw , suid , dev , exec , auto , nouser und async |
atime |
Access-TIME, Zugriffszeiten in der Inodetabelle speichern. Standard bis Ubuntu 7.10 |
relatime |
Modifiziertes atime um die fsync Zugriffe zu reduzieren. Standard ab Ubuntu 8.04. Das ausdrückliche Hinzufügen dieser Mountoption in der /etc/fstab ist seitdem nicht mehr notwendig. |
noatime |
Gegenteil zu atime . Wer keine Zugriffszeiten wissen möchte, kann mit dieser Option Festplattenaktivitäten reduzieren, da nicht jedes Mal bei einem Dateizugriff die Inodetabelle aktualisiert werden muss. |
sync |
Nach jedem Schreibvorgang wird geflusht, also der Pufferinhalt sofort auf den Datenträger geschrieben. Das ist z.B. bei USB Memory Sticks sehr hilfreich, weil man sie somit nicht manuell aushängen muss (bei Automountsystemen). |
async |
Es wird nicht immer direkt auf die Platte geschrieben, sondern es kann auch erst verspätet geschrieben werden. Das ist effizienter, wenn z.B. mehrere Dateien gleichzeitig geschrieben werden sollen, kann aber bei USB Sticks zu Datenverlust führen, wenn nicht ausgehängt wird (siehe defaults ). |
nouser (*) |
Nur root kann das Dateisystem ein- und aushängen (siehe defaults ). |
users (*) |
Jeder Benutzer darf das Gerät ein- und aushängen. |
user (*) |
Jeder Benutzer darf das Gerät mounten (hilfreich bei Wechseldatenträgern wie CD, DVD, etc.). Aushängen darf dann nur der Benutzer, der das Gerät eingehängt hat. |
auto (*) |
Das Dateisystem wird beim Aufruf von mount -a und beim Start automatisch mit eingehängt. Standard bei Einträgen in fstab (siehe defaults ). |
noauto (*) |
Gegenteil zu auto . |
acl |
Aktivierung der Access Control Lists (kurz ACL) zur Erweiterung des Linux-Rechtesystems. Das benötigte Paket für die Nutzung von Access Control List, libacl1, ist ab Jaunty bereits in der Standardinstallation enthalten. |
ro |
Das Dateisystem wird nur-lesend (read-only) eingehängt. |
rw |
Das Dateisystem wird beschreibbar (read-write) eingehängt (siehe defaults ). |
dev |
Gerätedateien auf dem Dateisystem werden interpretiert (siehe defaults ). |
nodev |
Gegenteil zu dev . |
exec |
Es können Binärdateien auf dem einzuhängenden Dateisystem ausgeführt werden (siehe defaults ). |
noexec |
Gegenteil zu exec . |
suid |
Es können Programme mit gesetztem SetUID- oder SetGID-Bit auf dem eingehängten Dateisystem ausgeführt werden (siehe defaults ). |
nosuid |
Gegenteil zu suid . |
user_xattr |
„extended user attributes“; wird z.B. für den calenderserver für erweiterte Dateioptionen benötigt. |
compress |
Eine nützliche Option, die „nur“ im noch experimentellen Dateisystem btrfs eingesetzt werden kann und in vielen Fällen Dateioperationen beschleunigt. Damit wäre eine Platzersparnis von fast 50% z.B. im /usr/ Verzeichnis möglich, daher optimal für das reine / Systemverzeichnis ohne Homeverzeichnis. Mehr ![]() |
remount |
Aus- und wieder einhängen, um z. B. die Schreibrechte zu enziehen: „remount,ro „ |
ssd |
Kann „nur“ im noch experimentellen Dateisystem btrfs gesetzt werden und dient zur Optimierung einer SSD-Festplatte. |
sw |
Swap – Auslagerungsspeicher. |
_netdev |
Das einzubindene Dateisystem befindet sich auf einem Device, das Netzwerkzugriff benötigt. Das Einbinden wird daher solange hinausgezögert, bis Netzwerkzugriff besteht. |
Die verschiedenen Optionen können miteinander kombiniert werden, indem man sie mit einem Komma (aber ohne Leerstelle) voneinander getrennt eingibt, also z.B.: -o rw,suid,user
Weiterhin können die o.g. Optionen auch in der /etc/fstab benutzt werden, wobei auto
und noauto
nur dort sinnvoll sind.
Besonderheiten
Windows-Dateisysteme
Des weiteren gibt es noch eine Vielzahl von Optionen, die spezifisch für das jeweilige Dateisystem sind. Für das Einhängen von Windows-Dateisystemen (also FAT (vfat) und NTFS) sind dies u.a.:
Spezielle Optionen für Windows-Dateisysteme | |
Option | Beschreibung |
umask=MASKE |
Setzt indirekt die Zugriffsrechte für alle Dateien, indem die Verbote angegeben werden. „MASKE“ ist eine dreistellige Zahl. Zur Unterscheidung von Dateien und Verzeichnissen kann stattdessen auch fmask und dmask verwendet werden. Wird keine dieser Optionen verwendet, gelten folgende Standardwerte: FAT: 022, NTFS: 000. Zur Bedeutung der Ziffern siehe Rechte. |
dmask=MASKE |
Wie umask , jedoch nur für Ordner |
fmask=MASKE |
Wie umask , jedoch nur für Dateien |
uid=UID |
setzt den Eigentümer für alle Dateien. „UID“ ist hierbei die ID des entsprechenden Benutzers (Zahlenwert oder Name). |
gid=GID |
setzt die Gruppenzugehörigkeit für alle Dateien. „GID“ ist hierbei ID der entsprechenden Gruppe (Zahlenwert oder Name). |
utf8 |
nur für FAT32 (-t vfat ): es wird der UTF-8 Zeichensatz verwendet – kann dann notwendig werden, wenn Dateinamen Sonderzeichen oder Umlaute enthalten |
shortname=mixed |
nur für FAT32 (-t vfat ): kurze Dateinamen werden korrekt gespeichert |
codepage=850 |
nur für FAT32 (-t vfat ): legt den westlichen Zeichensatz für kurze Dateinamen fest |
nls=utf8 |
nur für NTFS: es wird der UTF-8-Zeichensatz verwendet – kann dann nötig werden, wenn Dateinamen Sonderzeichen oder Umlaute enthalten. Ist beim Treiber NTFS-3G Standard-Einstellung. |
nls=iso8859-1 |
alternativer Zeichensatz, falls es trotz UTF-8 zu Darstellungsfehlern kommt |
permissions |
nur für NTFS: auf der NTFS-Partition wird für Linux eine Verwaltung der UNIX-Dateirechte eingerichtet. Funktioniert nur mit dem Treiber NTFS-3G (in Ubuntu Standard). |
acl |
für NTFS: Die Rechte-Verwaltung für Linux auf der NTFS-Partition wird auf die POSIX-ACL ausgedehnt. Funktioniert mit dem Treiber NTFS-3G (in Ubuntu Standard). |
Die Optionen umask
, uid
und gid
simulieren nur für die Dauer der jeweiligen Sitzung eine temporäre Rechteverwaltung. Die Dateirechte werden nicht wirklich auf der Partition eingetragen. Die Optionen permissions
und acl
erzeugen hingegen auf der Partition eine echte, permanente Rechteverwaltung. Diese wird jedoch erst durch User-Mapping mit der Rechteverwaltung unter Windows kompatibel. Die Optionen permissions
und acl
überschreiben ggf. die Optionen umask
, uid
und gid
.
Hinweis:
Zum Einbinden von NTFS-Dateisystemen verwendet Ubuntu als Standard den Treiber NTFS-3G. Ist dieser nicht verfügbar, wird ersatzweise das NTFS-Kernelmodul verwendet. Die NTFS-Partition wird dann unabhängig von den gewählten Optionen ohne Schreibrechte (Modus ro) eingebunden, und eine evtl. vorhandene Rechte-Verwaltung wird ignoriert.
Mehrbenutzer-Systeme
Bei Mehrbenutzer-Systemen hat sich dabei folgende Kombination bewährt:
uid=0,gid=46,umask=007
Wird ein Windows-Dateisystem mit diesen Optionen eingebunden, so ist der Eigentümer aller Dateien der Benutzer „root“ (uid=0
), die Dateien werden der Gruppe „plugdev“ zugewiesen (gid=46
). Der Eigentümer hat keine Einschränkungen, genauso wenig die Mitglieder der Gruppe, und alle anderen haben keine Zugriffsrechte (umask=007
). Dies gilt dann automatisch auch für neu angelegte Dateien oder für Dateien, die auf diese Partition kopiert werden. Es ist zu beachten, dass bei dieser Konfiguration beim Kopieren/Verschieben von Dateien/Ordnern die Zeitstempel verloren gehen können.
Nun muss nur noch sichergestellt werden, dass diejenigen Nutzer, die auf die entsprechenden Dateisysteme voll zugreifen dürfen sollen, der Gruppe „plugdev“ zugeordnet sind. Das ist standardmäßig für alle Benutzer der Fall. Wer die Gruppenzugehörigkeiten ändern möchte, kann dies im Terminal per chgrp durchführen oder auf die Werkzeuge zur Verwaltung von Benutzern und Gruppen der großen Desktopumgebungen zurückgreifen.
Einbenutzer-System
Bei Einbenutzer-Systemen oder bei überwiegendem Zugriff durch denselben Benutzer empfiehlt es sich, die Partition nicht als Eigentum von „root“, sondern als Eigentum dieses Benutzers einzubinden. Dafür ist dann statt „uid=0“ die UID des Benutzers und statt „gid=46“ die GID seiner Gruppe einzutragen, z.B.:
uid=1000,gid=1000
Dadurch behalten die Dateien beim Kopieren und Verschieben ihr Datum. Außerdem hat diese Einstellung Vorteile bei der Freigabe von Dateien in einem Netzwerk.
Nähere Informationen dazu sind im Artikel Windows-Partitionen_einbinden Zeitstempel-gehen-verloren Windows Partitionen einbinden (noch todo) zu finden.
Standard-Rechte-Einstellung bzw. unterschiedliche Rechte für Ordner und Dateien verwenden
Bei Windows-Dateisystemen werden per umask
— anders als bei der — die Rechte für Ordner und Dateien exakt gleich gesetzt. Möchte man aber für beide unterschiedliche Rechte, z.B. die Standardwerte für die Zugriffsrechte bei neu erstellten Ordnern und Dateien, setzen, so trage man anstatt z.B.
umask=0022
dann
dmask=0022,fmask=0133
ein.
Virtuelle Netzwerkdateisysteme
Der Befehl mount
kann auch zum Einbinden von Netzwerk-Laufwerken oder von einzelnen Freigaben in einem Samba- oder NFS-Netzwerk verwendet werden. Wenn das Paketsmbfs bzw. NFS installiert ist, dann ruft er aber nur die jeweils eigenen Mount-Module mount.cifs
(Samba) und mount.NFS
(NFS) auf und übergibt diesen alle nötigen Daten und Optionen. Letztere stimmen teilweise, aber nicht vollständig mit den Optionen bei echten Dateisystemen überein.
Das echte Einhängen von Netzwerk-Laufwerken und -Freigaben in das lokale Dateisystem hat gegenüber anderen Arten des Zugriffs den großen Vorteil, dass dann alle Anwendungen ohne Einschränkungen auf die Freigaben genau wie auf lokale Dateien zugreifen können.
Hinweis:
Die Mount-Optionen user
und users
sind für cifs und NFS nur dann wirksam, wenn für die Module mount.cifs
bzw. mount.NFS
das SUID-Bit gesetzt ist. Um das damit verbundene Risiko zu vermindern, verlangen diese Module, dass der „mount point“ im Besitz des Benutzers ist, der den „mount“ ausführt.
Einzelne Ordner einbinden
Hinweis:
Dieser Abschnitt wendet sich vor allem an fortgeschrittene Benutzer
Normalerweise verwendet man den Befehl mount
, um ganze Partitionen oder Dateisysteme einzubinden. In Verbindung mit dem Parameter --bind
oder -B
lassen sich auch einzelne Ordner oder Dateien eines Dateisystems zusätzlich noch an einem eigens dafür eingerichteten besonderen Mountpunkt einhängen. Der Ordner oder die Datei bleiben dabei innerhalb des ersten eingebundenen Dateisystems unverändert bestehen. Das Verfahren hat Ähnlichkeit mit einem Symbolische-Verknuepfungen“ symbolischen Link („Symlink“), ist aber nicht damit identisch. Folgende Unterschiede sind zu beachten:
- Im Gegensatz zu einem Symlink kann ein mit
mount --bind
eingehängtes Verzeichnis nicht mitrm
oderrmdir
gelöscht werden, auch nicht mit Root-Rechten. Man kann es lediglich mitumount
wieder aushängen. - Ein mit
mount --bind
temporär eingebundener Ordner wird beim Herunterfahren des Systems ausgehängt und ist nach einem Neustart nicht automatisch wieder sichtbar. - Gewisse Einschränkungen für Symlinks in Netzwerk-Freigaben gelten nicht für mit
mount --bind
eingehängte Ordner
Syntax:
# Allgemein: sudo mount --bind <Einhängepunkt_1>/<Ordner> <Einhängepunkt_2> # alternativ: sudo mount -o bind <Einhängepunkt_1>/<Ordner> <Einhängepunkt_2> # Beispiel: sudo mount --bind /media/Daten/Downloads /home/Max/Downloads
Die Option bind
lässt sich entsprechend auch statisch bei Einträgen in fstab verwenden.
Ähnlich wie mount --bind
wirkt mount --move
bzw. -M
, nur dass in diesem Fall dann der entsprechende Ordner nur noch am neuen Mountpunkt und nicht mehr am Ausgangspunkt erscheint.
Dateisysteme aushängen
Beim Herunterfahren („Shutdown“) des Systems werden alle eingebundenen internen und externen Datenträger automatisch korrekt ausgehängt. Manchmal möchte man jedoch einen Datenträger im Betrieb wieder aushängen. Insbesondere bei externen Datenträgern ist dies nötig, wenn man sie bei laufendem Rechner entfernen möchte.
umount
Um ein Dateisystem wieder auszuhängen, existiert der Befehl umount
. Dabei sind genau die gleichen Rechte nötig, mit denen das Dateisystem auch eingebunden wurde. Das automatische Einhängen externer Geräte geschieht meist ohne, das Einhängen von Hand dagegen häufig mit Root-Rechten. Im letzteren Fall lautet die Befehlszeile:
# Allgemein: sudo umount <Gerät> # alternativ sudo umount <Einhängepunkt> # Beispiel: sudo umount /dev/sda1
Aushängen via GUI
Datenträger und Geräte, die ohne Root-Rechte eingehängt wurden, kann man in den grafischen Oberflächen GNOME und KDE auch per Mausklick aushängen.
Beispiele
Im Folgenden einige Beispiele zur Verwendung von mount. In einigen Fällen wird dabei auf Beispiele in anderen Artikeln verwiesen, wo der Befehl mount
ebenfalls eingesetzt wird.
USB-Stick
In diesem Beispiel wird ein FAT32-formatierter USB-Stick (Gerät /dev/sdb) nur-lesend in das Verzeichnis /media/usbstick eingehängt:
mount -t vfat -o ro /dev/sdb1 /media/usbstick
Standardmäßig werden zu schreibende Daten zwischengespeichert und erst beim Aushängen auf den Datenträger geschrieben. Deshalb müssen beschreibbare externe Datenträger grundsätzlich korrekt ausgehängt werden, bevor man sie entfernen darf. Eine sichere, aber deutlich langsamere Alternative ist die Option sync.
Windowspartition
Im folgenden Beispiel wird eine NTFS-Partition auf /dev/sda1 in das Verzeichnis /media/winxp eingehängt:
mount -t ntfs -o umask=007,gid=046,uid=0 /dev/sda1 /media/winxp
Möchte man das Dateisystem lieber nur zum Lesen einhängen, so verwendet man einen der folgenden Befehle:
mount -t ntfs -o umask=227,gid=046,uid=0 /dev/sda1 /media/winxp
mount -t ntfs -o ro,gid=046,uid=0 /dev/sda1 /media/winxp
CD-Image
In diesem Beispiel wird gezeigt, wie man eine Image-Datei (hier die Datei ~/loop_image.img) per Loop-Mount einhängt. Anschließend kann auf das Image wie auf eine normale Partition oder ein CD-/DVD-Laufwerk zugegriffen werden.
sudo mount -o loop ~/loop_image.img /media/loop_mount
Festplatten-Image
Partitionen aus einem per dd (siehe: dd if=Quelle of=Ziel )
angelegten Image einer kompletten Festplatte lassen sich nicht ohne Weiteres einhängen. Das Ganze geht mit folgendem Skript auch automatisch.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
#!/bin/bash #---------------------------------------------------------------------- # Author: haveaniceday # Version: 1, Last updated: 12/2007 #---------------------------------------------------------------------- # fdisk finden PATH="/sbin:$PATH" if [ $# -lt 1 ] then echo "usage: ${0##*/} <image>" exit 1 fi IMAGE=$1 if [ ! -f $IMAGE ] then echo "Warnung, $IMAGE ist kein File" fi # tr -d '*' => bootflag entfernen LANG=C fdisk -lu $IMAGE 2>&1 | tr -d '*' | grep "$IMAGE[a-z0-9]" | while read part start end blocks id rest do echo echo "$read $part $start $end $blocks $id $rest" case $id in 5|f|85) echo "Ignoriere extended partition" continue ;; 82) echo "Ignoriere Swap" continue ;; *) ;; esac let offset=$start*512 echo mount -o loop,ro,offset=$offset $IMAGE /mnt done exit 0 |
An einem Image aufgerufen, gibt das Skript anschließend den Mount-Befehl inklusive Offset aus.
RAM-Disks
Diverse Beispiele hierzu findet man im Artikel RAM-Disk erstellen.
Ordner einbinden
In diesem Fall möchte man ein neues /usr-Verzeichnis anlegen und benutzt dafür den „Ordner“ auf der „Partition“:
mount --bind /partition/ordner /usr
Um nun einen Ordner dauerhaft einzubinden, ist in die /etc/fstab folgende Zeile einzutragen:
/partition/ordner /usr none bind 0 0