Home
» PC-tips
»
Oplossing voor "Geen opstartbaar apparaat gevonden" na installatie van Debian op UEFI
Oplossing voor "Geen opstartbaar apparaat gevonden" na installatie van Debian op UEFI
Als een pc direct na een Debian-installatie de melding "Geen opstartbaar apparaat gevonden" weergeeft, kunnen de bestanden nog intact zijn. De firmware start mogelijk in de verkeerde modus, de EFI-systeempartitie (ESP) is mogelijk niet gekoppeld waar GRUB deze verwacht, of de firmware heeft mogelijk de UEFI-opstartoptie van Debian verloren of gedeprioriteerd. Controleer deze zaken in de aangegeven volgorde voordat u partities wijzigt.
Deze handleiding gaat uit van een typische 64-bits x86-pc met UEFI en Debian met GRUB. Commando's die een schijf of partitie benoemen, zijn slechts voorbeelden: identificeer uw eigen apparaten met lsblk -f. Formatteer de ESP niet en installeer Debian niet opnieuw als eerste reactie.
1. Controleer of de computer probeert op te starten in UEFI-modus.
UEFI-firmware leest een EFI-programma van een FAT-geformatteerde ESP en kan een opgeslagen NVRAM-opstartvermelding gebruiken om deze te vinden. Legacy BIOS/CSM-opstarten volgt een ander pad. Een installatie-USB die in Legacy-modus wordt gestart, kan daarom een opstartpad instellen dat niet overeenkomt met de UEFI-configuratie van de geïnstalleerde machine.
Gebruik het eenmalige opstartmenu om de Debian-optie te testen en kies de installatieoptie die expliciet is gemarkeerd als UEFI wanneer u de herstelmedia start.
Open het eenmalige opstartmenu of de firmware-instellingen tijdens het opstarten. Kies eerst een optie met de naam Debian , indien aanwezig. Als het systeem opstart, open dan de firmware-instellingen en plaats Debian boven de interne schijf of andere besturingssystemen in de opstartvolgorde. Menunamen verschillen per fabrikant, dus raadpleeg de handleiding van de computerfabrikant voor de juiste opstarttoets en menu-aanduidingen.
Als je herstelmedia nodig hebt, selecteer dan de USB-optie die begint met "UEFI". Zodra Debian Live of de installatieshell is gestart, controleer dan de modus:
test -d /sys/firmware/efi && echo "Booted in UEFI mode" || echo "Booted in Legacy mode"
Als het resultaat 'Legacy' aangeeft, start de computer dan opnieuw op en kies de UEFI USB-optie. Hulpmiddelen zoals [naam van het hulpprogramma] efibootmgrkunnen geen firmwarevariabelen beheren vanuit een Legacy-opstartomgeving. Als er geen UEFI USB-optie verschijnt, controleer dan of UEFI-opstarten is ingeschakeld in de firmware; wijzig geen Secure Boot- of opslagcontrollerinstellingen, tenzij u de gevolgen voor de bestaande installatie kent.
2. Identificeer het geïnstalleerde systeem en de bijbehorende EFI-systeempartitie.
Inspecteer vanuit de UEFI-opgestarte live-omgeving de apparaten en bestandssystemen:
lsblk -f
Zoek naar het rootbestandssysteem van Debian, vaak ext4of btrfs, en een kleine FAT32-partitie met het GPT-type "EFI System". Het ESP-bestandssysteem kan gedeeld worden met Windows; dat is normaal. De onderstaande voorbeeldlabels /dev/sda1zijn /dev/sda2plaatsaanduidingen, geen standaardwaarden. NVMe-schijven gebruiken vaak namen zoals /dev/nvme0n1p1.
Gebruik de bestandssysteem- en partitie-informatie van lsblk om de bestaande ESP en Debian-root te identificeren; vertrouw niet op de voorbeeldapparaatnamen in een illustratie.
Koppel de rootpartitie eerst alleen-lezen als u deze alleen hoeft te inspecteren, of koppel deze normaal voor reparatie nadat u de juiste partitie hebt geïdentificeerd. Als uw installatie een aparte /bootpartitie gebruikt, koppel deze dan eerst eronder /mnt/bootvoordat u de ESP koppelt. Maak of formatteer geen vervangende ESP alleen omdat dit niet duidelijk in de lijst staat.
Voor een standaardconfiguratie met root ingeschakeld /dev/sda2en ESP ingeschakeld /dev/sda1, ziet een reparatie-mount er als volgt uit:
mount /dev/sda2 /mnt
mkdir -p /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi
cat /mnt/etc/fstab
Vergelijk de ESP UUID die wordt gerapporteerd met lsblk -fde vermelding voor /boot/efiin /mnt/etc/fstab. Als deze verschillen, stop dan en controleer welke partitie bij deze Debian-installatie hoort. Sommige systemen koppelen de ESP aan /bootof gebruiken een andere indeling; neem de indeling van het geïnstalleerde systeem over in plaats van blindelings het voorbeeldkoppelpunt te gebruiken.
3. Herstel GRUB vanuit een UEFI-herstelomgeving
Zodra de root, eventuele afzonderlijke mappen /booten de ESP op hun beoogde locaties onder zijn gemount /mnt, koppelt u de actieve systeemdirectory's en start u de installatie:
for i in /dev /dev/pts /proc /sys /run; do mount --bind "$i" "/mnt$i"; done
chroot /mnt
Controleer binnen de chroot-omgeving of het /boot/efiom de ESP gaat en of het geïnstalleerde systeem het systeem is dat u wilt repareren. Voor een standaard Debian amd64 GRUB-installatie met Secure Boot uitgeschakeld, installeert u de EFI-loader opnieuw en bouwt u het menu opnieuw op:
Voer de reparatieopdrachten pas uit nadat de juiste Debian-rootpartitie en ESP-partitie zijn aangekoppeld; de weergegeven partitienamen zijn voorbeelden en geen geteste machine.
De --targetbovenstaande waarde geldt voor amd64 pc's. Debian ARM64-systemen gebruiken een andere target. De officiële manpagina van GRUB definieert --efi-directoryde ESP-root en beschrijft de UEFI Secure Boot-opties. Als Secure Boot is ingeschakeld, blijf dan de ondertekende opstartketen van Debian gebruiken: forceer geen niet-ondertekende loader op de ESP. De ondertekende GRUB- en shim-pakketten van Debian bieden het juiste pad; raadpleeg de Debian Secure Boot-documentatie voor uw release en architectuur.
Als grub-installer meldingen verschijnen dat EFI-variabelen niet beschikbaar zijn, controleer dan nogmaals of de live-USB in UEFI-modus is opgestart en of deze /sys/firmware/efiaanwezig is. Als de firmwarevariabelen nog steeds niet beschikbaar zijn, kunt u mogelijk de loader wel op de ESP plaatsen, maar de NVRAM-ingang niet registreren vanuit deze sessie; gebruik in dat geval de optie "Opstarten vanuit EFI-bestand" van de firmware of herhaal de reparatie vanuit een correct opgestarte UEFI-omgeving. Beschouw een waarschuwing niet als een bevestiging dat de firmware-ingang is aangemaakt.
4. Controleer de Debian-firmware en de opstartvolgorde.
Verlaat de chroot-omgeving en inspecteer vervolgens de UEFI-opstartvariabelen:
exit
efibootmgr -v
Zoek naar een Debian-vermelding en noteer deze BootOrder. Als Debian wordt weergegeven, maar een ander apparaat als eerste verschijnt, gebruik dan de firmware-instellingen om Debian als eerste te plaatsen. Dit is vaak eenvoudiger en veiliger dan een volledige opstartvolgorde in een commando te herschrijven. De efibootmgrman-pagina beschrijft hoe vermeldingen worden benoemd en hoe BootOrderde firmware bepaalt welke actieve vermelding als eerste wordt geprobeerd.
Controleer na de reparatie of de Debian-vermelding bestaat en vóór de andere opstartopties in de opstartvolgorde van de firmware verschijnt.
Als de Debian-vermelding ontbreekt maar het ESP-bestand wel de juiste informatie bevat EFI/debian, gebruik dan de bestandsbrowser van de firmware (indien beschikbaar) om de EFI-loader van Debian te selecteren. Met Secure Boot ingeschakeld is dit normaal gesproken het ondertekende shim-bestand, zoals EFI/debian/shimx64.efiop amd64; met Secure Boot uitgeschakeld is mogelijk het GRUB EFI-bestand beschikbaar. De exacte bestandsnamen verschillen per architectuur en pakketstatus. Als de firmware geen bestandsbrowser biedt, voer dan de GRUB-reparatie opnieuw uit met NVRAM-toegang.
Sommige firmware-updates of het resetten van instellingen verwijderen Linux-vermeldingen, en sommige firmware-implementaties slagen er niet in om nieuw aangemaakte vermeldingen te behouden. De UEFI-documentatie van Debian beschrijft ook een alternatief pad voor verwisselbare media, maar dat zou een bewuste compatibiliteitsoplossing moeten zijn, geen reden om EFI-bestanden over bestaande bestanden te kopiëren zonder ze te controleren.
5. Koppel het symptoom aan de meest waarschijnlijke oplossing
Debian start op vanuit het eenmalige menu: de opstartvolgorde in de firmware vastzetten.
De UEFI USB-stick werkt, maar Debian ontbreekt: controleer de ESP-mount en installeer de juiste EFI-loader opnieuw.
efibootmgrKan geen toegang krijgen tot variabelen: start de herstelmedia opnieuw op in UEFI-modus.
Debian verschijnt wel, maar keert terug naar de firmware: controleer de Secure Boot-compatibiliteit, het pad naar de loader en of de ESP bij deze installatie hoort.
Er bestaan verschillende Linux-installaties: identificeer welke root en ESP bij elkaar horen voordat je het programma uitvoert grub-install.
Debian 13 (Trixie) introduceerde een optionele systemd-boot met een shim-configuratie, zoals gedocumenteerd door Debian. Als u deze bootmanager bewust hebt geïnstalleerd in plaats van GRUB, volg dan de bijbehorende herstelinstructies voor systemd-boot; het uitvoeren van GRUB-reparatieopdrachten herstelt de systemd-boot-vermeldingen niet. Voor een typisch Debian GRUB-systeem dat door de installateur is geselecteerd, blijven de bovenstaande controles relevant.
6. Herstart en controleer
Verlaat de chroot, ontkoppel de bestandssystemen in omgekeerde volgorde, verwijder de rescue-USB en herstart. Als het ontkoppelen meldt dat een doel bezet is, sluit dan de shells die dat mountpunt gebruiken en probeer het opnieuw in plaats van een geforceerde afsluiting uit te voeren terwijl de bestandssystemen actief zijn. Controleer of de firmware Debian start zonder de USB aangesloten. Controleer vervolgens of de verwachte kernel en desktop geladen zijn en of een tweede herstart nog steeds werkt. Als het opnieuw mislukt, noteer dan het exacte firmwarebericht, de uitvoer van lsblk -fen of er efibootmgr -veen Debian-item wordt weergegeven; deze details onderscheiden een ontbrekend item van een loader- of bestandssysteemprobleem.