De Raspberry Pi updaten

Er zijn verschillende commando’s voor het bijwerken —of zo je wilt— updaten van de Raspberry Pi. Omdat we het over een besturingssysteem hebben waarin bugs en beveiligingslekken worden gevonden en waarin ook nieuwe functies en methoden gebouwd worden is het belangrijk deze updates bij te houden. Wat is nu eigenlijk het verschil tussen deze commando’s? Wat zijn de voor- en nadelen? Mij was het niet duidelijk dus ik heb het maar eens uitgezocht voor er iets mis gaat.

Bijgewerkt 29-2-2020

Raspberry Pi updaten via de terminal

Als ik de Raspberry Pi update dan doe ik dat altijd via SSH, simpel omdat ik de Pi altijd headless —dus zonder muis, toetsenbord en monitor— gebruik kan dat ook haast niet anders. Je kunt in de grafische schil van Raspberry Pi ook een terminal openen, dan kun je de beschreven commando’s gewoon uitvoeren.

Kort samengevat is het voldoende om de Raspberry PI firmware/software actueel te houden met dit commando:

sudo apt-get update && sudo apt-get upgrade
 Tip: Maak voor de update/upgrade regelmatig een reservekopie van de belangrijke bestanden op je Raspberry Pi of nog beter van het hele kaartje 

De commando’s die hieronder worden uitgelegd zijn de volgende:

  1. sudo apt-get update
  2. sudo apt-get upgrade
  3. sudo apt-get update && sudo apt-get upgrade
  4. sudo apt-get full-upgrade
  5. sudo apt-get rpi-update
  6. sudo apt-get dist-upgrade

1. sudo apt-get update

sudo apt-get update

Het commando “update” zorgt dat de allernieuwste lijst van pakketten wordt bijgewerkt op de PI. Dit is een soort van bibliotheek van kant en klare programma’s waaruit je kunt kiezen.

2. sudo apt-get upgrade

sudo apt-get upgrade

Zie ook het commando “sudo apt-get full-upgrade “ onder 4. Deze is beter geschikt voor het bijhouden van updates!

Het commando “upgrade” zet de nieuwste versie van de al eerder geïnstalleerde pakketten op de Raspberry. Apt-get weet wat de nieuwste versie is door het commando dat je in stap 1 hebt uitgevoerd. Voer deze twee commando’s regelmatig uit om de software actueel te houden, vooral als de raspberry pi vanuit internet toegankelijk is.

3. sudo apt-get update && sudo apt-get upgrade

sudo apt-get update && sudo apt-get upgrade

Commando 1 en 2 worden direct na elkaar uitgevoerd, ik gebruik bij voorkeur deze methode zodat de update niet meer tijd kost dan nodig.

4. sudo apt-get full-upgrade

sudo apt-get  full-upgrade 

Waardeer met full-upgrade het systeem op door pakketten te verwijderen/te installeren/op te waarderen. Het verschil met het commando “upgrade” is dat nu ook alle afhankelijke pakketten/wijzigingen bijgewerkt worden.

 Dit commando werkt in Raspbian Jessie nog niet: “E: Ongeldige bewerking full-upgrade”. 
Hier kun je dus alleen maar het comando upgrade gebruiken.

Het commando “sudo apt-get full-upgrade” verdient indien te gebruiken in de Linux distributie de voorkeur boven “sudo apt-get upgrade” uit stap 2 en 3.

Het lijkt er op dat hier de extra stap opschonen is dat ook als extra automatisch wordt uitgevoerd. Daarvoor moet je anders sudo apt-get clean uitvoeren.

Zie ook de update FAQ en FAQ 2.

5. sudo rpi-update

sudo apt-get  rpi-update 

Dit wordt soms ook een firmware upgrade (van de eerste partitie op de SD-kaart) genoemd. Als je de bleeding-edge —not stable— meest recent uitgebrachte versie wilt hebben van de firmware gebruik dan rpi-update. Je beschikt dan over de meest recente testkernel. In een productieomgeving is dat een risico! Dus beperk je tot commando 1. en 2. als je geen risico’s wilt lopen en geen uitzoekwerk wilt doen om de Pi weer draaiend te krijgen na de upgrade.

Wil je toch rpi-update gebruiken: om er zeker van te zijn dat je inderdaad de laatste testversie draait van de firmware moet je onderstaande volgorde aanhouden, met commando 2. wordt de Linux kernel ook geupgrade maar niet naar de bleeding Edge versie.

Je kunt dus eerst kunnen upgraden naar de laatste bleeding edge versie ( commando 3.) en daarna zou je kunnen proberen te downgraden naar de stabiele versie met “apt-get upgrade” ( commando 2. opnieuw uitvoeren) als je problemen ervaart.

1. sudo apt-get update

2. sudo apt-get upgrade

3. sudo rpi-update

6. sudo apt-get dist-upgrade

Als je dit command gebruikt dan heb je een versie van de Raspian firmware en het besturingsysteem gelijk aan die in de meest recente image die je vind op raspberrypi.org/downloads.

7. Herstart

Vooral na de Commando’s 4 en 5 is een herstart zinvol en meestal noodzakelijk:

sudo reboot

Na een upgrade herstarten is bijna altijd een goed idee, als er een probleem is dat veroorzaakt wordt door een upgrade dan weet je in ieder geval op welk moment het probleem ontstaan is. Dat maakt het zoeken naar een oplossing gemakkelijker. Voor hulp kun je op het Raspberry forum terecht.

Tip

Check de beschikbare ruimte op de SD- kaart met:

df -h

vóór de dist-upgrade, dit gebeurd niet automatisch! Je kunt het systeem wat opschonen door oude niet langer gebruikte pakketten te verwijderen uit je /home map en met het systeem wordt ook opgeschoond middels het commando:

sudo apt-get clean

Of als je nog grondiger opruiming wilt houden:

apt-get autoremove --purge && apt-get remove `deborphan` --purge

Is dat niet voldoende dan wordt het tijd om eens te kijken of een grotere SD-kaart de oplossing is of een tweede Raspberry Pi. Maar je kunt ook een USB disk koppelen en daar je systeem op overbrengen. Hiervoor zijn verschillende handleidingen beschikbaar, kijk eens op de renewable energy now website of het RaspberryPi forum bijvoorbeeld.

Bronnen:

Raspberry Pi foundation

Geek techiness