grub 2的安裝需要安裝以下包:
grub-pc, grub-common
可以在包管理工具中發現。
grub-install -v來查看當前版本, 傳統的grub版本號為0.97及以下, grub2的版本號是1.96或更高。
grub 2的配置文件是/boot/grub/grub.cfg, 但是這個文件是不允許修改的,我們要通過對/etc/grub.d/下的文件以及/etc/default/grub文件進行編輯,使用update-grub來生成配置文件。
也就是說, 一個正常的流程應該是:
sudo apt-get install grub-pc, grub-common #如果已經安裝了grub2則不需要
sudo grub-install --root-directory=/ /dev/sda #在設備上安裝grub2引導
sudo update-grub #生成grub配置文件
現在的問題就在update-grub,因為grub-install是可以指定設備來進行安裝的, 但是生成配置文件的update-grub是不能指定的。
whereis update-grub
查找到它在/usr/sbin/目錄下, 編輯發現它是對grub-mkconfig做的一個快捷方式,代碼如下:
#!/bin/sh
set -e
exec grub-mkconfig -o /boot/grub/grub.cfg "$@"