Aktionen

NTFS Festplatte am Raspberry Pi mounten

Aus znilwiki

Ich habe da noch eine externe 2,5" USB-Festplatte mit 1TB die ich mal am Raspberry Pi testen wollte.
Die Platte ist mit NTFS formatiert - und sollte es auch bleiben.



1 NTFS Support installieren

Ist nicht schwer - ein schlichtes

apt-get install ntfsprogs

und schon kann es losgehen


2 Festplatte anschliessen und finden

Steckt die Platte an den USB-Anschluss eures Raspberry Pi ... und dann?
Und dann müssen wir diese suchen ...


2.1 Festplatte finden über /var/log/messages

macht ein

cat /var/log/messages

und ihr erhaltet etwas wie das hier:

Dec  1 19:32:31 piap kernel: [    3.291853] usb 1-1.3: new high-speed USB device number 4 using dwc_otg
Dec  1 19:32:31 piap kernel: [    3.423504] usb 1-1.3: New USB device found, idVendor=1058, idProduct=0748
Dec  1 19:32:31 piap kernel: [    3.434321] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=5
Dec  1 19:32:31 piap kernel: [    3.444359] usb 1-1.3: Product: My Passport 0748
Dec  1 19:32:31 piap kernel: [    3.451527] usb 1-1.3: Manufacturer: Western Digital
Dec  1 19:32:31 piap kernel: [    3.459009] usb 1-1.3: SerialNumber: 575836314536323937393138
Dec  1 19:32:31 piap kernel: [    3.477689] scsi0 : usb-storage 1-1.3:1.0
Dec  1 19:32:31 piap kernel: [    4.482760] scsi 0:0:0:0: Direct-Access     WD       My Passport 0748 1015 PQ: 0 ANSI: 6
Dec  1 19:32:31 piap kernel: [    4.534221] scsi 0:0:0:1: Enclosure         WD       SES Device       1015 PQ: 0 ANSI: 6
Dec  1 19:32:31 piap kernel: [    4.545814] sd 0:0:0:0: [sda] 1953458176 512-byte logical blocks: (1.00 TB/931 GiB)
Dec  1 19:32:31 piap kernel: [    4.582417] sd 0:0:0:0: [sda] Write Protect is off
Dec  1 19:32:31 piap kernel: [   11.472453]  sda: sda1
Dec  1 19:32:31 piap kernel: [   11.505777] sd 0:0:0:0: [sda] Attached SCSI disk

Wir sehen meine "WD My Passport" Festplatte - und in der Fett gedruckten Zeile lesen wir 'sda1' - das ist Angabe die wir suchen!



2.2 Festplatte finden über dmesg

Einfach den Befehl

dmesg

eingeben, da kommt im Prinzip das gleiche wie zuvor:

[    4.482760] scsi 0:0:0:0: Direct-Access     WD       My Passport 0748 1015 PQ: 0 ANSI: 6
[    4.534221] scsi 0:0:0:1: Enclosure         WD       SES Device       1015 PQ: 0 ANSI: 6
[    4.545814] sd 0:0:0:0: [sda] 1953458176 512-byte logical blocks: (1.00 TB/931 GiB)
[    4.582417] sd 0:0:0:0: [sda] Write Protect is off
[    4.590098] sd 0:0:0:0: [sda] Mode Sense: 47 00 10 08
[    4.611733] sd 0:0:0:0: [sda] No Caching mode page present
[    4.620076] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    4.654537] sd 0:0:0:0: [sda] No Caching mode page present
[    4.680196] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   11.472453]  sda: sda1
[   11.486978] sd 0:0:0:0: [sda] No Caching mode page present
[   11.496780] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   11.505777] sd 0:0:0:0: [sda] Attached SCSI disk




2.3 Festplatte finden über /dev/

Einfach ein

ls -l /dev/sd*

gibt eine Ausgabe wie diese:

brw-rw---T 1 root floppy 8, 0 Jan  1  1970 /dev/sda
brw-rw---T 1 root floppy 8, 1 Jan  1  1970 /dev/sda1

Die erste können wir Ignorieren, die letzte ist es!



3 Festplatte mounten

Mounten ist der englische Begriff dafür die Festplatte einzubinden (ich übersetze das mal mit 'to mount' = 'etwas montieren')
Wir wissen das die Platte in diesem Fall sda1 heisst.
Zuvor brauchen wir jedoch einen Ort = Verzeichnis welches dann für die Festplatte steht.
Typische Ort dafür sind

/mnt/...
/media/...

'mnt' ist dabei eher für "interne" Medien gedacht, 'media' eher für externe - na gut, nehmen wir 'media' und erstellen uns ein neues Verzeichnis

mkdir /media/WDMyPassport

Den Namen könnt Ihr völlig frei wählen.

In diese neue, leere (!!!) Verzeichnis mounten wir nun die Festplatte:

mount -t ntfs -o rw /dev/sda1 /media/WDMyPassport




4 Mounten überprüfen

Ob das geklappt habt können wir auf mehrere Arten testen:



4.1 mtab

cat /etc/mtab

ergibt eine Liste an (wahrscheinlich) deren Ende unsere neuer Platte steht:

rootfs / rootfs rw 0 0
/dev/root / ext4 rw,noatime,data=ordered 0 0
devtmpfs /dev devtmpfs rw,relatime,size=240492k,nr_inodes=60123,mode=755 0 0
tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=49752k,mode=755 0 0
tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /run/shm tmpfs rw,nosuid,nodev,noexec,relatime,size=99500k 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620 0 0
/dev/mmcblk0p5 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=cp437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0
fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
/dev/sda1 /media/WDMyPassport fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0




4.2 ls oder ll oder ls -l oder ...

Oder wir schauen einfach mal ins Inhaltsverzeichnis

ls -l /media/WDMyPassport
insgesamt 176
drwxrwxrwx 1 root root  49152 Mai 16  2013 Test1
drwxrwxrwx 1 root root 131072 Aug 31 14:01 Test2
drwxrwxrwx 1 root root      0 Mai 25  2013 $RECYCLE.BIN
drwxrwxrwx 1 root root      0 Mai 12  2013 System Volume Information




4.3 df -l

oder wie schauen uns die Datenträger an: (-l steht für "nur lokale Dateisysteme", -h für "Lesbar für Menschen" - dann nimmt der MByte und Gigybyte)

df -l -h


Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
rootfs           58G    2,1G   53G    4% /
/dev/root        58G    2,1G   53G    4% /
devtmpfs        235M       0  235M    0% /dev
tmpfs            49M    236K   49M    1% /run
tmpfs           5,0M       0  5,0M    0% /run/lock
tmpfs            98M       0   98M    0% /run/shm
/dev/mmcblk0p5   60M     19M   41M   31% /boot
/dev/sda1       932G    792G  140G   85% /media/WDMyPassport




5 Kleiner Benchmark der Leistung?

Nur aus Spaß - mal eben testen wie schnell die Festplatte denn ist.
Zuerst ins Verzeichnis der Festplatte:

cd /media/WDMyPassport/

Und dann der Benchmark den ich auch für den Test der SD-Karten einsetze (Gemäß http://elinux.org/RPi_SD_cards#Terminal_Commands, nur angepasst)

sync; time dd if=/dev/zero of=./test.tmp bs=500K count=1024; time sync
dd if=./test.tmp of=/dev/null bs=500K count=1024
rm ./test.tmp


Bei mir ergab das folgendes:

1024+0 Datensätze ein
1024+0 Datensätze aus
524288000 Bytes (524 MB) kopiert, 134,989 s, 3,9 MB/s

real    2m15.308s
user    0m0.020s
sys     0m13.630s

real    0m1.021s
user    0m0.000s
sys     0m0.050s
root@piap /media/WDMyPassport #  dd if=./test.tmp of=/dev/null bs=500K count=1024
1024+0 Datensätze ein
1024+0 Datensätze aus
524288000 Bytes (524 MB) kopiert, 25,656 s, 20,4 MB/s

Ja, die Schreibrate ist jämmerlich, beim Lesen wird es aber für Videos etc. reichen


6 Unmounten der Festplatte

Tja, hat ja alles gut geklappt - und nun wieder ab damit:

umount /dev/sda1

prüfen können wir das wieder mit dem

df -l -h

da sollte der letzte Eintrag dann wieder fehlen.

Kommt da ein

umount: /media/WDMyPassport: device is busy.
       (In some cases useful info about processes that use
        the device is found by lsof(8) or fuser(1))

dann geht z.B. mit

cd /

vorher wieder aus dem Verzeichnis raus - bzw. irgendetwas hat irgendwas noch auf der Platte offen oder greift darauf zu