您尚未登录。

#1 2022-05-10 15:45:06

maji.....1
会员
注册时间: 2022-05-10
帖子: 4

萌新求救,恢复windows 引导

先描述下情况:我有两块ssd 一块 装了windows10 一块是archlinux,开机使用grub引导,昨天由于实验环境的要求我决定把arch换成ubuntu,装完ubuntu之后windows的efi分区不见了,理论上系统是分别装到不同的ssd上,应该重装linux应该不影响windows,这是我现在lsblk- f 的输出:

NAME FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
loop0
     squash 4.0                                                    0   100% /snap/core20/1405
loop1
     squash 4.0                                                    0   100% /snap/bare/5
loop2
     squash 4.0                                                    0   100% /snap/core20/1434
loop3
     squash 4.0                                                    0   100% /snap/firefox/1232
loop4
     squash 4.0                                                    0   100% /snap/firefox/1300
loop5
     squash 4.0                                                    0   100% /snap/gnome-3-38-2004/99
loop6
     squash 4.0                                                    0   100% /snap/gtk-common-themes/1534
loop7
     squash 4.0                                                    0   100% /snap/snap-store/575
loop8
     squash 4.0                                                    0   100% /snap/snap-store/582
loop9
     squash 4.0                                                    0   100% /snap/snapd/15177
loop10
     squash 4.0                                                    0   100% /snap/snapd/15534
loop11
     squash 4.0                                                    0   100% /snap/snapd-desktop-integration/10
sda                                                                         
└─sda1
     ext4   1.0         61629ab3-5756-43ee-86ef-a1f6cfc5133a                
sdb                                                                         
├─sdb1
│    vfat   FAT32       8490-0F04                             490.3M     4% /boot/efi
└─sdb2
     ext4   1.0         3d4a1e4a-16de-438b-aa84-785238408090  200.8G     7% /
nvme0n1
│                                                                           
├─nvme0n1p1
│                                                                           
└─nvme0n1p2
     ntfs               465EFD1D5EFD0709     

我将 windows的ntfs 分区挂载后发现了 Windows/Boot/EFI/bootmgfw.efi
我也尝试根据archwiki中grubWindows installed in UEFI/GPT mode节操作,但是都失败了.
请问大佬们我接下去该怎么做才能修复windows引导

离线

#2 2022-05-10 16:00:45

Oliver Wei
会员
注册时间: 2021-07-13
帖子: 118

Re: 萌新求救,恢复windows 引导

你应该有两块sata和一块nvme?你说你两块ssd,但显示了sda,sdb,nvme?
大概率你删除arch的时候,也删除了arch的efi分区,恰好你的windows启动项也在arch的efi分区里?
你的bootmgfw.efi是在ntfs分区了?那显然引导不了啊,而且boot怎么安在ntfs分区里的? 需要安装在vfat之类里面才能被bios识别吧。
你把windows的启动项拷贝一份到ubuntu的EFI里,在试试能不能启动

离线

#3 2022-05-10 17:54:25

maji.....1
会员
注册时间: 2022-05-10
帖子: 4

Re: 萌新求救,恢复windows 引导

我是有两块ssd和一块hdd 其中sda 是hdd, sdb 存放了ubuntu,nvme存放了win.  bootmgfw.efi 是我挂载windows后 用find找到的 之后我将包含bootmgfw.efi这个文件的文件夹 复制到了 ubuntu的efi分区下 然后在grub.cfg里添加

if [ "${grub_platform}" == "efi" ]; then
	menuentry "Microsoft Windows Vista/7/8/8.1 UEFI/GPT" {
		insmod part_gpt
		insmod fat
		insmod chain
		search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt1 --hint-efi=hd1,gpt1 --hint-baremetal=ahci1,gpt1 8490-0F04
		chainloader /EFI/Microsoft/Boot/bootmgfw.efi
	}
fi

之后启动时windows提示发生错误.

离线

#4 2022-05-10 19:01:02

Oliver Wei
会员
注册时间: 2021-07-13
帖子: 118

Re: 萌新求救,恢复windows 引导

maji.....1 说:

我是有两块ssd和一块hdd 其中sda 是hdd, sdb 存放了ubuntu,nvme存放了win.  bootmgfw.efi 是我挂载windows后 用find找到的 之后我将包含bootmgfw.efi这个文件的文件夹 复制到了 ubuntu的efi分区下 然后在grub.cfg里添加

if [ "${grub_platform}" == "efi" ]; then
	menuentry "Microsoft Windows Vista/7/8/8.1 UEFI/GPT" {
		insmod part_gpt
		insmod fat
		insmod chain
		search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt1 --hint-efi=hd1,gpt1 --hint-baremetal=ahci1,gpt1 8490-0F04
		chainloader /EFI/Microsoft/Boot/bootmgfw.efi
	}
fi

之后启动时windows提示发生错误.

问题一个个解决,先解决启动问题,在解决用grub引导双系统问题,你自己都搞混了。
windows启动报错显示什么?
你把windows的EFI放到ubuntu的efi里,能在bios里面找到windows的启动项吗?
如果你要grub引导多系统,没必要手写引导,用os-prober啊。
比如我的系统,/下建立的fat32分区的esp,正常情况下,esp里面有个EFI文件,EFI里面有BOOT和Microsoft文件夹,前者放的arch引导,后者是windows引导,没有设置grub启动引导双系统,但是bios能通过识别fat分区找到windows引导项,需要用win的时候通过bios里选择win就行了。

离线

#5 2022-05-11 13:11:12

maji.....1
会员
注册时间: 2022-05-10
帖子: 4

Re: 萌新求救,恢复windows 引导

问题就是用 os-prober 识别不出windows 我只能手动去重建.

离线

#6 2022-05-11 15:21:36

maji.....1
会员
注册时间: 2022-05-10
帖子: 4

Re: 萌新求救,恢复windows 引导

已解决

离线

页脚