In Ubuntu is het opstarten met functietoets handig voor reparatie van een defect Grub-opstartmenu. Maar als het opstartmenu wel werkt, is het prettiger om de live-sessie hiermee te starten. Dit vergt een handmatige aanpassing vanuit je reguliere Linux-installatie.

Gustaaf van Dijk


De lezerstip “Linux-image back-up maken” in PC-Active 313 beschrijft onder meer het maken van een met functietoets (vaak F12) opstartbare Ubuntu 20.04 LTS live-sessie, door deze (in administrator-modus!) te kopiëren van usb-stick naar een schijfpartitie in je computer. Opstarten met functietoets is handig voor reparatie van een defect Grub-opstartmenu. Maar als het opstartmenu wel werkt, is het prettiger om de live-sessie hiermee te starten. Dit vergt een handmatige aanpassing vanuit je reguliere Linux installatie.

Het bestand /etc/grub.d/40_custom is bedoeld voor handmatige aanpassingen. Dit kan bijvoorbeeld met Gedit in administrator-modus. Het volgende is een voorbeeld, pas dit aan naar je eigen situatie.

UbuntuLiveInBootMenu 1
Gedit: bestand 40_custom aanpassen

De eerste twee regels niet aanpassen! De menuentry-tekst is wat je in het opstartmenu wilt zien. Met de insmod-commando’s worden Grub-modules (vanuit /boot/grub/x86_64-efi/) geactiveerd voor het zoeken op partitie UUID en ‘chainloader’ – Grub schakelt door naar de op de partitie aanwezige opstartlader. 

UbuntuLiveInBootMenu 2 b
Terminal: UUID bepalen met sudo blkid


De UUID (Universally Unique IDentifier) van de betreffende partitie kan bepaald worden met terminalcommando sudo blkid.

UbuntuLiveInBootMenu 3
Bestanden: partitie verkennen

De opstartlader op de partitie zoek je door de partitie aan te koppelen met terminalcommando’s sudo mkdir -p /mnt/2598-3DE0, gevolgd door sudo mount UUID=2598-3DE0 /mnt/2598-3DE0. Met de bestandsverkenner Bestanden kun je vervolgens het aanvullende pad naar de opstartlader zoeken. Je vindt vaak meerdere kandidaten en je kunt uitproberen welke voldoet, als googelen je niet verder helpt. De inhoud van variabele $root = dynamisch gevonden (schijf,partitie)-identificatie, wordt aangevuld met /EFI/BOOT/grubx64.efi. Dit vormt het pad voor chainloader.

UbuntuLiveInBootMenu 4
Grub: opstartmenu

Als 40_custom aangepast is, moet een nieuw opstartmenu worden gegenereerd met terminalcommando sudo update-grub. Sluit af en herstart de computer om het nieuwe opstartmenu te testen.

Herinstalleren
Met het toepassen van deze en voorgaande lezerstip heb je altijd een krachtig gereedschap in de kofferbak van je computer. Via het opstartmenu kun je starten om een image (back-up) van je Linux-systeem te maken of terug te zetten. Is Grub gecorrumpeerd, dan kun je met functietoets opstarten en alleen het menu herstellen, of zo nodig via chroot Grub van je reguliere Linux-systeem verwijderen en opnieuw installeren (eerst 40_custom back-uppen). 

Bovendien kun je in een live-sessie nieuwe applicaties installeren (in en beperkt tot het werkgeheugen) en naar hartenlust uitproberen. Alles verdwijnt weer als je de sessie afsluit (zolang je geen schijven aankoppelt en beschrijft).