Von USB-Stick/HDD booten

feissmaik
Entwickler Team
Beiträge: 2576
Registriert: So 17. Apr 2011, 11:39
Been thanked: 1 time
Kontaktdaten:

Von USB-Stick/HDD booten

Beitrag von feissmaik »

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:
  • Eine SD mit Raspbian
  • einen USB stick
  • oder USB hdd
  • Windows PC
  • win32diskimager download
  • wheezy-raspbian download
Schritt 1:
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
dieser Code verweist auf die SD Karte (mmcblk0p2).
Ihr aendert es nun um in:

Code: Alles auswählen

root=/dev/sda2
"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:

Code: Alles auswählen

df -h
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:

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
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
Du musst nicht kämpfen um zu siegen
henrixxx
IPC Neuling
Beiträge: 10
Registriert: So 6. Okt 2013, 17:35
Kontaktdaten:

Von USB-Stick/HDD booten

Beitrag von henrixxx »

Hatte Probleme mit dem resize der HDD bzw USB stick mit dem Link aus Schritt 5, habe es dann nach folgendem Link durchgeführt und es hat super geklappt:

http://c-mobberley.com/wordpress/index. ... o-usb-hdd/

ein weiterer Vorteil man kann das schön per Konsole via Putty machen ohne diesen Gparted-"mist" installieren bzw. anwenden zu müssen.

Soll kein Vorwurf auf den Lösungsvorschlag sein, sondern nur ein Hinweis für einen anderen Lösungsweg, den ich persönlich bevorzuge. Vll. kommt ja der ein oder andere auch besser damit klar...
Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast