Ik heb win10 en Linux voor dual-boot op dezelfde ssd geïnstalleerd, tijdens de installatie van Linux bevat het een grub. Na de installatie kan ik zien dat er een nieuw Linux efi-bestand is toegevoegd aan de ESP-partitie. Nu heb ik besloten om Linux volledig te verwijderen, de eerste stap die ik deed is het verwijderen van de efi-opstartvermelding met een tool genaamd EasyUEFI. Het item verdween toen ik opnieuw opstartte en op F11 drukte.
Maar er zijn 2 delen die me in de war brengen:
-
Het Linux efi-bestand bevindt zich nog steeds in de ESP-partitie na de item is verwijderd, dacht ik dat het bestaan van dergelijke efi-bestanden is hoe de UEFI zou weten of er een dergelijke opstartoptie is wanneer de gebruiker tijdens het opstarten op F11 drukt. Dit betekent dat de opstartopties ergens anders zijn vastgelegd, en de EasyUEFI-tool heeft dat eenvoudig verwijderd. Waar is het, bevindt het zich in de ESP-partitie?
-
Ik weet niet helemaal zeker of ik dit goed begrijp, zijn UEFI-opstartbestanden (het efi-bestand en alle andere opstartrecords die het tijdens installatie) en nu hetzelfde eten? Of het is wanneer de gebruiker een efi-opstartvermelding selecteert, het gaat naar het opstartmenu, wat een apart ding is? Als efi boot de opstartselectie al aankan, is het dan niet zinloos om erna een grub te hebben?
Dan jij
Opmerkingen
- 1 Het ' s op uw firmware, niet op ESP. 2 UEFI is uw firmware en grub is een UEFI-toepassing die de bootloader-functionaliteit kan dienen. UEFI kan opstartselectie aan, maar kan ' niet elk besturingssysteem opstarten (het kan alleen UEFI-applicaties op de ESP uitvoeren, bijv. Grub, Linux-kernel met EFI-stubcode, moderne Microsoft bootmgr), dus het loopt rooien. Grub biedt ook zijn eigen opstartmenu en kan meer besturingssystemen opstarten (en veel meer andere functionaliteiten) dan UEFI.
- 2. " Is het niet ' zinloos om Grub te hebben? " Nee en ja. De rol van het geladen programma waarnaar wordt verwezen door de opstartvariabele is om te functioneren als opstartlader voor het besturingssysteem. Het kan ook hulpfuncties hebben, zoals een opstartmenu. Aan de andere kant kan de Linux-kernel zo worden geconfigureerd dat de kernelimage zelf een geldig EFI-binair bestand is dat zichzelf kan opstarten. Dus ja, het gebruik van Grub met UEFI-firmware is zinloos, of in ieder geval niet nodig. Je kunt ook " bootmanagers " gebruiken zoals systemd-boot of rEFInd, die geen bootladers zijn, maar alleen bootmenu providers.
- Bedankt, dat ' erg nuttig is, nu begrijp ik de foto.
- Nee, UEFI kan ' Om niet alles op te starten, moet de kernel (of iets dat als opstartstub voor het besturingssysteem wordt gebruikt) een UEFI-toepassing zijn en zich in ESP bevinden. Grub biedt meer flexibele opstartopties, zoals opstartkernels van andere partities met niet-FAT-bestandssystemen, volg het multiboot-protocol of linux-opstartprotocol, chainloader naar MBR van een andere schijf, enz.
Answer
1.) Met EasyUEFI “bewerk je de UEFI-opstartvariabelen. Deze worden opgeslagen in het systeem-NVRAM, net als BIOS-instellingen. In Linux kan ze bewerken met het efibootmgr
hulpprogramma; in gewone Windows kan bcdedit /enum FIRMWARE
ze weergeven en andere opties kunnen worden gebruikt om ze te bewerken.
Als er geen opstartvariabele is gedefinieerd, is er een specifiek fallback-pad dat UEFI automatisch bekijkt: voor 64-bits x86-hardware is dit pad \EFI\boot\bootx64.efi
. Als dit bestand bestaat in een ESP-partitie of in een FAT32 verwijderbare media, de schijf of andere media wordt automatisch beschouwd als “opstartbaar” in de oorspronkelijke UEFI-stijl.
2.) UEFI is systeemfirmware (zoals BIOS, maar nieuwer). GRUB is een bootloader, dus het moet aan wat dan ook voldoen r-vorm wordt verwacht door de firmware van de relevante hardware-architectuur, anders kan de firmware GRUB niet laden.
Dus de kern van GRUB kan vele vormen aannemen: met BIOS neemt GRUB de vorm aan van een beetje opstartcode in MBR + meer code ingebed in schijfblokken tussen de MBR en het begin van de eerste partitie. Met UEFI kan de kern van GRUB (of zelfs alles ervan) de vorm aannemen van een enkel grubx64.efi
-bestand binnen de ESP-partitie.
GRUB heeft zijn eigen architectuur-IDs: de versie van GRUB voor BIOS staat bekend als de i386-pc
-versie, en de UEFI-versie op 64-bits x86-hardware staat bekend als de x86_64-efi
versie. Als u bijvoorbeeld een oud systeem afbeeldt en de afbeelding herstelt naar nieuwe hardware, en u zult merken dat het nieuwe systeem een andere firmwarestijl gebruikt (dwz het oude systeem gebruikte traditionele BIOS en het nieuwe zal UEFI zijn), dan u “zult gewoonlijk de ESP-partitie moeten toevoegen, de i386-pc
versie van het GRUB-pakket moeten vervangen door de x86_64-efi
versie en vervolgens GRUB opnieuw moeten installeren.