Je to možné a je to velmi často provádět s externími USB klíči i interními disky.
Pokud jde o typy tabulek oddílů:
-
BIOS normálně nepotřebuje jakákoli tabulka oddílů. Zajímá ho pouze kód bootstrapu část, která je prvních 440 bajtů vašeho MBR. (I když existují výjimky. Některé implementace BIOSu se skutečně porouchají, pokud nemohou najít MBR s jedním z obvyklých typů oddílů. Doufejme, že jsou vzácné.)
Tabulka oddílů GPT fyzicky není nahraďte MBR – vždy začíná v sektoru 1, zatímco MBR je v sektoru 0 – takže je možné, že disk bude mít obojí. Ve skutečnosti většina disků GPT dělá mít "ochranný MBR" obsahující pouze jeden oddíl, který pokrývá celý disk, aby se předešlo náhodnému zničení dat staršími nástroji pro dělení pouze MBR.
Můžete tedy nainstalovat například zaváděcí sektor Syslinux do vašeho MBR a on se nabootuje. (
syslinux-install_update
script to udělá za vás, ale můžete hledatgptmbr.bin
ve vašem balíčku syslinux, abyste to udělali ručně.)Podobně jako příznak „aktivní“ na oddílech MBR bude Syslinux hledat příznak „starší zaváděcí systém BIOS“ na oddílech GPT (bit 2 – UEFI spec 2.4 sekce 5.3.3 tabulka 20); výše uvedený skript také nastaví tento příznak automaticky, pokud máte
sgdisk
(z gptfdisk) nainstalován.GRUB lze také použít, ale je to také trochu otravnější. Protože GRUB 2 chce „vložit“ své části do tradičně nepoužívaných sektorů 1-62, přepíše GPT, který je uložen na stejném místě. Možná budete muset vytvořit vyhrazený oddíl o velikosti 2–4 MB a označit jej jako spouštěcí BIOS, takže
grub-install
by se našlo místo pro vložení. -
Na druhou stranu specifikace UEFI ano vyžadovat podporu pro typy oddílů MBR (část 12.3.1) a přiřadit typ oddílu MBR
0xEF
do systémové oblasti EFI (část 5.2.2).Takže pokud z nějakého důvodu nemůžete zprovoznit váš disk s GPT, stále můžete vytvořit systémový oddíl EFI na MBR a bude se používat, pokud bude mít správný souborový systém a všechny potřebné soubory (část 12.3.1.3):
Pro zařízení vyměnitelných médií musí existovat pouze jeden systémový oddíl kompatibilní s UEFI a tento oddíl musí obsahovat adresář definovaný UEFI v kořenovém adresáři. Adresář se bude jmenovat
EFI
. Všechny zavaděče OS a aplikace budou uloženy v podadresáři podEFI
s názvemBOOT
. Pro každou podporovanou architekturu procesoru vBOOT
musí existovat pouze jeden spustitelný obraz EFI adresář. Aby bylo možné vyměnitelné médium zavést pod EFI, musí být vytvořeno v souladu s pravidly stanovenými v části 3.4.1.1.
Pokud jde o operační systémy, Linux se obecně ani trochu nestará o to, zda se dnes spouští z BIOSu a zítra z UEFI. Tento týden jsem musel snad stokrát restartovat svůj notebook z režimu UEFI do režimu „kompatibility s BIOSem“ a zpět, přičemž jsem se snažil najít chybu v podpoře 3.17 UEFI...
Všimněte si, že článek „Bios to UEFI Transformation“ je o docela jiné věci. Popisuje, jak nainstalovat samotné UEFI – implementace UEFI s názvem „DUET“ – ke spuštění ze systému pouze s BIOSem. Nemá to nic společného se zaváděním operačního systému přímo z BIOSu.
Ano, je to možné.
Základní myšlenkou je rozdělit váš USB klíč pomocí GPT takto:
- Spouštěcí oddíl systému BIOS (typ GPT
1686148-6449-6E6F-744E-656564454649
) – 1 MiB, žádný souborový systém - Systémový oddíl EFI (typ GPT
C12A7328-F81F-11D2-BA4B-00A0C93EC93B
) - 200 MiB, souborový systém VFAT - Linuxový bootovací oddíl (GPT typ
0FC63DAF-8483-4772-8E79-3D69D8477DE4
) - 1 GiB, souborový systém ext4 - Kořenový/domácí souborový systém Linuxu (typ GPT
0FC63DAF-8483-4772-8E79-3D69D8477DE4
) - zbývající místo, souborový systém XFS nebo Btrfs
Toto rozdělení nám umožňuje zavést systém na starších systémech, protože u GPT je stále prostor pro MBR (z důvodů zpětné kompatibility) a Grub2 má dostatek místa pro instalaci střední fáze do zaváděcího oddílu BIOSu. Legacy BIOSy se nestarají o schéma rozdělení a Grub2/Linux Kernel nemá problémy s pochopením GPT na starších systémech.
Na systémech UEFI firmware UEFI ignoruje MBR a jako vstupní bod používá systémový oddíl EFI.
Například s Fedorou musíte v podstatě udělat následující:
Ujistěte se, že souborový systém Linux Boot je připojen pod /boot
a že souborový systém systémového oddílu EFI je připojen pod /boot/efi
.
(Znovu) Nainstalujte starší zavaděče i zavaděče UEFI:
grub2-pc grub2-efi-x64 shim-x64 efibootmgr
(Znovu) vygenerujte konfigurační soubory grub pro starší verzi i spouštění UEFI:
# grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
# grub2-mkconfig -o /boot/grub2/grub.cfg
V závislosti na tom, zda se váš systém spustil ve starším režimu nebo v režimu UEFI, musíte opravit první nebo druhý soubor a nahradit (linux|initrd)16
s (linux|initrd)efi
nebo naopak.
Nainstalujte grub do MBR:
# grub2-install --target=i386-pc /dev/sd_your_usb_stick_device
Voila.