Es kann verschiedene Gründe geben, das Dateisystem eines Raspberry Pi mit einer Festplatte oder einem USB-Stick zu erweitern. Es ist nicht allzu schwer, passiert jedoch nicht so automatisch und von alleine, wie unter Windows.
Hier ist etwas Vorbereitung nötig.
Zuerst müssen ggf. die Dateisystemtreiber installiert werden. Die FAT32, NTFS und HFS+ dürften für die meisten Zwecke ausreichen:
sudo apt-get install ntfs-3g hfsutils hfsprogs
Dann muss noch ein Mount-Point erstellt werden. Z.B.:
sudo mkdir /media/usb1
Jetzt den Stick einstecken und die Ausgaben in /var/log/messages ansehen. Dort erfährt man, unter welchen Gerätenamen der Stick verfügbar ist. Es dürfte für den ersten Stick sda lauten. Da mein Usbstick wie eine Festplatte partitioniert ist, lauet Gerätename sda1.
Ausprobieren kann man folgenden Befehl verwenden:
sudo mount -t vfat -o iocharset=utf8,uid=pi,gid=pi /dev/sda1 /media/usb1/
Der Parameter vfat steht für Stick-Dateisystem FAT32, ntfs-3g für NTFS und hfsplus entsprechend für HFS+ und ohne iocharset=utf8 konnte ich keine Umlaute in Dateinamen verwenden.
Wenn alles richtig ist, wird der Stick-Inhat unter /media/usb1 eingebunden.
Zum 'Auswerfen' dient dann folgendes Befehl:
sudo umount /media/usb1
Damit der Stick nach einem Neustart automatisch eingebunden wird, muss ein entsprechender Eintrag in fstab eingetragen werden. Am besten mit UUID, gilt der Eintrag genau unf nur für diesen Stick. Die UUID kann mit dem Befehl blkid ermittelt werden:
sudo blkid /dev/sda1
In meinem Fall lautet die Ausgabe: /dev/sda1: UUID="DC72-5229" TYPE="vfat"
Jetzt kann die fstab entsprechend erweitert werden (sudo nano /etc/fstab
). Als letzte Zeile soll dafür folgendes eingefügt werden:
UUID=DC72-5229 /media/usb1/ vfat defaults,auto,users,rw,iocharset=utf8,uid=pi,gid=pi 0
Noch den Stick per Samba freigeben und fertig ist ein einfacher (und recht langsamer) NAS.
Nachrag:
Beim Einrichten von automatischen Backup bin ich auf das Problem mit den Dateien gestoßen, wenn sie größer als 4GB sind. Um dem zu entgehen, habe ich samba gestoppt (sudo service samba stop
), den Stick abgemeldet (sudo umount /media/usb1
), auf dem Windowsrechner in NTFS-Format konvertiert (format G: /fs:ntfs
), fstab entsprechend angepasst und alles wieder gemountet und gestartet.
Eintrag in fstab (UID hat sich beim Konvertieren geändert):
UUID=8804583D04583104 /media/usb1/ ntfs-3g defaults,uid=alex,gid=alex,umask=000 0 0
Ich musste jedoch feststellen, dass die Performance (im Vergleicht zu FAT32) mieserabel ist, die CPU-Auslastung ist sehr hoch. Das Auslesen der kompletten SDCard (8GB) hat die 6-fache Zeit benötigt.
Ich werde wohl mit ext4 probieren.
Nachtrag 2:
Da die Performance alles anderes als befriedigend war, habe ich den Stick mit ext4 formatiert.
Zuerst müssen Services gestoppt werden, die auf den Stick zugreifen (samba, pyload). Danach wird das Dateisystem ausgehängt (sudo umount /media/usb1
)
Mit mkfs -t ext4 /dev/sda1
wird das Dateisystem initialisiert (Auchtung! Alle Daten auf den Stick werden gelöscht!).
sudo blkid /dev/sda1
liefert die neue UUID. Somit lautet der neue Eintrag für fstab folgendermaßen:
UUID="fda0064d-bb36-46bd-b78b-7f4ed3aa31c4" /media/usb1/ ext4 defaults,noatime 0 0
Hier können keine uid und gid bei mount angegeben werden, daher müssen die notwendigen Rechte (nach dem mounten) mit chown und chmod gesetzt werden: sudo chown alex:alex -R /media/usb1
und sudo chmod a+w -R /media/usb1
. Danach noch wieder samba und pyload starten und fertig ;)
Die (Dauer)Schreibrate (ermittelt mit dd) hat sich gegenüber ntfs von ca. 2MB/s auf ca. 12MB/s erhöht.
Kommentare (0)