Raspberry Pi 4 B mit USB 3.0 von Festplatte booten

  • Hallo


    gibt es eine Möglichkeit von einer SSD HD/SSD über USB 3.0 zu booten ? Die Hardware ist ein Rasberry PI 4 und eine Expander Board X825 für eine 480 GB SSD Festplatte.


    Hardware Pi 4 B http://www.raspberrypiwiki.com/index.php/X825 und Gehäuse https://www.amazon.de/Geekworm-HDD-SATA-Board-Metallgeh%C3%A4use-K%C3%BChlventilator-Wabengeh%C3%A4use/dp/B07WC4HN2T?ref_=ast_sto_dp (Affiliate-Link)


    Mit dem X830 und SuSE SLES15.1 konnte ich den Server für Services für das Netz nutzen.

    Hardware Pasberry Pi 3B https://www.ebay.de/itm/X830-2…b70ba4:g:DbsAAOSwO7pcdEae und https://www.ebay.de/itm/Raspbe…ebaf9e:g:L6AAAOSw-G1dXOFG


    Ich würde gerne den Server auf den Raspberry PI 4B portieren geht aber scheinbar bis jetzt nicht da er nicht von der Festplatte bootet. Ich habe schon verschiedene Möglichkeite ausprobiert aber es bootet nicht unter USB HD/SSD.


    Gruß Peter

  • Als "workaround" kannst Du derzeit die Bootpartition auf der SD belassen und die Rootpartition auf die HD/SSD verfrachten.

    smdline.txt und /etc/fstab anpassen, fertig.


    Servus !

    RTFM = Read The Factory Manual, oder so

  • Sorry für die Nachfrage heist das das ich die EFI Partion auf der Micro SD Karte belassen muss und der Rest auf die SSD/HD muss.

    Ach ja gibt es noch etwas zu beachten bei einem 64Bit System ?


    Gruß Peter

  • aber es bootet nicht unter USB HD/SSD

    Es geht schon, erfordert aber etwas Handarbeit. Hier mal ein Beispiel von meinem RPi4:

    Code
    pi@raspi25:~ $ df -h
    Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
    /dev/root       110G    7,8G   98G    8% /
    devtmpfs        1,8G       0  1,8G    0% /dev
    tmpfs           1,9G       0  1,9G    0% /dev/shm
    tmpfs           1,9G    8,9M  1,9G    1% /runtmpfs           5,0M    4,0K  5,0M    1% /run/lock
    tmpfs           1,9G       0  1,9G    0% /sys/fs/cgroup
    /dev/mmcblk0p1  253M     52M  201M   21% /boot
    tmpfs           381M       0  381M    0% /run/user/109
    tmpfs           381M       0  381M    0% /run/user/100


    Code
    pi@raspi25:~ $ mount
    /dev/sda2 on / type ext4 (rw,noatime,stripe=32753)
    ...
    /dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro


    Als "workaround" kannst Du derzeit die Bootpartition auf der SD belassen und die Rootpartition auf die HD/SSD verfrachten.

    smdline.txt und /etc/fstab anpassen, fertig.

    Code
    less /boot/cmdline.txt
    console=serial0,115200 console=tty1 root=/dev/sda2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait logo.nolog
    Code
    less /etc/fstab
    proc                   /proc           proc    defaults          0       0
    #PARTUUID=d9b3f436-01  /boot           vfat    defaults          0       2
    #PARTUUID=d9b3f436-02  /               ext4    defaults,noatime  0       1
    /dev/mmcblk0p1  /boot           vfat    defaults          0       2
    /dev/sda2       /               ext4    defaults,noatime  0       1
    # a swapfile is not a swap partition, no line here
    #   use  dphys-swapfile swap[on|off]  for that

    Ich hatte das Image von der SD-Karte geklont und dann auf eine SSD kopiert. Anschließend hatte ich die Partition

    von Hand auf die Größe der SSD geändert und "resized".

    Leider habe ich es noch nicht geschafft, die PARTUUID auf der SSD zu ändern (Die UUID war kein Problem),

    daher stehen hier die Devices. Solange nur eine Platte an der Kiste hängt ist das noch kein Problem.


    MfG


    Jürgen

  • Die PARTUUID steht im MBR/GPT (in der Partitionstabelle) und kann mit einer Neupartitionierung geändert werden. Bei einer Neupartitionierung gehen keine Daten (aus den gelöschten und neu partitionierten Partitionen) verloren, solange dieselben Sektorgrenzen verwendet werden.


    Leichter geht es aber über die UUID, die aus dem Filesystem (in einer Partition) extrahiert wird. Die lässt sich mit tune2fs ändern und statt PARTUUID mit UUID= in cmdline.txt und fstab ansprechen.



    Servus !

    RTFM = Read The Factory Manual, oder so

  • An einer Möglichkeit nativ von USB3 zu booten beim 4B wird noch gearbeitet.

    Die Foundation hat aber auf deren Webseite geschrieben, dass aber vorher das Booten vom Netzwerk (PXE) realisiert wird.

    Hierzu gibt es einen ersten Beta Bootloader, was darauf hindeutet, das sich da wenigstens was bewegt.

    Sobald PXE eben released wurde, wird es wohl endlich am USB3 Boot weiter gehen.


    Ich für meinen Teil habe momentan auch die SD/USB Kombi am Laufen, also booten von SD aber das restliche System von Platte/SSD.

    ;) Gruß Outi :D
    PIs: 2x Pi B (Rente) / 1x Pi B+ (Rente) / 1x Pi 2 B (Tests) / 2x Pi 3 B (RaspberryMatic + RedMatic / Repetier Server) / 2x Pi Zero 1.2 (B. Lite)
    2x Pi Zero 1.3 (B. Lite) / 2x Pi Zero W 1.1 (B. Lite) / 1x Pi 3 B+ (Buster) / 1x Pi 4 B 4GB (Buster) / Pi 400 (Win 11 Pro Prev.) / 2x Pi Pico
    Platinen: Sense HAT / RPI-RF-MOD / PiFi DAC+ V2.0 / TV HAT

  • Darf ich mich da als Noob mal anhängen?


    Ich habe einen Pi4 mit iobroker am laufen. Da mir schon 2 SD Karten abgeraucht sind habe ich einen USB Stick eingesteckt und mit einem usb-boot tool den bootvorgang geändert. Dabei wurde auch das System auf den USB-Stick rüber kopiert. Dazu gibt es ja viele Anleitungen. (Boot von SD, System von USB) Das funktioniert auch recht gut außer dass der USB Stick grottenlahm ist. Hab da leider nicht drauf geachtet und irgendeinen verwendet der grade greifbar war.


    Jetzt möchte ich gerne den USB Stick gegen eine kleine SSD austauschen. Adapter und SSD funktionieren am Pi4, das hab ich schon mal früher getestet.


    Ich könnte jetzt zwar den langen Weg gehen, SD Karte formatieren, neues Raspbian (Buster) Lite drauf, iobroker neu installieren und dann einen Backup einspielen, dann auf die SSD umstellen. Das erscheint mir aber schon etwas aufwendig.


    Wie/was und wo könnte ich denn einstellen dass der Pi4 wieder von der SD Karte bootet? Da müsste ja noch der alte Stand vor der Umstellung auf USB drauf sein. Das würde mir wirklich sehr helfen.


    .

  • steck doch mal die SD-Karte rein müsste von booten, wenn nicht schau mal in die Datei /boot/cmdline.txt auf der SD-Karte dort steht irgendwo PartUUID="hier müsste die SD Karte" angeführt sein, wenn Sie nicht in die PART-UUID deiner SDD geändert wurde.

  • Leider bootet die Karte nicht alleine. Nur in Verbindung mit dem USB-Stick. PartUUID ist der Gleiche in cmdline.txt auf USB Stick und SD Karte.


    Ich verstehe das so das beim ersten laden direkt auf den USB-Stick verwiesen wird und von dort aus dann weitergeladen wird. Deshalb muß beim Pi4 die SD Karte nach wie vor eingesteckt sein.


    Auf der SD Karte ist sonst nach wie vor mein ganzes iobroker system drauf.


    OK!!! Habs geschafft!!! Der PartUUID war noch in ect/fstab gespeichert!


    Hab diese wieder cmdline.txt eingetragen, SD Karte in Pi4 und er startet wieder von der SD Karte!


    PartUUID war das Stichwort das mir weitergeholfen hat! DANKE!!!!! :bravo2:

  • Nein, zum Starten muß die SD Karte noch drin bleiben. Pi4 kann leider noch nicht ohne Karte booten. Es wird aber anscheinend nur die Hardware initialisiert. Das OS und dann iobroker wird dann vom USB-Stick geladen und auch alle Schreib Vorgänge laufen auf dem USB Stick ab.

  • Der ganze Umbau vom USB-Stick auf die SSD ging jetzt doch ganz flott.


    Knapp eine Stunde, inklusive Wiederherstellung meines letzten Backup.


    Und es ist eine Wohltat jetzt mit dem System zu arbeiten.


    Danke nochmal :)

  • Hallo,


    Ich nutze derzeit einen pi3 mit IoBroker und möchte in naher Zukunft auf einen Pi4 mit SSD wechseln. Könntest Du mich mit Anleitungen /Links versorgen, wo die Vorgehensweise beschrieben ist?

    Gruß Stoni

  • ... Könntest Du mich mit Anleitungen /Links versorgen, wo die Vorgehensweise beschrieben ist?

    Ist nicht schwer. In a Nutshell:


    1) Klonen der SD per rsync auf die SSD

    Code
    rsync -av /  <mountpoint der ssd>

    2) Mit blkid die PARTUUID der ssd abfragen

    3) in <mountpoint der ssd>/boot/cmdline.txt die PARTUUID fuer das Rootfilesystem anpassen mit der PARTUUID aus (2)

    4) in <mountpoint der ssd>/etc/fstab die PARTUUID fuer das Rootfilesystem / anpassen mit der PARTUUID aus (2)

    5) in <mountpoint der ssd>/etc/fstab die Zeile fuer /boot loeschen

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • Danke aber ich verstehe nur Bahnhof. Bin absoluter Laie und brauche einfach ne Komplettanleitung. Was Ich weiß ist, dass man noch nicht von SSD booten kann und die SD weiter benötigt. Aber was ich machen muss, wieso weshalb warum, kein Plan. Hab auch keine Ahnung von Programmierung.

  • Danke aber ich verstehe nur Bahnhof. Bin absoluter Laie und brauche einfach ne Komplettanleitung.

    Wenn dem so ist, solltest Du vielleicht besser die Finger davon lassen.

    Allerdings weiß ich jetzt auch nicht, warum Du keine der vielen aktuellen Anleitungen durchliest, die Dir die Suchmaschine des geringsten Misstrauens, gefüttert mit "raspberry pi 4 von ssd booten" (englische Termini vergrößern die Anzahl der Ergebnisse nochmals ungemein) ausspuckt... Warum muss das nochmals aufgeschrieben werden? Konkrete Fragen zu dem, was Du bereits getan hast, beantworten Dir die vielen Hausangestellten hier.

  • Was Ich weiß ist, dass man noch nicht von SSD booten kann und die SD weiter benötigt.

    Hatte ich uebersehen dass Du eine Raspi4 hast.

    Quote

    Aber was ich machen muss, wieso weshalb warum, kein Plan.

    Vor langer Zeit habe ich mal diese Anleitung geschrieben :no_sad: Da wird aber alles auf die Disk bzw SSD gepackt. In Deinem Falle musst Du


    1) Klonen der SD per rsync auf die SSD

    2) Mit blkid die PARTUUID der ssd abfragen

    3) in /boot/cmdline.txt auf der SD Karte die PARTUUID fuer das Rootfilesystem anpassen mit der PARTUUID aus (2)4) auf der SSD in der /etc/fstab /boot beibehalten wie es ist und nur die PARTUUID von / anpassen.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)

  • ...die vielen Hausangestellten hier...

    :lol: die bekommen aber auch einen Gehaltsscheck :lol:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert =O Bei mir tut das raspiBackup automatisch ;)