ID.nl logo
Opstarten in uefi: alternatieve boot-methodes
© Reshift Digital
Huis

Opstarten in uefi: alternatieve boot-methodes

Al lange tijd worden nieuwe pc’s en laptops uitgerust met een ‘uefi’ in plaats van de ouderwetse bios. Het argument ‘veiligheid’ wordt echter onterecht gebruikt om het opstarten van een cd of usb-stick (met bijvoorbeeld GParted, malwareherstel of Linux-distributie) moeilijk te maken. In dit artikel lees je waarom dat zo is en hoe je alsnog kunt booten zoals jij dat wilt.

Wat is uefi?

Voordat we daadwerkelijk beginnen, kan het geen kwaad wat termen door te nemen. Uefi staat voor ‘unified extensible firmware interface’ en is als het ware een eigen besturingssysteem voor de computer. Het klassieke bios (basic input/output system) is firmware, maar de uefi ligt tussen de firmware en het besturingssysteem in. Uefi en bios kunnen naast elkaar bestaan op dezelfde computer. Vroeger was er ook efi (extensible firmware interface). Dat werd ontwikkeld door Intel, maar sinds 2005 doet Intel mee aan het UEFI Forum: een consortium van bedrijven uit de computerindustrie dat de uefi verder ontwikkelt. Uefi is ‘unified’ omdat het geheel softwaregebaseerd is: eerder werd het bios voor elke chip apart gecompileerd, uefi is een stuk generieker.

In dit artikel duiken we in de wereld van uefi. Elke pc of laptop wordt vandaag de dag met een uefi geleverd. Het is een verandering die voor sommige gebruikers heel plotseling lijkt te zijn veranderd. Er is veel positiefs aan de uefi: de basisinstellingen van de pc zijn eenvoudiger te bedienen, er is meer functionaliteit en de pc start er sneller door op.

Nadelen zijn er helaas ook: zo is het voor gebruikers wat lastiger en ingewikkelder geworden om vanaf andere media op te starten, bijvoorbeeld vanaf een usb-stick. Veel pc-fabrikanten hebben hun uefi dusdanig dichtgetimmerd dat dat niet zomaar mogelijk is. Bovendien is de situatie ingewikkelder geworden vanwege achterwaartse compatibiliteit, waardoor je alsnog vanaf het bios kunt starten in een uefi-omgeving.

In dit artikel bekijken we hoe het opstarten vanaf de uefi precies werkt met usb-sticks, hoe en waarom het is dichtgetimmerd. En we gaan deze kennis ook praktisch toepassen om op te starten met alternatieve media.

01 Uefi-boot

Op het moment dat de pc start, gaat de uefi-bootmanager aan de slag. Deze kijkt naar de bootconfiguratie en laadt de firmware-instellingen in het geheugen. Daarna wordt de kernel van het standaardbesturingssysteem gestart. In de firmware-instellingen, die opgeslagen liggen in het nvram, staat het pad van het efi-bestand dat gestart moet worden. Nvram staat overigens voor non-volatile random-access memory, dat aanwezig is op het moederbord. Non-volatile houdt in dat de data in het geheugen bewaard wordt, ook als de stroom eraf wordt gehaald.

De opstartbestanden staan op een efi-partitie, ook wel de ESP (efi system partition) genoemd. Zo’n partitie is een simpele fat32-partitie en heeft een mapje voor elk besturingssysteem dat op de pc staat. Elke map bevat één efi-bestand, aangemaakt door het geïnstalleerde besturingssysteem. Zo’n efi-bestand wordt gemaakt in een uefi-programmeertaal die veel lijkt op de taal C en dat bestand start het daadwerkelijke besturingssysteem.

Het voordeel van de uefi is dat het automatisch nieuwe uefi-bootdoelen kan detecteren. Op die manier kun je eenvoudig opstarten vanaf andere media. Om die functionaliteit mogelijk te maken, maakt uefi gebruik van standaardpaden om de bootloader te definiëren. Zo’n pad en bestandsnaam is bijvoorbeeld /efi/boot/boot_x64.efi voor een 64bit-systeem en voor de ARM-architectuur zou het bestand bootaa64.efi heten.

Vooral aan het begin van de introductie van de uefi ontstonden er weleens opstartproblemen. Elke bootloader had namelijk zijn eigen problemen of eigenaardigheden. Zo maakte Windows 7 bijvoorbeeld een nieuwe fat32-ESP, zelfs al was er een bestaande met fat16. Daarna mislukte de installatie. Veel Linux-distributies maakten vroeger een fat16-ESP aan. Bovendien hadden Ubuntu 11.04 en 11.10 een serieuze bug waarbij de ESP soms per ongeluk leeg werd gemaakt.

Bij het booten is nog één term van belang: CSM, dat staat voor compatibility support module en het biedt ondersteuning voor legacy-booten door ondersteuning voor het bios te bieden. Je kunt CSM alleen inschakelen als de optie Secure Boot uitstaat, maar daarover in paragraaf 3 meer.

©PXimport

02 Gpt

Gpt, oftewel de ‘guid partition table’, vervangt het oude mbr (master boot record), de manier waarop vroeger schijven werden ingedeeld. De gpt is een onderdeel van de uefi. Sinds Windows Vista kan Windows kan alleen van gpt-schijven in uefi opstarten. De partition header van een gpt-schijf bevat informatie over welke blokken gebruikt kunnen worden op de schijf. Ook bevat deze header de ‘guid’ van de schijf: de general unique identifier, een uniek identificatienummer. Een gpt-schijf kan basic of dynamic zijn, net als bij het mbr. Gpt ondersteunt tot 128 partities en het maakt automatisch een back-up van de gpt-partitietabel.

Het probleem met het master boot record was dat het niet meer van deze tijd was: schijven groter dan 2 TB konden niet gestart worden bijvoorbeeld. Gpt biedt ondersteuning voor schijven tot een grootte van 9,4 ZB. Dat zijn zetabytes, oftewel 9,4 x 10^21. Overigens bevat de gpt in het allereerste blok nog wel een mbr voor compatibiliteitsredenen. Deze zit in blok 0. In blok 1 zit de gpt-header en in de rest zijn de partities aanwezig.

©PXimport

03 Secure Boot

Secure Boot is een onderdeel van uefi en is bedoeld om malware die de firmware aanvalt tegen te houden. Zulke malware is erg naar, want die kan namelijk een herinstallatie van het besturingssysteem overleven doordat die zich in de firmware nestelt. Het principe van Secure Boot is erg eenvoudig: alleen binary’s (bestanden met alleen code) die ondertekend zijn door een vertrouwde partij worden opgestart. Malware kan in theorie niet ondertekend worden, dus daarmee wordt malware dan geblokkeerd. Bedrijven kunnen hun uefi-binary door Microsoft laten ondertekenen. In de meeste uefi’s zijn de publieke sleutels van Microsoft aanwezig. Als een bedrijf zijn binary laat ondertekenen, dan gebeurt dit dus met Microsofts privésleutel, zodat de firmware die binary herkent en start.

Ubuntu zag de bui al hangen en heeft dus zijn binary’s maar laten ondertekenen door Microsoft. Daarom kun je sinds 2012 Ubuntu gebruiken op uefi-systemen. Indien je een Linux-distributie wilt gebruiken die niet ondertekend is, dan kun je of Secure Boot uitzetten in de uefi of je kunt zelf eigen sleutels installeren in je uefi. Uiteindelijk wordt voor Secure Boot gewoon een public-private key-architectuur gebruikt en dus kun je dan de publieke sleutel van de binary installeren, waarna die wel gewoon gestart kan worden.

©PXimport

04 Secure Boot uitschakelen

Als je een Linux-distributie wilt opstarten vanaf een usb, kun je het dus eerst proberen met Secure Boot aan, aangezien een aantal Linux-distributies daar gewoon mee werken. Als dat niet lukt, is het de eenvoudigste optie om Secure Boot maar uit te zetten. Hoe je dat precies doet, verschilt per pc-fabrikant. Bij sommige pc’s zal de procedure bovendien lastiger of zelfs in zijn geheel onmogelijk zijn dan bij andere.

Om het toch te proberen, ga je in de uefi en zoek je naar de optie genaamd Secure Boot. Om in de uefi te komen, klik je in Windows 10 op de startknop, daarna op het tandwiel (de optie Instellingen) en tot slot op Opnieuw opstarten met de Shift-toets ingedrukt. Eenmaal opnieuw gestart verschijnt er een Windows-scherm en ga je naar Problemen oplossen / Geavanceerde opties / Instellingen voor UEFI-firmware / Opnieuw opstarten. De Secure Boot-opties vind je vaak onder het menu Boot of onder Windows Configuration Options.

Een andere manier om in de uefi te komen is net als vroeger om in het bios te komen: om tijdens het opstarten te drukken op sneltoetsen als Esc, F2, Delete enzovoort. De exacte toets verschilt per fabrikant.

Sommige fabrikanten bieden tooltjes aan waarmee je de uefi-instellingen via Windows kunt wijzigen. Dat is een stuk eenvoudiger, dan kun je misschien rustiger eens rondkijken met de handleiding van je moederbord ernaast.

©PXimport

05 Maak handmatig een opstartbare uefi-schijf

Je kunt op twee manieren een opstartbare usb-schijf maken: met een tooltje of zonder. Het tooltje behandelen we in paragraaf 6, maar dit zou geen masterclass zijn als we niet eerst handmatig aan de slag gaan. Sluit je usb-schijf aan. Open vervolgens in Windows 10 de PowerShell met admin-rechten en typ dan diskpart en list disk. Onthoud het schijfnummer van je usb-stick en typ bijvoorbeeld select disk 5. Typ clean om de schijf te legen. Zie je bij Gpt in de tabel die getoond wordt na de opdracht list disk een sterretje bij je usb? Typ dan convert mbr. Daarna typ je de opdrachten:

create partition primaryformat fs=fat32 quickactiveassignexit

Vooral het active-commando is belangrijk: dat markeert de schijf als opstartbaar. Daarna kopieer je de bestanden vanuit een iso-bestand naar je usb-stick. Dat kan dus zijn vanuit de Windows-iso, maar ook een Linux-iso. Om te verifiëren dat je schijf goed gaat werken, check even of er een map /efi/boot aanwezig is met een efi-bestand erin.

©PXimport

06 Opstartbare uefi-schijf met een tooltje

Er zijn diverse handige tooltjes om een opstartbare uefi-usb-stick of -schijf te maken. De eerste is de Windows 10-downloadtool van Microsoft. Daarmee kun je of een iso of meteen een opstartbare usb-stick maken. Voor Linux kun je gebruikmaken van een tool als Rufus of Win32DiskImager. Veel Linux-distributies leveren ook een iso-bestand dat je direct naar de schijf weg kunt schrijven, waarna die automatisch opstartbaar wordt. Daarvoor gebruik je dd-modus. Zorg ervoor dat je in Rufus kiest voor de uefi-computerindeling met een gpt-schijf.

©PXimport

07 Bootmenu

Het belangrijkste is nu natuurlijk om het uefi-bestand van deze schijf te starten. Zoals altijd: de methode verschilt per moederbord. Vaak zie je het na het starten meteen de tekst om het bootmenu te openen, vaak is dat iets als F1, F2, F11, F12, Delete of Esc (let op dat je toets kiest waarmee je het bootmenu opent en niet in de uefi opstart). Eenmaal in het bootmenu zie je de usb-stick in de lijst staan en kun je deze selecteren en starten. Wil je nu niet steeds handmatig op een toets willen drukken, dan kun je natuurlijk ook de opstartvolgorde wijzigen. Daarvoor start je wel in de uefi op en zoek je naar de bootvolgorde. Het is dan een kwestie van usb bovenaan zetten.

©PXimport

▼ Volgende artikel
Haakjes, spaties of streepjes: zo stel je je eigen telefoonnotatie in Excel in
© ID.nl
Huis

Haakjes, spaties of streepjes: zo stel je je eigen telefoonnotatie in Excel in

Wie in Excel een contactlijst opstelt, merkt al snel dat de kolom met telefoonnummers zich niet altijd gedraagt zoals gehoopt. Zo verdwijnt de eerste 0 vaak vanzelf, waardoor de nummers minder bruikbaar worden. En dan hebben we het nog niet eens over de verwarring die kan ontstaan bij internationale telefoonnummers.

Dit gaan we doen

In dit artikel zet je telefoonnummers in Excel om naar een vaste notatie, zonder dat de voorloopnul verdwijnt. Je leert waar de instelling Locatie het verschil maakt, hoe je met Aangepast je eigen opmaak bouwt (met hekjes) en hoe je internationale nummers logisch en consistent weergeeft met een plusteken en spaties. 

Lees ook: Zo genereer je random getallen in Excel

Telefoonnummers die beginnen met nul

Selecteer de cel met het telefoonnummer en ga naar het tabblad Start. Klik bij het onderdeel Getal op het kleine pijltje rechtsonder. In het dialoogvenster Cellen opmaken kies je in de linkerkolom Speciaal en daarna bij Type de optie Telefoonnummer. Let wel: deze optie verschijnt alleen als onderaan bij Locatie de optie Nederlands (standaard) is geselecteerd. Voor Belgische gebruikers geldt dat wanneer hier Locatie: Nederlands (België) staat, de optie Telefoonnummer niet beschikbaar is. Zij moeten dus de locatie wijzigen. Vanaf dan worden ook de voorloopnullen correct weergegeven.

Zorg dat de instelling Locatie op Nederlands (standaard) staat.

Telefoonnummers formatteren

Wil je alle telefoonnummers op een vaste manier weergeven, bijvoorbeeld als (06) 1234 56 78, 06-1234 78 78 of 06 1234 56 78? Dat kan eenvoudig via het dialoogvenster Cellen opmaken. Kies eerst, zoals hierboven beschreven, de optie Telefoonnummer. Klik daarna links op Aangepast. In het vak Type verschijnt een standaardnotatie met hekjes, zoals 0#########. Deze kun je aanpassen naar een eigen indeling. Enkele voorbeelden: (0#) #### ## ## geeft (06) 1234 56 78,0#-#### ## ## geeft 06-1234 78 78 en 0# #### ## ## geeft 06 1234 56 78. Met de knop Opmaak kopiëren/plakken (het kwastje) kun je deze aangepaste weergave vervolgens toepassen op alle andere cellen. Let op, dit is puur een weergave. Excel behandelt de telefoonnummers nog steeds als getallen. Spaties, haakjes of streepjes maken dus geen deel uit van de waarde zelf. Dat betekent dat berekeningen ermee niet beïnvloed worden, maar dat je bij export of gebruik in andere programma's alleen de kale cijfers terugziet.

In de categorie Aangepast kun je het telefoonnummer door middel van hekjes vormgeven.

Internationale nummers

Bij internationale nummers wordt het landnummer voorafgegaan door het plusteken. Dat plusteken is betrouwbaarder dan een dubbele nul, omdat het internationale toegangsnummer niet in alle landen hetzelfde is. Ook deze weergave stel je in via Aangepast, met behulp van hekjes (#). Zorg ervoor dat je precies evenveel hekjes invult als het telefoonnummer cijfers telt. Vervolgens kun je de gewenste opmaak toevoegen door het plusteken en de spaties in de notatie op te nemen. Bijvoorbeeld +32 # ### ## ## geeft +32 3 456 78 90 en +31 # #### #### geeft +31 6 1234 5678.

Je moet exact hetzelfde aantal hekjes gebruiken als er cijfers zijn.

Kan ook handig zijn:

Een ouderwetse telefoonklapper
▼ Volgende artikel
Bloomberg: PlayStation 6 komt mogelijk pas in 2028 of 2029 uit
© Sony
Huis

Bloomberg: PlayStation 6 komt mogelijk pas in 2028 of 2029 uit

In navolging van eerdere berichtgeving heeft ook toonaangevende nieuwswebsite Bloomberg geopperd dat Sony overweegt om de PlayStation 6 intern uit te stellen.

In het artikel wordt gemeld dat Sony zou overwegen om de PlayStation 6 pas in 2028 of 2029 uit te brengen. Dit terwijl Sony zelf in eerste intentie zou hebben gemikt op 2027. "Sony Group Corp overweegt nu om de release van zijn volgende PlayStation-console uit te stellen naar 2028 of zelfs 2029."

Vorige maand claimde MST Financial-analist David Gibson ook al dat Sony de PlayStation 5-levenscyclus wil verlengen en de console pas ergens na 2028 uit te willen brengen. Sony zelf heeft echter nog niet op de geruchten gereageerd - het bedrijf heeft de PlayStation 6 nog niet eens officieel aangekondigd, laat staan een publiekelijke releasedatum genoemd.

View post on Instagram
 

Reden voor vertraging

Zoals gemeld zou de voornaamste reden voor een eventuele vertraging alsmaar stijgende prijzen voor en tekorten van geheugen zijn. Prijzen van RAM (Random Access Memory) stijgen alsmaar doordat er massaal RAM nodig is om het alsmaar populairder wordende AI werkende te houden. RAM is echter nodig in spelcomputers.

De theorie is dat bedrijven zoals Sony hun plannen voor nieuwe consoles uitstellen, omdat de prijzen voor RAM zo hoog liggen. Dat zou immers betekenen dat men ook hogere prijzen voor nieuwe consoles moet vragen, en dat zou eventueel een negatief effect op het succes van deze consoles kunnen hebben. Ook zouden tekorten aan RAM roet in het eten kunnen gooien.

Vooralsnog is echter nog niets bevestigd. Volgens eerdere geruchten wil Sony niet alleen de PlayStation 6 uitbrengen, maar ook een handheldversie om PS6- en PS5-games op te spelen. Zoals gezegd is de PS6 nog niet officieel aangekondigd, dus bevestigd is dit nog niet.

Onlangs schreven we een column over waarom het helemaal geen ramp hoeft te zijn dat de PlayStation 6 nog een aantal jaar op zich laat wachten.

Effecten op andere consoles

Overigens kan de situatie rondom RAM ook effect hebben op consoles van andere bedrijven. De prijzen van bestaande consoles gaan zo nu en dan ook omhoog - in plaats van dat ze omlaag gaan, zoals traditioneel gezien gebeurt - en volgens het Bloomberg-artikel overweegt Nintendo de prijs van de Switch 2 ook omhoog te gooien. Nintendo liet onlangs bij het bekendmaken van diens kwartaalcijfers al weten de RAM-situatie nauwlettend in de gaten te houden.