Wydaje się, że jest o tym sporo dyskusji, ale nie mogę znaleźć prostej odpowiedzi.
Kiedy próbuję zainstalować grub2, pojawia się ten błąd:
# grub2-install /dev/sda
Installing for i386-pc platform.
grub2-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub2-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
grub2-install: error: will not proceed with blocklists.
Oto układ / dev / sda:
Disk /dev/sda: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 7ECE06D0-9F0C-44FF-BCFB-142283172CCA
Device Start End Sectors Size Type
/dev/sda1 2048 411647 409600 200M Linux filesystem (/boot)
/dev/sda2 411648 4605951 4194304 2G Linux swap
/dev/sda3 4605952 46548991 41943040 20G Linux filesystem (/)
/dev/sda4 46548992 234441614 187892623 89.6G Linux LVM (/var)
Czy istnieje prosty sposób na obejście tego problemu? Rozumiem, że muszę utworzyć małą partycję na początku dysku jako „partycję rozruchową systemu BIOS”. Przypuszczam, że jedną z opcji byłoby przeniesienie wymiany do / dev / sda4 jako woluminu logicznego i użycie / dev / sda2 jako / boot.
Alternatywnie mógłbym po prostu wrócić do grub-legacy i nie martwić się o to (czy naprawdę jest korzyść z uaktualnienia do grub2, jeśli powoduje to tyle problemów?).
Myśli?
źródło
grub2-install grub-setup=/bin/true /dev/sda
dajegrub2-install: error: More than one install device?.
. Na mojej działającej maszynie wirtualnej sektor początkowy jest oznaczony jako 32, ale na maszynie produkcyjnej jest to 2048. Nie wiem, czy to jest istotne.Jeśli chcesz używać partycji GPT ze starszym stylem uruchamiania systemu BIOS, musisz utworzyć partycję BIOS o wielkości kilku megabajtów (16 MB powinien być w porządku i być w przyszłości) na urządzeniu, na którym chcesz zainstalować grub
grub-install
.Użyj np.
fdisk
Do utworzenia partycji typu „BIOS boot” gdzieś na dysku. Przykładowe dane wyjściowe:źródło
Partycja rozruchowa musi być sformatowana jako fat32, aby działała
Powinien to naprawić dla ciebie
Również flaga rozruchu musi być częściowo podzielona:
źródło