我有双重启动(Fedora 和 Windows 10),在 Windows 出现故障后,机器仅使用 Windows 的启动加载程序启动,而不是像以前那样使用 grub2。
我怎样才能恢复grub2?
我尝试过的:
$ sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.5.7-300.fc24.x86_64
Found initrd image: /boot/initramfs-4.5.7-300.fc24.x86_64.img
Found linux image: /boot/vmlinuz-4.4.4-301.fc23.x86_64
Found initrd image: /boot/initramfs-4.4.4-301.fc23.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-f4a99c4a747b4f928c2ad16c434a731d
Found initrd image: /boot/initramfs-0-rescue-f4a99c4a747b4f928c2ad16c434a731d.img
Found linux image: /boot/vmlinuz-0-rescue-b80563ee4ffb43768b1936a46d9cd0d5
Found initrd image: /boot/initramfs-0-rescue-b80563ee4ffb43768b1936a46d9cd0d5.img
Found Windows Boot Manager on /dev/sdb1@/EFI/Microsoft/Boot/bootmgfw.efi
done
重启后,直接回到Windows。
[root@nightwatch] # efibootmgr -v
BootCurrent: 0006
Timeout: 1 seconds
BootOrder: 0006,0000,0003,0001,0002
Boot0000* Windows Boot Manager HD(1,GPT,d602a4af-b36c-4bf9-83b4-5d93295600bb,0x800,0x64000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...,................
Boot0001 Hard Drive BBS(HD,,0x0)..GO..NO........o.H.i.t.a.c.h.i. .H.D.S.7.2.1.0.1.0.C.L.A.3.3.2....................A...........................>..Gd-.;.A..MQ..L. . . . . . .P.J.9.2.1.2.Q.H.7.1.7.G.A.M........BO..NO........o.S.a.m.s.u.n.g. .S.S.D. .8.4.0. .E.V.O. .1.T.B....................A...........................>..Gd-.;.A..MQ..L.1.S.9.D.S.N.F.A.1.7.5.5.8.7. .F. . . . ........BO..NO........o.H.i.t.a.c.h.i. .H.D.T.7.2.1.0.1.0.S.L.A.3.6.0....................A...........................>..Gd-.;.A..MQ..L. . . . . . .T.S.6.F.7.0.H.M.X.2.K.W.K.4........BO..NO........o.H.i.t.a.c.h.i. .H.D.S.7.2.2.0.2.0.A.L.A.3.3.0....................A...........................>..Gd-.;.A..MQ..L. . . . . . .K.J.1.1.0.7.B.Y.X.H.P.Y.D.9........BO..NO........o.S.a.m.s.u.n.g. .S.S.D. .8.5.0. .E.V.O. .5.0.0.G.B....................A...........................>..Gd-.;.A..MQ..L.2.S.J.1.S.N.G.A.5.2.1.8.6.7. .J. . . . ........BO
Boot0002 CD/DVD Drive BBS(CDROM,,0x0)..GO..NO........o.T.S.S.T.c.o.r.p. .C.D.D.V.D.W. .S.H.-.2.2.4.D.B....................A...........................>..Gd-.;.A..MQ..L.9.R.8.6.Y.6.F.A.0.B.5.0.Z.1. . . . . . ........BO
Boot0003* UEFI: Built-in EFI Shell VenMedia(5023b95c-db26-429b-a648-bd47664c8012)..BO
Boot0006* UEFI: (FAT) TSSTcorp CDDVDW SH-224DB PciRoot(0x0)/Pci(0x1f,0x2)/Sata(4,65535,0)/CDROM(1,0x59,0x1680)..BO
这更有前途。那里没有 grub2 条目...
最后,如果有帮助的话:
; df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 7.9G 0 7.9G 0% /dev
tmpfs 7.9G 1.9M 7.9G 1% /dev/shm
tmpfs 7.9G 1.5M 7.9G 1% /run
tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup
/dev/mapper/fedora-root 50G 12G 36G 25% /
tmpfs 7.9G 1.4M 7.9G 1% /tmp
/dev/sdb2 477M 184M 264M 42% /boot
/dev/mapper/fedora-home 865G 71G 751G 9% /home
/dev/sdb1 200M 45M 155M 23% /boot/efi
tmpfs 1.6G 16K 1.6G 1% /run/user/1000
/dev/sdd1 1.9T 979G 885G 53% /media/Backups
/dev/sdc1 932G 474G 459G 51% /media/MediaVault
/dev/sda2 444G 46G 398G 11% /media/DataVault
最后三个是安装的 Windows 共享。遗憾的是,在 Linux 上挂载 Windows 磁盘比在 Linux 上挂载 Windows 磁盘更容易。
运行后grub2-install /dev/sdb
,grub2确实加载了,但找不到任何操作系统可以启动。
如何解决这个问题?
此外,此信息是通过 rescutux 磁盘收集的但它没能帮我拯救靴子。
答案1
EFI 中的 Fedora 启动项似乎不知何故丢失了。
要恢复 Fedora 启动项,您可以在 root shell 中将 grub2 重新安装到磁盘:
grub2-install <YOUR_HDD_DEVICE>
例如:grub2-install /dev/sda
并确保grub.cfg
下有一个工作文件/boot/grub2
,如果没有这样的文件,您可以通过以下方式在 root shell 中重新生成它
grub2-mkconfig > /boot/grub2/grub.cfg
- 或者
grub2-mkconfig -o /boot/grub2/grub.cfg