2017年8月3日 星期四

安裝GRUB在GPT分割的硬碟上

在下指令 grub-install 到硬碟的時候出現下面的錯誤訊息:
Installing for i386-pc platform.grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.grub-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..grub-install: error: will not proceed with blocklists.
這代表說這個用GPT分割的硬碟沒有BIOS Boot Partition,雖說可以成功使用EFI的主機板開機,但若是BIOS的主機板則無法開機~

解法有兩種:
  1. 將硬碟用MBR分割(用fdisk),但這招不適用於大小超過2TB的硬碟
    此法請參照安裝GRUB到硬碟上再驗證
  2. 將硬碟用GPT分割(用gdisk),在2TB之前弄一個BIOS Boot Partition的分割區
    此法使用gdisk分割硬碟,切一個partition出來,大小只要16MB就夠了:
方法2的詳細過程如下:
  • Command (? for help): n
  • Partition number (1-128, default 1): 1
  • First sector (34-7814037134, default = 2048) or {+-}size{KMGTP}: 2048
  • Last sector (2048-7814037134, default = 7814037134) or {+-}size{KMGTP}: +16M
  • Current type is 'Linux filesystem'
  • Hex code or GUID (L to show codes, Enter = 8300): ef02
  • Changed type of partition to 'BIOS boot partition'
螢幕上顯示會類似上面,紅色的字代表是要輸入的訊息。假設這個硬碟是/dev/sda,這個BIOS boot partition會是在/dev/sda1上,但要安裝grub只要輸入
  • grub-install /dev/sda

參考資料

_EOF_

1 則留言:

  1. 看這篇的回應。很多人搞錯EF00和EF02.....
    https://askubuntu.com/questions/500359/efi-boot-partition-and-biosgrub-partition

    回覆刪除