Allgemein
Knowledge Base
- Neue Struktur (In Arbeit)
- Computertechnisches
Community
Privat
/ HomePage / Computer / Hardwareübersicht / PC-Zentraleinheit / Festplatte
Wer kennt das nicht: wie mounte ich mal eben schnell eine fremde Festplatte?
Dazu nur soviel, ist USB richtig installiert und wird jetzt die Festplatte angeschlossen, sollte sie zumindest per fdisk -l
sichtbar sein. Sonst fehlt irgendein USB Treiber. ohci_hcd, uhci_hcd, ehci_hcd
Für eigene Festplatten die immer wieder gemountet werden sollen, kann man Einträge in die /etc/fstab
vornehmen. Das hilft aber nicht wirklich, wenn häufiger fremde Festplatten angeschlossen werden, da jeder seiner Platte selbst ein Partionschema zuordnen kann. Das ist nicht unbedingt immer eine primäre Partion. Zudem stimmt die Reihenfolge der Platten nicht immer überein. So bekommt die zuerst angeschlossene Platte per USB das Device /dev/sda, die zweite Platte /dev/sdb und so weiter. Nach einem reboot kann es aber sein, dass die Reihenfolge umgekehrt ist. Daraus folgt das es einfach zu kompliziert ist, schnell mal eine Platte anschließen und mal eben zu mounten.
Beispiel von fdisk
zeigt alle angeschlossenen Platten.
# fdisk -l
Platte /dev/hda: 80.0 GByte, 80026361856 Byte 255 Köpfe, 63 Sektoren/Spuren, 9729 Zylinder Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes Gerät boot. Anfang Ende Blöcke Id System /dev/hda1 1 243 1951866 b W95 FAT32 /dev/hda2 * 244 250 56227+ 83 Linux
[...]
Platte /dev/sda: 80.0 GByte, 80026361856 Byte 255 Köpfe, 63 Sektoren/Spuren, 9729 Zylinder Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes Gerät boot. Anfang Ende Blöcke Id System /dev/sda1 1 9729 78148161 c W95 FAT32 (LBA)
Es werden alle angeschlossenen Laufwerke gezeigt, was mitunter zu einer recht langen Ausgabe führen kann. Desweiteren ist hier leider nicht ersichtlich, ob einige Devices Geräte nicht doch schon irgendwohin gemountet sind. Das kann man dann per mount -l
sehen.
# mount -l
/dev/hda5 on / type ext3 (rw,noatime) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) udev on /dev type tmpfs (rw,nosuid) devpts on /dev/pts type devpts (rw) /dev/hda7 on /space/local/Media1 type ext3 (rw,noatime) shm on /dev/shm type tmpfs (rw,nosuid,nodev) /var/portage.loop on /usr/portage type reiserfs (rw,noatime,loop=/dev/loop0) usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85) svcdir on /var/lib/init.d type tmpfs (rw,mode=0755,size=2048k) nfsd on /proc/fs/nfs type nfsd (rw) rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) automount(pid7322) on /mynet type autofs (rw,fd=4,pgrp=7322,minproto=2,maxproto=4) automount(pid7318) on /misc type autofs (rw,fd=4,pgrp=7318,minproto=2,maxproto=4) /var/db.loop on /var/db type reiserfs (rw,loop=/dev/loop1)
Auch hier wieder das Problem, das die Ausgabe schnell recht lang ausartet und man nicht sofort sehen kann, wo welche Devices gemountet sind.
Ich Lars habe jetzt mal ein kleines Perl Script
geschrieben, das ein wenig Linderung verspricht. Siehe Files
Was kann das Tool:
fdisk -l
um die vorhandenen Partionen zu identifizieren.
mount -l
um zu sehen welche Devices wohin gemountet sind.
/etc/fstab
um zu sehen, wo nicht gemountete Devices hingemountet werden könnten.
Es werden die gemounteten und die ungemounteten Devices getrennt ausgegeben. Als kleine Hilfe wird die Größe der Partion angegeben und die Größe der gesamten Festplatte. So wie man die Platte gekauft hat. Evtl. die gefundenen Mountpoints. Bei den nicht gemounteten Partionen werden nummern in eckigen Klammern davor ausgegeben.
Beispiel:
# ftmount.pl
Currently mounted partions: /dev/hda5 10.0GB 80.0GB '/' /dev/hda7 58.0GB 80.0GB '/space/local/Media1' Currently not mounted partions: [1] /dev/hda1 2.0GB 80.0GB [2] /dev/hda2 57.6MB 80.0GB '/boot' [3] /dev/hda6 10.0GB 80.0GB [4] /dev/sda1 80.0GB 80.0GB '/mnt/usbstick'
Hier zu sehen, 2 Partionen sind gemountet, die anderen 4 Partionen sind gefunden worden und noch nicht in das Filesystem eingehängt, wobei zu 2 Partionen Mountpoints in der /etc/fstab
gefunden wurden.
ftmount.pl -m
mountet alle nicht gemounteten Devices, zu ihren Mountpoints oder /mnt
. Als kleine Hilfe werden nicht gefundene Mountpoints angelegt.
ftmount.pl -m X
mountet das mit X angegebene Devices, zu ihrem Mountpoint oder nach /mnt
falls kein expliziter Mountpoint gefunden wurde. X ist eine Zahl von 1 bis Anzahl nicht gemounteter Partionen, die vor den nicht gemounteten Partionen in eckigen Klammern angezeigt wird.
ftmount.pl -u
sollte alle hiermit erstellten Mounts wieder rückgängig machen.
Dieses Tool stellt nur eine bessere Hilfe dar, es ist kein Ersatz für das normale mount.
Recht praktisch.
Fragen, Anträge, Kommentare:
Elsni 21.04.2006 00:54 Uhr: Damit ich aber meine USB-Massenspeicher immer aufs gleiche Device gemoutet kriege, muß ich sicherlich für jedes Laufwerk eine UDEV-Regel erstellen, oder? Anmerkung: .pl dateien möglichst ohne .pl extension attachen, weil der webserver sie sonst bei klick ausführen will!
Lars 21.04.2006 07:15 Uhr: Das Mounten auf immer das selbe Device ist leider unmöglich, da es von der Reihenfolge abhängig ist in der die externen (USB|Firewire|Iomega Zip) Platten angestöpselt werden. Das heißt, die Platte die Du zuerst einsteckst landet in /dev/sda, die zweite dann in /dev/sdb und so weiter, wenn Du das System jetzt rebootest kann es sein, das die Platten nachher in der Reihenfoge vertauscht sind. Das nervt mich auch, deshalb zeigt mein Programm ja zumindest an, wie groß die Platten sind. Desweiteren ist damit das Mounten zu immer den selben Mountpoints unmöglich, da in der /etc/fstab
leider steht, welches Device wohin gemountet wird. Da gibt es keinen Namen
Vielleicht sollte ich noch den Disklabel anzeigen. Und ein Mounten zu einem Mountpoint über den Disknamen anbieten.
Zur .pl
Endung soviel: Es ist mein erster Wurf, es soll demnächst ein ebuild
dazu geben
FAT
Dateisysteme jetzt die Option shortname=winnt
gesetzt. Display the shortname as is mehr in der manpage zu mount. Noch eine Info meinerseits, da wir bequem sind, und ich immer nur genau ein Paket pflegen mag, CVS Source oder ein ebuild, habe ich einfach mal das ebuild mit in den Source Tree abgelegt. Erst mal für mich, um zu testen ob sowas überhaupt geht. Jetzt kann ich das ganze Sourcepaket in meinem CVS als ein Stück ablegen, ohne 2 verschiedene Dinge zu pflegen. ein make digest
baut mir dann compressed tar und erstellt im overlay portage tree ein neues ebuild, mit der entsprechenden Version.
FAT
in ihrem Dateisystemtyp tragen z.B. W95 FAT32
werden jetzt mit dem Parameter -o quiet
gemountet, damit kann man dann per FileManager mc
auch alle möglichen Dateien kopieren, ohne das mc
jedesmal meldet, das eine Operation wie chmod
nicht durchgeführt werden konnte. Da FAT sowas ja nicht unterstützt.
sudo
, zu installieren per emerge sudo
und dann per visudo
in die /etc/sudoers
folgendes eintragen:
<USERNAME> ALL=NOPASSWD:/usr/bin/ftmount.pl
Wobei <USERNAME> hier ein vorhandener Username sein muss. Schon funktioniert das überaus hilfreiche Programm auch ohne root access.
tune2fs -l DEVICE | grep "volume name"