SD-Kartentransfer im laufenden Betrieb auf SSD-Laufwerk

Warum sollte man das Dateisystem des Raspberry Pi's auf ein SSD-Laufwerk übertragen?

a) die benutzte SD-Karte im PI war zu klein (nur 4 - 8 GB) und läuft langsam voll
b) man benötigt mehr Speicherplatz und will nicht eine größere SD-Karte einsetzen
c) der Datentransfer soll schneller erfolgen als von SD-Karte
d) im Dauerbetrieb bei vielen Schreibzugriffen überlebt eine SD-Karte nicht lange

Schaffen Sie sich eine 1 - 4 TB große SSD an, die per USB3.0 einmal viel mehr Speicherplatz bietet,
die Daten auch viel schneller bereitstellen kann als eine SD-Karte und jahrelang im Einsatz bleiben kann.

Ablauf des Dateitransfers in laufenden Betrieb:

Hierzu hat Login-Techblog ein eindrucksvolles Youtube-Video gemacht, was man 1:1 ausführen kann! Zum Video
Hier die einzelnen Schritte des Kopiervorgangs!

a) Die SSD-Festplatte an den PI anschließen (vorher die Platte mit extFat oder besser noch ext4 formatieren).
b) Sich per SSH (via SSH-Client z.B. mit Bitvise SSH-Client oder Putty auf den PI auf die Konsole einloggen.
c) Gib in der Konsole den folgenden Befehl ein.:
            lsblk
d) zeigt eine hierarchische Liste sämtlicher angeschlossener Laufwerke, wobei sda die große externe SSD-Festplate bezeichnet und
mmcblk0 die z.B. 64 GB SD-Karte mit dem kleinen Unterverzeicnis für /boot und der größeren Rootpartion / ,
in dem sich das gesamte Betriebssystem (Dietpi mit allen Programmen) befindet.
Nun müssen alle Daten von der SD-Karte mmcblk0 auf sda kopiert werden.
Dafür müssen alle aktiven Dienste gestoppt und die SWAP-Funktion mit folgenden Konsolenbefehlen gestoppt werden.
e) dietpi-services stop
    swapoff

f) Nach Stop der Dienste können alle Daten mit dem Befehl dd 1:1 auf die Festplatte kopiert werden.
Passe die Bezeichnung der SD-Karte z.B. mmcblk0 auf die oben mit lsblk ermittelten Bezeichnung an!
Die Befehlsoption "bs=1M" gibt die Blockgröße der übertragenen Daten an; of=Zieldatei und mit "status=progress"
wird der Fortschritt des Kopierprozesses angezeigt, der gut eine halbe Stunde dauern kann!
Gib nun folgende Befehlszeile für den Kopierprozess in die Konsole ein:
g)    dd if=/dev/mmcblk0 of=/dev/sda bs=1M status=progress
Nachdem die gesamten Daten auf die SSD-Platte kopiert wurden, muss der PI heruntergefahren werden.
Gib dazu folgenden Konsolenbefehl ein!
h)    shutdown -h now
Entferne das Stromkabel vom PI und entnimm die SD-Karte aus dem PI, danach den PI wieder mit Strom versorgen,
wonach der PI nun von der SSD neu bootet.
i) Prüfe nun, wie das Dateisystem auf der SSD angelegt wurde, mit folgendem bekannten Befehl.
    lsblk
Du wirst feststellen, dass das Hauptverzeichnis / auf sda2 nur die Größe der SD-Karte (knapp 60 GB) hat.
Um den kompletten Platz der SSD nutzen zu können, muss das Filesystem mit folgendem Befehl vergrößert werden:
    dietpi-drive_manager

dietpi-drivemanager
Wähle im Drivemanager die oberste Position / aus, bestätige mit ok!
Im nächsten Auswahlfenster wähle resize aus und bestätige mit ok!
Bestätige im nächsten Fenster, dass das Rootfilesystem mit resize vergrößert werden soll und lass den PI rebooten.
Eine erneute Überprüfung des Filesystems mit lsblk in der Konsole zeigt, das die gesamte Festplattenplatz zur Verfügung steht!

Im folgenden Bild sieht man, dass der komplette Bereich der 2 TB großen SSD genutzt werden kann und nicht nur das ursprünglich 64 GB große SD-Kartenimage!

Überprüfung der Filegröße des Datenträgers

zurück zur Startseite