grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won’t be possible Ubuntu使用BIOS启动时, GPT分区表下安装grub2报错 的解决办法

Ubuntu使用BIOS启动时, GPT分区表下安装grub2报错 的解决办法

报错信息如下:

root@fwhlin:/mnt# grub-install /dev/sdb
Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: error: embedding is not possible, but this is required for cross-disk install.
root@fwhlin:/mnt# 

This is fixed by creating a 2 MB partition on the 2 TB hard disk and setting its flag to “bios_grub”

1

parted /dev/sdb set 1 bios_grub on

Here “1” is the partition number for the 2 MB partition.

01

02

03

04

05

06

07

08

09

10

11

12

13

root@fwhlin:~# parted /dev/sdb set 1 bios_grub on

Information: You may need to update /etc/fstab.

root@fwhlin:~# parted /dev/sdb print

Model: ATA WDC WD20EZRX-00D (scsi)

Disk /dev/sdb: 2000GB

Sector size (logical/physical): 512B/4096B

Partition Table: gpt

Number Start End Size File system Name Flags

1 17.4kB 3049kB 3032kB ext4 bios_grub

root@fwhlin:~#

Now grub-install worked properly.

1

2

3

4

root@fwhlin:~# grub-install /dev/sdb

Installing for i386-pc platform.

Installation finished. No error reported.

root@fwhlin:~#

I set /dev/sdb as first boot device in BIOS and it booted perfectly.