Homepage Wiki Forum Buy

SD-Karte wechseln

Aus GNUBLIN

Inhaltsverzeichnis


Dieser Artikel beschreibt wie man die 2GB SD-Karte durch eine größere ersetzen kann. Hierfür wird lediglich ein Hostrechner mit Linux benötigt.

Vorbereitung

Software installieren

Zuerst installiert man sich auf dem Hostrechner gparted mit folgendem Befehl:

sudo apt-get install gparted

Dieses Programm ist ein grafischer Partitionseditor mit dem wir die neue SD-Karte vorbereiten.

Neue SD-Karte vorbereiten

Zuerst wird die neue SD-Karte an den PC/laptop angesteckt und gparted mit folgendem Befehl gestartet (Darauf achten, dass die SD-Karte nicht gemounted ist.):

sudo gparted

Anschließend sucht man sich oben rechts bei der Geräteauswahl die SD-Karte aus:

Gparted 001.jpg

Nun klickt man oben auf Device und dann auf Create Partition Table und bestätigt die Abfrage, wenn man sich sicher ist, dass es das richtige Gerät ist und die Daten auf dem Gerät gelöscht werden können, mit ja.

Nun sieht das ganze so aus:

Gparted 002.jpg

Anschließend klicken wir ganz unten auf unallocated und danach auf new in der Menüleiste oben.

Nun öffnet sich das folgende Fenster:

Gparted 003.jpg

Hier muss folgendes eingestellt werden:

  1. 16 MiB vor der ersten Partition Platz lassen (erste Option)
  2. Bei "Erstellen als" muss Primäre Partition ausgewählt werden
  3. Bei Filesystem sollte ext3 ausgewählt werden

Anschließend klickt man auf add und die erste Partition sollte eingestellt worden sein.

Nun klicken wir unten wieder auf unallocated und erneut auf New in der Menüleiste.

Daraufhin öffnet sich das folgende Fenster:

Gparted 004.jpg

Hier ist wichtig dass man das filesystem auf unformatted stellt und der Rest sollte von haus aus korrekt eingestellt sein. Mit einem Klick auf Add wird auch diese Partition eingestellt.

Zuletzt müssen wir in der Menüleiste noch auf den grünen Haken klicken, damit unsere Einstellungen auch auf die SD-Karte geschrieben werden. Die Abfrage ob wir uns sicher sind bestätigen wir mit ja bzw. ok.

Wenn alles fertig ist, sollte die SD-Karte folgendermaßen aussehen. (Die Größe der ersten Partition variiert natürlich, je nach Größe der Speicherkarte)

Gparted 005.jpg

Nun müssen wir nur noch die Bootloaderpartition bootbar machen. Dies kann man ganz einfach erledigen indem man einen rechtsklick auf die Bootloaderpartition macht und anschließend auf Manage Flags klickt. Anschließend öffnet sich das folgende Fenster in welchem bei boot ein Häckchen gesetzt werden muss.

Gparted 007.jpg

Das wars auch schon mit der Vorbereitung der neuen SD-Karte. Weiter gehts mit dem sichern der alten SD-Karte.

Alte SD-Karte sichern

Bootloader sichern

Als nächstes stecken wir die alte SD-Karte an den Hostrechner und sichern den Bootloader. Hierfür muss man ersteinmal herausfinden auf welcher Partition sich der Bootloader befindet. Dies kann man entweder mit gparted (anfänger) machen oder mithilfe von dmesg (fortgeschritten).

Starten wir gparted erneut und wählen die SD-Karte oben rechts aus, so können wir daraus die Partition des Bootloaders ablesen.

Gparted 006.jpg

Hier sieht man, dass sich die Bootloader Partition auf /dev/sdd2 befindet. (Die Bootloaderpartition ist immer diejenige mit "unbekanntem" Filesystem)

Nun können wir in einem Terminal die Bootloaderpartition sichern:

sudo dd if=/dev/sdd2 of=/tmp/bootpartition.img

Der Parameter if=... besagt welches die Bootloaderpartition ist und der Parameter of=... wohin das Image gespeichert wird. Die Pfade müssen natürlich angepasst werden, da zB. die Datei bootpartition.img in diesem Beispiel im /tmp Verzeichnis angelegt wird und bei einem Neustart gelöscht wird

Root-Filesystem sichern

Als nächstes sichern wir das Filesystem, hierfür muss die SD-Karte gemounted werden z.B mit einem Dateimanager (Nautilus,dolphin etc..).

Ist die SD-Karte gemounted so können wir mit dem nächsten Schritt fortfahren und das Filesystem mithilfe von tar packen.

cd /media/f24f3248-0455-4557-b1bc-377a297242a9

Bei diesem Befehl muss natürlich das Label bzw das Verzeichnis angepasst werden.Hierfür kann man im Terminal den Anfang des Befehls eintippen also cp /media/ und anschließend durch drücken von TAB angezeigt bekommen welche Verzeichnisse sich in /media befinden.

Mit folgendem Befehl wird das rootfs dann zu der Datei rootfs.tar.gz ins Verzeichnis /tmp gepackt.

sudo tar -zvc -f /tmp/rootfs.tar.gz *


Neue SD-Karte fertigstellen

Bootloader kopieren

Nun stecken wir wieder die neue SD-Karte ein, und achten darauf dass sie nicht gemounted wird. Anschließend kann mit dem folgenden Befehl der Bootloader kopiert werden.

sudo dd if=/tmp/bootpartition.img of=/dev/sdd2

Bei diesem Befehl muss natürlich beachtet werden, dass der Parameter if=... auf das zuvor erstellte Backup des Bootloaders zeigt, und der Parameter of=... auf das richtige Device zeigt (sdd2, sde2, sdf2, etc.).

Root-Filesystem kopieren

Möchten wir nun das Rootfs wieder auf die SD-Karte bringen, müssen wir die SD-Karte wieder mounten und anschließend den folgenden Befehl eingeben:

sudo tar xvzf /tmp/rootfs.tar.gz -C /media/f24f3248-0455-4557-b1bc-377a297242a9

Hierbei muss natürlich wieder beachtet werden, dass der Pfad /media/f24f3248-0455-4557-b1bc-377a297242a9 und /tmp/rootfs.tar.gz angepasst wird.

Mit dem nachfolgenden Befehl stellen wir sicher, dass die Daten alle korrekt auf die SD-Karte geschrieben wurden.

sync

Anschließend müssen wir nur noch die SD-Karte un-mounten (Dateimanager, oder per Hand) und die Karte ist einsatzbereit.

In anderen Sprachen