Raspberry Pi 3B+ met root partitie op externe disk

Pagina: 1
Acties:

Vraag


  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Ik heb hier een Raspberry Pi 3B+ liggen met een verse Ubuntu 20.04.1 op een SD kaartje die ik bij mijn vader thuis dienst wil laten doen als Unifi Controller en Samba servertje. Omdat in mijn ervaring de SD kaartjes om de haverklap de geest geven als er veel schrijfacties zijn (bijvoorbeeld van de MongoDB database van de Unifi Controller) leek het mij een goed idee om er een simpele externe harddisk aan te hangen (een WD Passport die ik nog had liggen). In theorie zou ik vanaf de harddisk kunnen booten, maar hij start te traag op en dat vindt de Pi niet leuk.

Eerste poging tot oplossen: bootcode.bin op de SD card in combinatie met een file "timeout", die zou moeten zorgen voor 6 seconden pauze bij opstarten. Dat doet hij inderdaad, maar die 6 seconden blijken niet genoeg te zijn.

Dus ben ik voor een andere optie gegaan: booten vanaf de SD card maar de root partitie op de externe harddisk. Ik heb op de harddisk dezelfde image gezet als op de SD card, dat werkt prima. Uiteraard kregen de partities op de harddisk dezelfde UUID en labels, maar dat was natuurlijk simpel aan te passen. Dat heb ik dus gedaan. Laatste stap: in /etc/fstab de juiste disk op / mounten.

Maar, no dice. Als ik na een reboot df draai krijg ik dit te zien:

code:
1
2
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p2   14G  6.0G  7.4G  46% /


Ofwel: nog steeds de SD card en niet de /dev/sda2 die ik verwachtte. Gek genoeg wil de Pi nu niet meer starten zonder dat de externe harddisk is aangesloten, dus het heeft wel "iets" gedaan.

Ik heb nu geen idee meer in welke hoek ik het moet zoeken. Ik ben verre van een Linux-expert, bovenstaande heb ik allemaal kunnen doen na het lezen van allerlei artikelen op Medium, StackOverflow. en het Raspberry Pi forum. Ik loop vast dus. Kan iemand mij een duwtje in de goede richting geven? Klopt mijn gedachtegang überhaupt of moet ik dit op een totaal andere manier aanpakken?

tldr; ik wil op een Raspberry Pi booten vanaf een SD card maar de complete root partitie naar een externe harddisk verhuizen. Ik krijg dat niet voor elkaar.

omniscale.nl

Beste antwoord (via Cyphax op 11-09-2020 11:37)


  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Het is me uiteindelijk zélf gelukt. Het werkt prima, met behulp van deze tutorial:

https://www.raspberrypi.o...iewtopic.php?f=29&t=44177

In het kort: /boot/firmware staat nog steeds op de SD kaart, maar het root-filesystem draait vanaf de harddisk. Werkt als een zonnetje :)

omniscale.nl

Alle reacties


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:20

Hero of Time

Moderator LNX

There is only one Legend

De Pi kan wel vanaf USB opstarten? Maak dan voor een paar tientjes een SSD USB stick door een m.2 SSD in een USB behuizing te prikken en daar Raspbian op te zetten. Heb je niet het probleem van een gare SD kaart of traagheid van de mechanische harde schijf.

Commandline FTW | Tweakt met mate


  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Voor het doel boeit de relatieve traagheid van die harddisk eigenlijk niet zo en de SD kaart zal alleen gebruikt worden om te booten. Dus ja, jouw voorstel is een oplossing maar schiet zijn doel een beetje voorbij. Ik heb niet persé de behoefte om een paar tientjes te investeren als het ook gratis kan :)

omniscale.nl


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:20

Hero of Time

Moderator LNX

There is only one Legend

Tja, je hebt eigenlijk al aangetoond dat het niet kan met die mechanische externe schijf.

Enige andere optie is om de heavy write locaties naar de externe schijf verwijzen. Dus /var/lib/mongodb is een partitie op de schijf, net als je andere locaties.

Commandline FTW | Tweakt met mate


  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Maar... is dat zo? Waarom kan het niet? Het punt is toch alleen dat het booten vanaf de HD niet lukt? Als ik dat vanaf de SD card doe dan zou het toch geen issue moeten zijn?

Ik zit er misschien helemaal naast hoor, maar ik wil het graag begrijpen.

omniscale.nl


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:20

Hero of Time

Moderator LNX

There is only one Legend

HDD response tijd voor first byte misschien? Ik neem even aan dat het om een externe schijf gaat met aparte voeding, anders is het echt de upspin tijd dat te lang duurt voor de boot procedure van de Pi.

Commandline FTW | Tweakt met mate


  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Hero of Time schreef op donderdag 10 september 2020 @ 21:53:
HDD response tijd voor first byte misschien? Ik neem even aan dat het om een externe schijf gaat met aparte voeding, anders is het echt de upspin tijd dat te lang duurt voor de boot procedure van de Pi.
Nee, het gaat om zo’n kleine HD die powered wordt door de USB poort.

omniscale.nl


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:20

Hero of Time

Moderator LNX

There is only one Legend

Ah, dan is het gegarandeerd het laatste. De schijf is te laat beschikbaar om er van op te kunnen starten.

Commandline FTW | Tweakt met mate


  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Maar: snap ik het dan verkeerd? Mijn hele idee is om het opstarten vanaf de SD kaart te doen (/boot blijft daarop staan). Dan zou dat toch juist geen probleem moeten zijn?

omniscale.nl


  • ninjazx9r98
  • Registratie: Juli 2002
  • Laatst online: 23:00
@posttoast
Je kunt ook nog wat experimenteren met boot_delay en boot_delay_ms in config.txt

Acties:
  • 0 Henk 'm!

  • gron74
  • Registratie: Augustus 2011
  • Laatst online: 21-09 20:57
Je moet ook nog de program_USB_boot_mode=1 regel in de config.txt zetten. Op de Pi 3B+ zou dit niet nodig zijn, maar bij mij dus wel. Ik heb een Samsung T5 500gb ssd aan de pi hangen, dit werkt. Ik kan niet booten zonder sd card. Op internet lees je verhalen dat dit kan, maar ik krijg dit niet aan de praat. Ik heb de bootcode dus op een sd card, daarna start hij raspbian op de ssd. Je OS moet het booten van jouw schijf wel ondersteunen. Bijvoorbeeld: Ik krijg Raspbian wel aan de praat, maaf Hass.io boot dus niet. Dit ligt aan het os (Hassos).

De pi 4 kan sinds kort ook booten van ssd. Ik twijfel nu aan een pi 4.

Acties:
  • 0 Henk 'm!

  • FreshMaker
  • Registratie: December 2003
  • Niet online
Ik draai op al mijn Pi's raspbian, vanaf een 32GB stick ( Sandisk - Action )
Deze kan je ( voorzichtig ) slopen, en komt dan een connector + 1cm overschot uit.

volg deze guide om de Pi bootable te maken van externe media :
https://www.raspberrypi.o...pberrypi/bootmodes/msd.md

één Pi in de meterkast met Unify, Wireguard en remote.it client ( soort dynamisch ip met wat extra functionaliteit )
Bij mijn vader in de meterkast dezelfde opstelling, geen corrupte SD kaartjes, en voldoende opslag over.
gron74 schreef op vrijdag 11 september 2020 @ 00:18:
Je OS moet het booten van jouw schijf wel ondersteunen.
Bijvoorbeeld: Ik krijg Raspbian wel aan de praat, maaf Hass.io boot dus niet. Dit ligt aan het os (Hassos).
Je zou in de fstab dit moeten kunnen aanpassen, de verwijzing naar /sda1 ergens, maar dat was mij ook nog niet gelukt.
Vandaar de HA-boel nog in een docker draait, die server staat toch aan ;)

[ Voor 45% gewijzigd door FreshMaker op 11-09-2020 00:46 ]


Acties:
  • Beste antwoord
  • 0 Henk 'm!

  • posttoast
  • Registratie: April 2000
  • Laatst online: 22-09 16:40
Het is me uiteindelijk zélf gelukt. Het werkt prima, met behulp van deze tutorial:

https://www.raspberrypi.o...iewtopic.php?f=29&t=44177

In het kort: /boot/firmware staat nog steeds op de SD kaart, maar het root-filesystem draait vanaf de harddisk. Werkt als een zonnetje :)

omniscale.nl

Pagina: 1