Sobald Sie neue Festplatten in Ihr System eingebaut haben, verwenden Sie normalerweise Dienstprogramme wie fdisk oder parted, um Partitionen zu erstellen. Sobald Sie eine Partition erstellt haben, verwenden Sie den Befehl mkfs, um eine ext2-, ext3- oder ext4-Partition zu erstellen.
Sobald Sie eine Partition erstellt haben, sollten Sie den Mount-Befehl verwenden, um die Partition in einen Einhängepunkt (ein Verzeichnis) einzuhängen, um mit der Verwendung des Dateisystems zu beginnen.
Dieses Tutorial erklärt anhand von 15 praktischen Beispielen alles, was Sie über die Befehle mount und umount wissen müssen.
Die allgemeine Mount-Befehlssyntax zum Mounten eines Geräts:
mount -t type device destination_dir
1. Mounten Sie eine CD-ROM
Die Gerätedatei für CD würde im /dev-Verzeichnis existieren. Beispielsweise wird ein CD-ROM-Gerät wie unten gezeigt gemountet.
# mount -t iso9660 -o ro /dev/cdrom /mnt
Im obigen Beispiel gibt die Option „-o ro“ an, dass die CD-ROM mit schreibgeschütztem Zugriff gemountet werden soll. Stellen Sie außerdem sicher, dass das Zielverzeichnis (im obigen Beispiel /mnt) existiert, bevor Sie den Mount-Befehl ausführen.
2. Alle Reittiere anzeigen
Nachdem Sie eine Partition oder ein Dateisystem gemountet haben, führen Sie den Mount-Befehl ohne Argumente aus, um alle Mounts anzuzeigen.
Im folgenden Beispiel sieht die Ausgabe von mount nach dem Mounten des USB-Laufwerks auf einem System wie folgt aus. Wie unten zu sehen ist, wird das USB-Gerät (d. h.:/dev/sdb) auf /media/myusb gemountet, was als letzte Zeile im Mount-Befehl angezeigt wird.
# mount /dev/sda5 on / type ext4 (rw,errors=remount-ro) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) none on /sys/fs/fuse/connections type fusectl (rw) none on /sys/kernel/debug type debugfs (rw) none on /sys/kernel/security type securityfs (rw) udev on /dev type devtmpfs (rw,mode=0755) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620) tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755) none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880) none on /run/shm type tmpfs (rw,nosuid,nodev) /dev/sda6 on /mydata type ext2 (rw) /dev/sda7 on /backup type vfat (rw) gvfs-fuse-daemon on /home/bala/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=bala) /dev/sdb on /media/myusb type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks)
Sie können auch den Befehl df verwenden, um alle Einhängepunkte anzuzeigen.
# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda5 195069136 128345036 56958520 70% / udev 2008336 4 2008332 1% /dev tmpfs 806244 928 805316 1% /run none 5120 0 5120 0% /run/lock none 2015604 228 2015376 1% /run/shm /dev/sda6 17729076 176200 16657596 2% /mydata /dev/sda7 11707200 573312 11133888 5% /backup /dev/sdb 3910656 2807160 1103496 72% /media/myusb
3. Hängen Sie alle Dateisysteme ein, die in /etc/fstab
aufgeführt sindDie in /etc/fstab aufgelisteten Dateisysteme werden während des Bootvorgangs gemountet. Nach dem Booten kann der Systemadministrator einige der Partitionen aus verschiedenen Gründen unmounten. Wenn Sie möchten, dass alle Dateisysteme wie in /etc/fstab angegeben gemountet werden, verwenden Sie die Option -a mit mount wie unten gezeigt:
Beispiele für Einträge in der /etc/fstab-Datei:
# cat /etc/fstab # proc /proc proc nodev,noexec,nosuid 0 0 # / was on /dev/sda5 during installation /dev/sda5 / ext4 errors=remount-ro 0 1 # /mydata was on /dev/sda6 during installation /dev/sda6 /mydata ext2 defaults 0 2 # /backup was on /dev/sda7 during installation /dev/sda7 /backup vfat defaults 0 3
Führen Sie den Mount-Befehl mit der Option -a aus, um alle /etc/fstab-Einträge zu mounten.
# mount -a # mount /dev/sda5 on / type ext4 (rw,errors=remount-ro) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) none on /sys/fs/fuse/connections type fusectl (rw) none on /sys/kernel/debug type debugfs (rw) none on /sys/kernel/security type securityfs (rw) udev on /dev type devtmpfs (rw,mode=0755) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620) tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755) none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880) none on /run/shm type tmpfs (rw,nosuid,nodev) /dev/sda6 on /mydata type ext2 (rw) /dev/sda7 on /backup type vfat (rw) gvfs-fuse-daemon on /home/bala/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=bala)
Die gleiche Option -a kann mit umount verwendet werden, um alle in /etc/mtab
erwähnten Dateisysteme auszuhängen# umount -a umount: /run/shm: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) umount: /run: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) umount: /dev: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) umount: /: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
Einige Dateisysteme werden nicht ausgehängt, da sie ausgelastet sind oder gerade verwendet werden. Beachten Sie, dass der Inhalt der Dateien /etc/mtab und /proc/mounts ähnlich wäre.
4. Mounten Sie nur ein bestimmtes Dateisystem aus /etc/fstab
Wenn Sie nur den Verzeichnisnamen zum Mounten übergeben, sucht es nach Mount-Point-Einträgen, wenn es nicht gefunden wird, dann sucht es kontinuierlich nach einem Gerät in /etc/fstab und wird gemountet.
# mount | grep /mydata # cat /etc/fstab | grep mydata ##########/mydata was on /dev/sda6 during installation########## /dev/sda6 /mydata ext2 defaults 0 2
Wie oben zu sehen ist, ist das Verzeichnis /mydata kein Einhängepunkt, aber es ist in /etc/fstab vorhanden.
# mount /mydata # mount | grep /mydata /dev/sda6 on /mydata type ext2 (rw)
Wenn Sie dasselbe erneut ausführen, erhalten Sie die folgende Fehlermeldung:
# mount /mydata mount: /dev/sda6 already mounted or /mydata busy mount: according to mtab, /dev/sda6 is already mounted on /mydata
Hier können Sie anstelle des Verzeichnisnamens auch den Gerätenamen übergeben (aus der Datei /etc/fstab zu entnehmen).
# mount /dev/sda6
Beachten Sie, dass der Inhalt der Dateien /etc/mtab und /proc/mounts ähnlich wäre.
5. Alle gemounteten Partitionen eines bestimmten Typs anzeigen
Es ist möglich, nur den spezifischen Typ des gemounteten Dateisystems aufzulisten, indem die Option -l mit -t verwendet wird, wie unten gezeigt:
# mount -l -t ext2 /dev/sda6 on /mydata type ext2 (rw) # mount -l -t ext4 /dev/sda5 on / type ext4 (rw,errors=remount-ro)
Wie oben zu sehen, ist /dev/sda6 die einzige ext2-Partition und /dev/sda5 dementsprechend die einzige ext4-Partition.
6. Hängen Sie eine Diskette ein
Die Gerätedatei für Disketten würde im /dev-Verzeichnis existieren. Beispielsweise wird eine Diskette wie unten gezeigt gemountet.
# mount /dev/fd0 /mnt # cd /mnt
Nach dem erfolgreichen Mounten können Sie auf den Inhalt der Diskette zugreifen. Wenn Sie damit fertig sind, verwenden Sie umount, bevor Sie die Diskette physisch aus dem System entfernen.
# umount /mnt
7. Einhängepunkte an ein neues Verzeichnis binden
Der Mountpoint kann an ein neues Verzeichnis gebunden werden. Damit Sie über mehr als einen Mountpoint gleichzeitig auf den Inhalt eines Dateisystems zugreifen können.
Verwenden Sie die Option -B, um olddir und newdir wie folgt zu binden,
# mount -B /mydata /mnt
Jetzt ist die Bindung abgeschlossen und Sie können sie wie folgt überprüfen:
# mount | grep /mydata /dev/sda6 on /mydata type ext2 (rw) /mydata on /mnt type none (rw,bind)
Wie oben zu sehen ist, wird die Bindung richtig durchgeführt. Wenn Sie also an einer Stelle Änderungen im Dateisystem vornehmen, können Sie diese Spiegelung an einem anderen Einhängepunkt sehen, wie unten gezeigt:
# cd /mydata # ls test # mkdir dir1 # mkdir dir2 # ls test dir1 dir2 # cd /mnt # ls test dir1 dir2
8. Zugriff auf Inhalte vom neuen Einhängepunkt
Mount ermöglicht Ihnen den Zugriff auf den Inhalt eines Mount-Punkts von einem neuen Mount-Punkt aus. Es ist nichts anderes, als einen montierten Baum an einen anderen Ort zu verschieben.
Im Beispiel unten wird auf den Einhängepunkt /mydata von /mnt mit der Option -M wie unten gezeigt zugegriffen:
# mount -M /mydata /mnt/
Sobald dies erledigt ist, können Sie den alten Einhängepunkt nicht mehr verwenden, da er auf einen neuen Einhängepunkt verschoben wurde, und dies kann wie unten gezeigt überprüft werden:
# mount | grep /mydata # mount | grep /mnt /dev/sda6 on /mnt type ext2 (rw)
9. Mounten ohne Eintrag in /etc/mtab
zu schreibenWährend des schreibgeschützten Mountens von /etc/ können die Einträge der Datei /etc/mtab nicht durch den Befehl mount geändert werden. Das Einhängen kann jedoch erfolgen, ohne in /etc/mtab zu schreiben, indem die Option -n wie folgt verwendet wird,
# mount -n /dev/sda6 /mydata
Sie können keinen Eintrag für diese /mydata in der Ausgabe des Mount-Befehls und auch in der /etc/mtab-Datei wie folgt sehen:
# mount | grep /mydata # cat /etc/mtab | grep /mydata
Zugriff auf den Inhalt eines gemounteten Verzeichnisses /mydata:
# cd /mydata # ls dir1 dir2 test
10. Dateisystem mit Lese- oder Lese-/Schreibzugriff mounten
Um die Partition als schreibgeschützt einzuhängen, verwenden Sie die Option -r, die ein Synonym für -o ro ist.
# mount /dev/sda6 /mydata -r # mount | grep /mydata /dev/sda6 on /mydata type ext4 (ro)
ext3- und ext4-Dateisystem würden Ihnen immer noch erlauben, Schreiboperationen durchzuführen, wenn das Dateisystem verschmutzt ist. Daher müssen Sie möglicherweise „ro,noload“ verwenden, um diese Art von Schreibvorgängen zu verhindern.
# mount /dev/sda6 /mydata -t ext4 -o ro -o noload # mount | grep /mydata /dev/sda6 on /mydata type ext4 (ro,noload)
Um eine Partition mit Lese-/Schreibzugriff einzuhängen, verwenden Sie die Option -w, die dasselbe ist wie „-o rw“ (d. h.:Standard).
11. Remounten Sie das gemountete Dateisystem
Um das bereits gemountete Dateisystem zu mounten, verwenden Sie die Remount-Option und sie wird normalerweise verwendet, um das Dateisystem mit Lese-/Schreibzugriff erneut zu mounten, wenn es zuvor mit Lesezugriff gemountet wurde.
Der Einhängepunkt /mydata wird mit Lese-/Schreibzugriff vom Lesezugriff neu eingehängt, wie unten gezeigt:
# mount | grep /mydata /dev/sda6 on /mydata type ext4 (ro,noload) # mount -o remount,rw /mydata # mount | grep /mydata /dev/sda6 on /mydata type ext4 (rw)
12. Hängen Sie ein ISO-Image in ein Verzeichnis ein
Das ISO-Image kann wie unten gezeigt gemountet werden:
# mount -t iso9660 -o loop pdf_collections.iso /mnt # cd /mnt # ls perl/ php/ mysql/
13. Unmounten Sie mehr als einen Mount-Punkt
Umount ermöglicht es Ihnen, mehr als Mount-Punkte in einer einzigen Ausführung des umount-Befehls wie folgt auszuhängen:
# umount /mydata /backup # mount | grep /mydata # mount | grep /backup
14. Faules Unmounten eines Dateisystems
Dies ist eine spezielle Option in umount, falls Sie eine Partition aushängen möchten, nachdem die Festplattenoperationen abgeschlossen sind. Sie können den Befehl umount -l mit dieser Partition ausführen und das Aushängen wird durchgeführt, nachdem die Festplattenoperationen abgeschlossen sind.
Stellen Sie sich zum Beispiel ein Szenario vor, in dem eine Aufgabe (z. B. ein Skript oder ein anderer Befehl) einen Kopiervorgang auf einer Festplatte ausführt und Sie gleichzeitig mit -l ein Unmount ausführen dürfen, sodass das Unmount einmal durchgeführt wird Kopieren ist beendet (d. h.:die Festplattenoperation).
# umount /mydata -l
15. Unmounten eines Dateisystems erzwingen
umount bietet die Option, ein Dateisystem mit der Option -f zwangsweise auszuhängen, wenn das Gerät beschäftigt ist, wie unten gezeigt:
# umount -f /mnt
Wenn dies bei Ihnen nicht funktioniert, können Sie sich für Lazy Unmount entscheiden.
In der Zwischenzeit können Sie sich auch die Ausgabe des ps-Befehls ansehen, welcher Prozess derzeit den Einhängepunkt verwendet, wie unten gezeigt:
# ps ajx | grep /mydata 2540 3037 3037 2468 pts/2 3037 D+ 0 0:00 cp -r /home/geekstuff/ProjectData/ /mydata
Sie können auch den Befehl fuser ausführen, um herauszufinden, welcher Prozess das Verzeichnis für Operationen enthält.
# fuser -cu /mydata /mydata: 3087(root)
Es gibt Ihnen die Prozess-ID mit Benutzername (nichts als der Eigentümer des Prozesses). Wenn Sie wissen, was dieser Prozess ist, möchten Sie diesen Prozess vielleicht stoppen und dann den umount erneut versuchen.