Offiziell unterstützt der Raspberry Pi nur den SDHC-Standard (bis 32 GByte), nicht aber den SDXC-Standard für SD-Karten mit mehr Speicher. Das heißt aber nicht, dass es unmöglich ist, derartige SD-Karten zu verwenden. Da ich gerade einen DLNA-Server auf einem Pi-Zero einzurichten möchte, habe ich versucht, Raspbian auf eine 128-GByte-SD-Karte zu installieren — und siehe da: Probleme haben (wieder einmal) nur die Benutzer, die aus der Windows-Welt kommen …
Hintergründe
Es gibt zwei Arten, Raspbian zu installieren:
- NOOBS: Hier wird die SD-Karte FAT-formatiert, anschließend werden die NOOBS-Installationsdateien einfach auf die SD-Karte kopiert. Das ist anfängerfreundlich und auch unter Windows leicht zu bewerkstelligen.
-
Image: Bei dieser Variante wird das Raspbian-Image blockweise auf die SD-Karte kopiert — unter Linux üblicherweise mit
dd
. Das erfordert ein wenig technisches Wissen (richtiger Device-Name!) und setzt voraus, dass ein Windows- oder OS-X-Rechner zur Verfügung steht.
Die Image-Installation funktioniert unabhängig von der Größe der SD-Karte.
Probleme gibt es nur bei der NOOBS-Variante. Der SDXC-Standard sieht nämlich vor, dass auf SD-Karten mit mehr als 32 GByte ein exFAT-Dateisystem einzusetzen ist. An sich ist das durchaus vernünftig, nur: Der Boot-Vorgang des BCM2835/BCM2836-Chips setzt voraus, dass sich die Boot-Dateien auf der ersten Partition der SD-Karte in einem FAT-Dateisystem befinden. Mit anderen Worten: Der NOOBS-Bootvorgang scheitert, wenn große SD-Karten ein exFAT-Dateisystem verwenden.
Große SD-Karten FAT-formatieren
Nun denn, dann formatieren wir die SD-Karte eben mit einem FAT-Dateisystem, bevor wir die NOOBS-Dateien dorthin kopieren. Am einfachsten gelingt dies unter OS X: Im Festplattendienstprogramm wählen Sie Löschen und wählen dann MS-DOS-Dateisystem (FAT) aus.
Wenig Probleme gibt es auch unter Linux. Die folgenden Kommandos gelten unter der Annahme, dass /dev/sdc
das Device der SD-Karte ist.
umount /dev/sdc*
parted /dev/sdc mklabel msdos
parted /dev/sdc 'mkpart primary fat32 1MiB -1MiB'
mkfs.vfat -F 32 /dev/sdc1
Einzig Windows muckt: Wenn Sie die SD-Karte im Explorer auswählen und zu formatieren versuchen, stehen nur die Dateisysteme NTFS und exFAT zur Wahl. Ebenso inflexibel ist das format
-Kommando, das in cmd.exe
ausgeführt werden kann. Auch keine Hilfe ist das offizielle Formatierungsprogramm der SD Association (Download-Link) — es hält sich konsequenterweise an den SDXC-Standard und verwendet ohne irgendwelche Einstelloptionen exFAT.
Erfolg hatte ich schließlich mit dem kostenlosen (GPL!) Programm guiformat.exe
von Ridgecrop. KLicken Sie auf der guiformat-Seite einfach auf den Screenshot, um das winzige, in eine ZIP-Datei verpackte Programm hinunterzuladen.
NOOBS-Installation
Egal, unter welchem Betriebssystem Sie die SD-Karte formatiert haben: Die nachfolgende NOOBS-Installation verläuft vollkommen unkompliziert.
Während der Installation verkleinert das Installationsprogramm die FAT-Partition und richtet diverse neue Partitionen ein. Raspbian landet schließlich auf der 118 GByte großen Partition /dev/mmcblk0p6
.
pi@test128:~ $ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 119,1G 0 disk
mmcblk0p1 179:1 0 1023,5M 0 part
mmcblk0p2 179:2 0 1K 0 part
mmcblk0p3 179:3 0 32M 0 part /media/pi/SETTINGS
mmcblk0p5 179:5 0 63M 0 part /boot
mmcblk0p6 179:6 0 118G 0 part /
pi@test128:~ $ df -h
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
/dev/root 116G 3,3G 107G 3% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 13M 451M 3% /run
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 463M 0 463M 0% /sys/fs/cgroup
/dev/mmcblk0p5 63M 20M 44M 31% /boot
tmpfs 93M 0 93M 0% /run/user/1000
/dev/mmcblk0p3 27M 1,6M 24M 7% /media/pi/SETTINGS
Kurzfassung
Alle, die Raspbian oder andere Pi-Betriebssysteme als Image-Datei auf eine SD-Karte kopieren, können große SDXC-Karten wie herkömmliche SDHC-Karten verwenden.
NOOBS-Freunde müssen den Datenträger zuerst mit einem FAT32-Dateisystem formatieren. Unter OS X und Linux gelingt das mit Bordmitteln, nur unter Windows ist ein spezielles Formatierprogramm erforderlich (z.B. guiformat).
Einschränkungen
Es gibt im Internet diverse Berichte, dass die Installation auf sehr großen SD-Karten gescheitert ist. Ich habe meine Tests nur mit einer einzigen SD-Karte durchgeführt, und zwar mit diesem Sandisk-Modell. Ich sehe zwar keinen Grund, warum es nicht mit anderen SD-Karten ebenso funktioniert, aber versprechen kann ich natürlich nichts. Werfen Sie gegebenenfalls einen Blick auf die folgende Seite, wo einige offensichtlich inkompatible Modelle aufgelistet werden.
Guten Tag Herr Kofler.
Ob meine Frage so richtig hierher passt, weiß ich nicht so recht. Ich will es mal versuchen.
Vor einigen Tagen hatte ich mich entschlossen, meinen RPi neu aufzusetzen. Also habe ich die micro-SD Karte (16 GB, Samsung) in mein W10 Notebook eingelegt und wollte diese löschen. Funktioniert nicht. Formatieren: Funktioniert nicht. Partitionen löschen: funktioniert nicht. Unter Linux wird es auch nicht besser. Auf einem anderen Notebook: funktioniert nicht.
Vor dem Hintergrund eine 128 GB micro-SD Karte nutzen zu wollen, frage ich mich, ob durch das Aufspielen von Raspian die Karte in irgendeiner Form gesperrt wird?
Ich habe mit dem Formatieren auch schon Probleme gehabt:
Windows/OS X: versuchen Sie es mit dem SD-Formatter der SD Association: https://www.sdcard.org/downloads/formatter_4/
Linux: Da klappt es meiner Erfahrung nach im Terminal am besten, wie im obigen Blog-Beitrag beschrieben (nicht die Gnome-Werkzeuge verwenden!).
Vorsicht: SD-Karten bzw. -Adapter in der Normalgröße haben einen Schreibschutz-Schieber. Wenn der aktiv ist, geht natürlich gar nichts. Bei Micro-SD-Karten gibt es diesen Schutz (zum Glück) nicht mehr.