Gibt es eine Möglichkeit, von einer externen Festplatte zu booten, die über den USB-Anschluss an das Gerät angeschlossen ist (im Gegensatz zum Booten von der SD-Karte)?
usb
boot
hard-drive
System aus
quelle
quelle
Antworten:
Jetzt, fast fünf Jahre später, nachdem der Autor diese Frage ursprünglich gestellt hatte, unterstützt
Raspberry Pi offiziell das Booten von einem USB-Massenspeichergerät .
Dies wird jedoch nur für Raspberry Pi 3 unterstützt . Hier ist der Grund:
quelle
Es ist nicht möglich, RPi im wahrsten Sinne des Wortes direkt von USB zu booten. Es gibt jedoch nichts, was jemanden davon abhält, eine Mini-Distribution zu erstellen, die / boot und eine Art Boot-Manager enthalten würde. Dies könnte dann das Booten von USB oder sogar einer PXE-ähnlichen Umgebung implementieren. Dies könnte auf eine winzige SD-Karte passen - 64 MB-Karten sind jetzt für ein paar Cent erhältlich. Ich gehe davon aus, dass jemand eine Distribution dafür rollen wird - aber bisher noch keine gefunden hat.
In der Zwischenzeit können Sie Ihre eigene Root-Partition auf die Festplatte verschieben, um die Startzeiten zu verkürzen. Dies ist jedoch etwas aufwändig, da Sie einen Kernel benötigen, der USB-Speicher unterstützt. Eine gute Anleitung dazu finden Sie unter: http://mitchtech.net/raspberry-pi-root-fs-on-usb-drive/
quelle
Aus der Raspberry Pi FAQ :
quelle
In der Tat können Sie / root und alles andere auf einem externen Gerät haben, wenn Sie nur mit der SD MS-DOS-Partition (/ boot) leben können, auf der sich der Kernel befindet. Eine USB-Speicherkarte oder eine physische Festplatte eignen sich gut als sekundäres Laufwerk. Das Gute daran ist, dass dies ein zerstörungsfreier Vorgang ist, wenn Sie nicht an die falsche Stelle "dd": Eine Bearbeitung und Sie kehren zum Original zurück.
Diese Konfiguration einzurichten ist ziemlich einfach. Sie konfigurieren Ihre Installation wie gewohnt und verschieben / kopieren die EXT4-Partition auf das externe Laufwerk.
fdisk
Erstellen Sie mithilfe der Partition Ihres ausgewählten sekundären Laufwerks eine Partition, die mindestens genauso groß ist wie Ihre aktuelle mmcblk0p2 (oder mmcblk0p5). Speichern Sie die neue Konfiguration.Suchen Sie den Partitionsnamen, in diesem Beispiel '/ dev / sda5'. Diese Partition hängt jedoch von Ihrer Konfiguration ab.
Kopieren Sie die aktuelle Partition (Hinweis: Es ist nicht empfehlenswert, eine aktuelle Partition zu kopieren. Einige Dateien befinden sich in einem 'instabilen' oder offenen Zustand, funktionieren jedoch einwandfrei):
Bearbeiten Sie jetzt die folgende Zeile in der Datei /boot/cmdline.txt und ändern Sie den 'root'-Speicherort:
Zu dieser neuen Zeile.
Beachten Sie, dass die Startpartition MS-DOS ist. Wenn Sie also Probleme beheben müssen, können Sie die SD-Karte an einer anderen Stelle einbinden und bearbeiten. Wenn der Start fehlschlägt, zeigt der Loader auf Ihrem (HDMI-) Bildschirm die verfügbaren Montagepunkte an.
Dieses Setup ist abhängig von der Mount-Reihenfolge. Die Partitionsnummer kann sich ändern, wenn das Gerät in einem anderen Steckplatz installiert ist. Sie können diesen Speicherort wie folgt unabhängig machen.
Finden Sie die Geräte-UUID
oder erstelle eine neue
und erhalte den neu zugewiesenen Namen
Bearbeiten Sie anschließend die zuvor geänderte Datei cmdline.txt, und ändern Sie den Stammspeicherort in:
Nachdem die neue Konfiguration starten, bearbeitet die fstab, entfernen Sie den alten / mmcblk0p2 Hinweis: Dies ist eine Datei auf das ‚neue‘ / root - Gerät sein
ersetzen / dev / mmcblk0p% (% ist die Linux - Partition)
quelle
In Raspbian ändern Sie einfach das
root
Flag in/boot/cmdline.txt
,root=/dev/sdaX
woX
die Nummer der entsprechenden Partition ist.Einzelheiten dazu, wie Sie Raspbian auf Ihren USB-Stick usw. bekommen, finden Sie hier http://blog.krastanov.org/2014/01/30/booting-pi-reliably-from-usb/
quelle
Ich habe stattdessen Windows für 100% der Erstellung verwendet.
Ich habe (den kostenlosen) 'MiniTool-Partitionsmanager' verwendet und gerade den Start auf meine kleinste SD-Karte übertragen, die mit dem Partitionsmanager automatisch erweitert werden kann. Öffnen Sie das
cmdline.txt
und wechseln Sie zuroot=/dev/sda5
.Mit demselben Partitionsmanager kann ich die ext4-Datei auf mein tragbares 1 TB-Laufwerk kopieren (zu Ihrer Information: Entfernen Sie zuerst alle Partitionen von den Laufwerken, damit Sie vor der Übertragung nicht partitionierten Speicherplatz haben). Vala - gebootet. Ich stelle fest, dass bei der Standard-Festplatte die Zugriffszeiten etwas fehlen, obwohl sie im Vergleich zu den meisten SD-Karten sehr schnelle R / W-Geschwindigkeiten aufweisen.
Das einzige Problem, das ich jetzt habe, ist das Erweitern der ext4 (Root) -Partition von den ursprünglichen 32 GB (von meiner ursprünglichen SD-Karte). Also ich habe momentan nur 32GB der 1TB. Hmm. Ich bin nur ein Anfänger mit dem Terminal und seinen Befehlen, daher ist das Partitionieren unter Linux etwas nervös, aber dieser Leitfaden hat SEHR gut geholfen.
quelle