Von USB-Stick/HDD booten
Verfasst: Fr 9. Aug 2013, 20:43
Ein fast jeder, der mit der Pi beginnt, benutzt SD Karten zur Speicherung des Betriebssystems und der Daten. Nach einer gewissen Zeit möchte man dann ein schnelleres und/oder größeres Speichermedium benutzen. Leider kann man die Pi nicht ohne SD Karte betreiben. Allerdings ist sie nur zum Bootzeitpunkt notwendig und es wird nur die Bootpartition der SD Karte benötigt. Sämtliche Betriebssystemdaten wie Benutzerdaten, die root Partition, können auf einer beliebigen Partition liegen.
Es sind relativ wenige Schritte notwendig um die existierende root Partition der SD Karte auf eine andere Partition umzukopieren und die SD Karte so zu ändern, dass danach nur noch die externe root Partition benutzt wird. Dieses kann eine Partieion eines USB Sticks oder auch eine Partition einer USB Platte sein.
Nach der Umstellung wird die existierende root Partition der SD Karte nicht mehr benutzt. Wichtig ist, dass zum Zeitpunkt der Umstellung nur eine weitere Platte bzw einen USB Stick an der Pi angeschlossen ist. Ansonsten kann es vorkommen, dass sich die aktuellen Partitionsdaten zum Zeitpunkt der Umstellung (z.B. /dev/sdc1) von denen wie sie nach einem Pi Reboot vorliegen (z.B. /dev/sda1) unterscheiden und die Pi nicht die richtige Datenpartition findet und nicht bootet.
Die folgenden Schritte sind notwendig für die Umstellung und können alle auf der Pi vorgenommen werden. Als Beispiel in den Befehlen wird die Beispielplatte /dev/sda und die Partition /dev/sda1 genommen und auf der Pi mit angeschlossenem weiteren USB Platte die Befehle ausgeführt werden. Dazu meldet man sich entweder direkt an der Pi mit Tastatur und Bildschirm an oder verbindet sich per ssh von einem anderen Rechner im lokalen Netz.
Wer die Schritte nicht manuell ausführen will kann auch ans Ende des Tutorials springen und findet dort einen Link auf ein Script welches die Umstellung automatisch vornimmt. Zwecks Verständnisses der Zusammenhänge ist es aber trotzdem sehr sinnvoll sich die folgenden Schritte anzusehen und zu verstehen.
Schritt 0:
Wichtig: Erstellen eines Backups der SD Karte zur Sicherheit. Wer Linux vertraut ist und die wichtige Originaldatei wie unten beschrieben sichert kann es aber auch lassen.
Ihr benoetigt:
Startet den DiskImager und schreibt das Wheezy Image auf die SD Karte (ueberspringt diesen Schritt wenn ihr schon ein funktionierenes Raspbian habt)
Schritt 2:
Die ISO nun auch auf den USB-Stick (||hdd) schreiben, wieder mit dem Disk Imager.
Schritt 3:
Schliesst die SD Karte an euern Windows PC an.
Die SD wird erkannt, oeffnet sie ueber den Arbeitsplatz und sucht nach der Datei "cmdline.txt".
Wenn ihr sie mit einem Text Editor oeffnet, dann steht dort irgendwo:
dieser Code verweist auf die SD Karte (mmcblk0p2).
Ihr aendert es nun um in:
"sda2" ist der Standardname fuer angeschlossene USB-Geraete.
Das selbe auch mit dem USBSTICK machen!
Schritt 4:
Steckt die SD-Karte in euer Raspberry Pi ein, schliesst den USB-Stick an und startet es.
Wenn ihr das Raspbian schonmal konfiguriert hattet, dann wird sich die Konfiguration nochmal oeffnen,
da es ja ein neues OS ist, naemlich das vom USB-Stick.
Schritt 5:
Jetzt muss noch die Groesse der Partition geaendert werden: (Scrollt bis 'Resize the SD Card Partitions')
http://www.oracle.com/technetwork/artic ... 04896.html
Bei interesse mache ich eine detailierte Beschreibung/Uebersetzung.
Schritt 6:
Nach der fertigen Konfiguration (Link zur Anleitung) gebt ihr mal im Terminal ein:
Dort seht ihr dann, dass der USB stick erkannt ist und ihr eine Menge Platz habt, kommt natuerlich darauf an, wie gross der USB-Stick ist 
(Schritt 7)
Wenn ihr mehrere Systeme benutzen wollt, besorgt euch mehr USB-Sticks und wiederholt Schritt 2.
Alternativ kann man hier ein Script runterladen, auf die Pi kopieren und dann nachdem das weitere USB Gerät angeschlossen wurde, ausführen. Es nimmt alle oben beschriebenen Schritte automatisch vor. Das o.g. Beispiel sieht dann wie folgt aus:
Das Script wurde mit einer anderen schnelleren SD Karte, einem USB Stick und einer USB Platte getestet. Es löscht definitiv keine Daten und kopiert nur die aktuelle Datenpartition auf die neue Partition. Falls doch irgendwas schief laufen sollte kann man durch Zurückkopieren der gesicherten /boot/cmdline.txt.sd auf die /boot/cmndline.txt immer wieder die alte originale Datenpartition auf der SD Karte benutzen. Danach muss man nur die Zielpartition wieder löschen und hat den alten Originalzustand.
Trotzdem gilt natürlich dass man zur Sicherheit immer vor solch einer Umstellung ein Backup machen muss um gegen Datenverlust gewappnet zu sein.
quellen: http://www.forum-raspberrypi.de/Thread- ... r-sd-karte
Es sind relativ wenige Schritte notwendig um die existierende root Partition der SD Karte auf eine andere Partition umzukopieren und die SD Karte so zu ändern, dass danach nur noch die externe root Partition benutzt wird. Dieses kann eine Partieion eines USB Sticks oder auch eine Partition einer USB Platte sein.
Nach der Umstellung wird die existierende root Partition der SD Karte nicht mehr benutzt. Wichtig ist, dass zum Zeitpunkt der Umstellung nur eine weitere Platte bzw einen USB Stick an der Pi angeschlossen ist. Ansonsten kann es vorkommen, dass sich die aktuellen Partitionsdaten zum Zeitpunkt der Umstellung (z.B. /dev/sdc1) von denen wie sie nach einem Pi Reboot vorliegen (z.B. /dev/sda1) unterscheiden und die Pi nicht die richtige Datenpartition findet und nicht bootet.
Die folgenden Schritte sind notwendig für die Umstellung und können alle auf der Pi vorgenommen werden. Als Beispiel in den Befehlen wird die Beispielplatte /dev/sda und die Partition /dev/sda1 genommen und auf der Pi mit angeschlossenem weiteren USB Platte die Befehle ausgeführt werden. Dazu meldet man sich entweder direkt an der Pi mit Tastatur und Bildschirm an oder verbindet sich per ssh von einem anderen Rechner im lokalen Netz.
Wer die Schritte nicht manuell ausführen will kann auch ans Ende des Tutorials springen und findet dort einen Link auf ein Script welches die Umstellung automatisch vornimmt. Zwecks Verständnisses der Zusammenhänge ist es aber trotzdem sehr sinnvoll sich die folgenden Schritte anzusehen und zu verstehen.
Schritt 0:
Wichtig: Erstellen eines Backups der SD Karte zur Sicherheit. Wer Linux vertraut ist und die wichtige Originaldatei wie unten beschrieben sichert kann es aber auch lassen.
Ihr benoetigt:
- Eine SD mit Raspbian
- einen USB stick
- oder USB hdd
- Windows PC
- win32diskimager download
- wheezy-raspbian download
Startet den DiskImager und schreibt das Wheezy Image auf die SD Karte (ueberspringt diesen Schritt wenn ihr schon ein funktionierenes Raspbian habt)
Schritt 2:
Die ISO nun auch auf den USB-Stick (||hdd) schreiben, wieder mit dem Disk Imager.
Schritt 3:
Schliesst die SD Karte an euern Windows PC an.
Die SD wird erkannt, oeffnet sie ueber den Arbeitsplatz und sucht nach der Datei "cmdline.txt".
Wenn ihr sie mit einem Text Editor oeffnet, dann steht dort irgendwo:
Code: Alles auswählen
root=/dev/mmcblk0p2
Ihr aendert es nun um in:
Code: Alles auswählen
root=/dev/sda2
Das selbe auch mit dem USBSTICK machen!
Schritt 4:
Steckt die SD-Karte in euer Raspberry Pi ein, schliesst den USB-Stick an und startet es.
Wenn ihr das Raspbian schonmal konfiguriert hattet, dann wird sich die Konfiguration nochmal oeffnen,
da es ja ein neues OS ist, naemlich das vom USB-Stick.
Schritt 5:
Jetzt muss noch die Groesse der Partition geaendert werden: (Scrollt bis 'Resize the SD Card Partitions')
http://www.oracle.com/technetwork/artic ... 04896.html
Bei interesse mache ich eine detailierte Beschreibung/Uebersetzung.
Schritt 6:
Nach der fertigen Konfiguration (Link zur Anleitung) gebt ihr mal im Terminal ein:
Code: Alles auswählen
df -h

(Schritt 7)
Wenn ihr mehrere Systeme benutzen wollt, besorgt euch mehr USB-Sticks und wiederholt Schritt 2.
Alternativ kann man hier ein Script runterladen, auf die Pi kopieren und dann nachdem das weitere USB Gerät angeschlossen wurde, ausführen. Es nimmt alle oben beschriebenen Schritte automatisch vor. Das o.g. Beispiel sieht dann wie folgt aus:
Code: Alles auswählen
sudo bash raspiSD2USB.sh
--- raspiSD2USB.sh V0.1 ---
--- Aktuell ist auf der SD Karte /dev/mmcblk0p2 die Datenpartition und ihr Filesystemtyp ist ext4
--- Mögliche neue Datenpartitionen
--- 1) /dev/sda1
--- Welche Datenpartition soll benutzt werden (1-1) 1
--- Verbinde /dev/mmcblk0p2 und /dev/sda1...
--- Soll /dev/sdb1 wirklich ab sofort von der SD Karte benutzt werden [j/N] j
--- Kopiere die alte Datenpartition /dev/mmcblk0p2 auf die neue Partition /dev/sda1. Bitte Geduld ...
--- Die neue fstab wird angepasst
--- Backup von cmdline.txt.sd wird angelegt
--- Boot file cmdline.txt wird angepasst für /dev/sda1
--- Aktuell ist auf der SD Karte /dev/sdb1 die Datenpartition und ihr Filesystemtyp ist ext4
Trotzdem gilt natürlich dass man zur Sicherheit immer vor solch einer Umstellung ein Backup machen muss um gegen Datenverlust gewappnet zu sein.
quellen: http://www.forum-raspberrypi.de/Thread- ... r-sd-karte