Boot vanaf SSD

Tijd: 15 minuten

Sinds september 2020 is het mogelijk om je Pi van een SSD op te starten in plaats van de microSD. Opstarten op deze manier geeft betere performance. Daarnaast omzeil je hiermee het gedoe van het mounten en tegen ieder stukje software zeggen dat die van de SSD gebruik moet maken. Aangezien we de SSD toch al hebben, waarom zouden we het dan niet doen?

Steek de microSD en netwerkkabel in de Pi waarna je de stroom aansluit. Na ongeveer een minuutje zal de Pi opgestart zijn en een IP-adres krijgen van je router. Log in op je router, want dit IP-adres heb je nodig. De meeste routers kun je in door naar 192.168.1.1 te gaan in je browser, maar hoe jouw netwerk is ingericht weet je zelf het best.

SSH

Secure Shell is een protocol om op een versleutelde manier in te loggen op een andere computer en op afstand commando's op de andere computer uit te voeren via een terminal. Middels dit protocol is het mogelijk om vanaf onze computer de Pi aan te sturen.

Open een terminal en typ:

ssh pi@IP.ADRES.VAN.PI

Vervang in het commando IP.ADRES.VAN.PI met iets als 192.168.1.6. Zodra je op enter drukt zal je een vraag krijgen waar je YES/NO op kunt antwoorden. Typ yes en druk op enter. Je krijgt nu de opdracht een wachtwoord in te voeren. Het wachtwoord heb je ingesteld tijdens het flashing van de microSD. Dit is raspberry.

Wat hebben we nu net gedaan? Je hebt met het commando aangegeven dat je van SSH gebruik wil maken. Vervolgens specificeer je een gebruikersnaam en een computer. De computer is bereikbaar via een IP-adres.

Update

Voer de volgende commando's uit:

sudo apt update
sudo apt full-upgrade -y
sudo reboot

Je Pi zal nu opnieuw opstarten waarna je opnieuw erin moet SSH'en.

Boot configuratie

De Pi start standaard op vanaf de microSD. De Pi moet anders geconfigureerd worden om op te starten vanaf de SSD. Eerst moet de Pi voorzien worden van de nieuwste firmware. Voer onderstaande commando uit:

sudo rpi-update master c8fffcda5ae0f923857a73fedbeb07e81d2eb813

Je Pi zal nu zijn firmware updaten waarna je hem moet herstarten.

sudo reboot

SSH opnieuw in op je Pi. Het is tijd om de Pi zo te configureren dat we vanaf de SSD kunnen booten. Voer het volgende uit:

sudo raspi-config

Een menu zal verschijnen waarin het lijkt alsof je in de jaren 80 bent beland. Navigeer met de pijltjestoetsen naar Advanced Options en druk op enter.

Raspi config advanced options selection

Ga vervolgens naar Boot Order.

Raspi config boot order selection

Kies voor USB Boot en druk op Ok.

Raspi config USB boot selection

Kies nu voor Finish en druk op enter.

Raspi config reboot

Je Pi zal nu opnieuw opstarten. Zodra hij weer online is, moet je nog 1 keer de Pi in SSH'en. Je moet namelijk de Pi correct afsluiten. Doe dat als volgt:

sudo shutdown now

Booten

Nu we de bootloader correct hebben ingesteld, kunnen we van de SSD booten. Haal de microSD uit de Pi en sluit de SSD aan. Zet de stroom erop, et voilà! Je moet nu je Pi in SSH'en met een andere username en wachtwoord. Doe dat als volgt.

ssh ubuntu@IP.ADRES.VAN.PI

Het standaard wachtwoord is ubuntu.

Het zou voor kunnen komen dat je de volgende foutmelding krijgt zodra opnieuw probeert te SSH'en naar je Pi:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
(...)

Zoiets is gemakkelijk op te lossen door op je computer het commando nano .ssh/known_hosts in te voeren. In het scherm dat volgt staan bekende computers voor jouw computer. Verwijder de regel met het IP-adres van jouw Pi. Sla het bestand op met Ctrl + X en bevestig met Y. Je hebt nu tegen jouw computer gezegd dat hij de eerdere relatie met de Pi mag vergeten en een nieuwe relatie mag opbouwen.

De eerste keer vraagt Ubuntu om het instellen van een nieuw wachtwoord. Kies een sterk wachtwoord en onthoud deze goed. Het is het wachtwoord voor de gebruiker ubuntu en deze gebruiker beheert later alles in de gids. Als Ubuntu niet vraagt om een nieuw wachtwoord, stel het dan zelf in met passwd.