天天看點

重裝windows後grub2修複

我的電腦上裝有fedora和windows兩個系統。一般裝系統的時候windows先裝而linxu後裝,因為linux能夠查找windows系統并為其提供啟動引導,而windows不能。是以當需要重裝windows的時候需要修複grub2引導。

工具

fedora的livecd,即安裝fedora時使用的安裝U盤

步驟

調整bios啟動順序,進入livecd

挂載硬碟

  • 使用

    fdisk -l

    查找/boot分區所在硬碟,比如我的是/dev/sda8。(在此之前需要運作

    su

    指令)
  • 挂載根分區

    mount /dev/mapper/fedora-root /mnt

  • 挂載/boot分區

    mount /dev/sda8 /mnt/boot

  • 挂載/dev分區

    mount --bind /dev /mnt/dev

修改根目錄

chroot /mnt

修複grub2

  • grub2-install /dev/sda

  • grub2-install /dev/sda --recheck

更新引導項

grub2-mkconfig -o /boot/grub2/grub.cfg

若不執行更新引導項,則啟動的時候會顯示過去存在的作業系統(此時并不會顯示新的作業系統)

進入fedora後,再次執行

grub2-mkconfig -o /boot/grub2/grub.cfg

,則引導項修複正常。

更改預設引導項

可以通過在

/boot/grub2/grub.cfg

添加

set default=X

(X為數字)來更改預設引導項。X從0開始,例如windows在引導菜單的第4行,則可以設定

set default=3

但是,這樣的修改方法是不推薦的。因為每次執行

grub2-mkconfig -o /boot/grub2/grub.cfg

都會更新

grub.cfg

這個檔案。正确的方法是執行

grub2-set-default <标題或名稱>

。其中,<标題或名稱>用指令

grep menuentry /boot/grub2/grub.cfg

找到,即menuentry後引号内的内容。

繼續閱讀