救救孩子吧, Windows10 下安装 Centos8 后,想尽办法,折腾一天,修复不了 Win10 引导。

2020-09-13 17:27:01 +08:00
 alex2019

昨天用 U 盘安装 Centos8.2,官网下载的系统( http://mirrors.aliyun.com/centos/8.2.2004/isos/x86_64/CentOS-8.2.2004-x86_64-boot.iso ),安装很顺利,但修复 Win10 引导这里死活不成功。

用 grub2-mkconfig 根本找不到 Win10 启动项,但是在磁盘里又能看到 100M 左右的 Windows 的 EFI 分区。 然后尝试了百度+谷歌的各种 grub2 配置方案,比如 set root=(hd0,gpt1),chainloader /EFI/xxx 。 启动项都能找到 Win10,但就是启动不了。

附带说明:

1 执行命令 grub2-mkconfig -o /boot/grub2/grub.cfg 永远只有如下两句话: Generating grub configuration file ... done 我看别人都有 "Found Windos 10 on xxxx",我不管怎么折腾,都没得这句话。

2 装完 centos 后,/boot/efi/EFI/boot/ 目录下只有 centos 文件夹,这好像不正常,你们是还有 /boot/efi/EFI/boot/Boot 和 /boot/efi/EFI/boot/Microsoft 文件夹对吧?

参考教程: https://blog.csdn.net/qq_40058321/article/details/105743701?utm_medium=distribute.pc_relevant.none-task-blog-blogcommendfrommachinelearnpai2-4.add_param_iscf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-blogcommendfrommachinelearnpai2-4.add_param_iscf

就想知道我这到底是哪里出了问题??? 或者让我恢复 Windows10 吧,这系统我不要了~

5912 次点击
所在节点    Linux
42 条回复
SiliusMo
2020-09-13 23:58:56 +08:00
efi 双系统要区分是一个硬盘一个系统还是一个硬盘两个系统.

如果两个系统在不同的硬盘上,则有两个 efi 分区. linux 系统安装完成, 但引导还没安装时, 去 Windows 的盘里把 Microsoft 的文件夹复制过来再安装引导, 就能发现了. 开机启动顺序选择 linux 的那一块硬盘.

如果两个系统安装在同一硬盘上则安装 linux 时不应该设置新的 efi 分区, 要选 Windows 帮你分割好的那一个. 换句话说要先安装 Windows.

总的来说推荐第一种办法. 混在一起很容易出问题. 另外, windows 更新也可能会动启动引导顺序.
kokutou
2020-09-14 00:08:04 +08:00
随便找个 pe

bcdboot c:\windows /s h: /f UEFI

c 为 pe 里 Windows 所在分区盘符, h 为 pe 里 efi 分区盘符.
kokutou
2020-09-14 00:08:56 +08:00
如果你的分区表是 mbr...
那去掉 /f 参数
bcdboot c:\windows /s h:
kokutou
2020-09-14 00:09:49 +08:00
2 个安全无广告 pe
https://www.itsk.com/
http://www.wepe.com.cn/

或者你用 Windows 镜像启动,然后打开 cmd 也可以.
Cu635
2020-09-14 00:19:43 +08:00
安装的 grub 是 grub-efi 这个么?
centos 下我不熟悉软件包名字叫啥,在 debian 系软件包名字是 grub-efi,centos 下应该有类似的。献确定安装的是它
laqow
2020-09-14 00:30:57 +08:00
只用 windows 去引导 linux 就好了,grub 装 linux 自己的盘上,别用 grub 去引导 windows
youla
2020-09-14 01:52:49 +08:00
折腾一天,连个 uefi 引导的问题都解决不了,你还不先多玩玩虚拟机吗?反正我之前装 windows 、linux 都是两个硬盘装的,一个盘各一个 efi 分区,进入系统后禁用另一个系统盘,后面发现 linux 的内核支持直接从 uefi 引导,索性连 grub 都不要了,有兴趣可以搜索 EFISTUB 看看。
masker
2020-09-14 02:32:51 +08:00
2020 年还玩双系统吗?
要玩之前也多找找资料,熟悉相关步骤,安装的时候选择哪个作为引导分区。

同意楼上的
Daming
2020-09-14 07:44:11 +08:00
说句马后炮的话,没事不要折腾双系统,后来你会发现进 Linux 的时候寥寥无几。
还不如搞虚拟机,你的需求 99.9%都能覆盖到。
NoobX
2020-09-14 08:05:07 +08:00
理论上 EFI 分区在双系统应该有 Microsoft 文件夹( Windows Loader )和 centos ( GRUB 引导)两个文件夹,文件夹外还有个单独的 bootx64.efi 的文件(默认启动)。
EFI 分区可以在 Linux 下用 root 权限挂载进行查看和观察,一般在磁盘的第一个分区(如 /etc/sda1 )。另外配合上 Linux 的 efibootmgr 工具,基本没有解决不了的引导问题。
启动项能找到,却启动不了,反正我感觉你的安装流程破坏了正常引导,一般 Grub 的搜索,我是没有碰到过搜索不到的情况,除非手动在 /etc/default/grub 禁用了(默认是启用 OS probe 的)。首先需要能保证 BIOS 里选择 Windows 能引导,不然 Grub 没法自动搜索引导也正常不过了
NoobX
2020-09-14 08:11:37 +08:00
另外给个主意,因为不知道你在哪一步破坏了引导,可以先用 live CD 进 Linux 或者用 Windows 下的工具,备份 EFI 分区的 Microsoft 文件夹。Linux 安装完后再放回去也是可以的
SakuraOjosama
2020-09-14 09:08:09 +08:00
上次碰到这问题大概是启动类型被我改成了 legacy
EdgarZhang
2020-09-14 09:28:09 +08:00
重做吧,我记得 ubuntu 桌面版是专门对 Windows 双系统优化的。
centos 是个 server 系统,这些程序员也许就没考虑过和其他系统并存。
newmlp
2020-09-14 09:31:04 +08:00
你不会安装引导时选的整个硬盘吧?
zzzmh
2020-09-14 09:32:50 +08:00
讲道理我不懂这个,我遇到这个问题的解决方法是
1. 先在 bios 启动里看有没有 windows 启动项 如果没有就用 U 盘进 PE 修复就有了。
2. 有了以后从这里先进去 windows,然后装个 easy uefi,然后删掉 linux 的启动项,windows 排第一个
3. 最后再用 dg 删掉硬盘上的 linux,如果有必要再重新安装一个或者换一个安全的版本重新安装一个
Jerami
2020-09-14 09:36:45 +08:00
Dism++
alex2019
2020-09-14 14:33:52 +08:00
[楼主本人统一回复]
谢谢大家的热心回复,关于安装情况再补充说明下。
1 EFI 双系统是装在一个硬盘里的,我电脑是有两个硬盘,但只有硬盘 1 是 SSD,想着在 SSD 里会快一些,所以就装在一个硬盘里。
2 关于为什么没玩虚拟机。 好几年前用过虚拟机,用起来觉得很卡。所以这次就没考虑。现在综合大家意见来看,可能是因为当时笔记本电脑太渣,而不是虚拟机本身这个方案不好。后面我会重新考虑此方案的。毕竟确实之前没怎么玩过 linux 。
PS: 今晚回去再试试用 pe 修复的方案。
ChangHaoWei
2020-09-14 22:39:00 +08:00
PE 修复是没问题的。。如果 不是 UEFI,PE 修复了 windows 。。还得 找个 live cd 修复 linux 的引导。。。
OPA
2020-09-15 10:59:59 +08:00
开机后按 F12,可以看到 centos 启动项和 windows 启动项
alex2019
2020-09-16 23:32:30 +08:00
[楼主后续反馈]
晚上给 U 盘装了一个 PE,然后 U 盘启动,修复引导,显示“修复成功”,心里一喜。然后重启电脑,启动提示“error:../../grub-core/loader/i386/pc/chainloader.c:213:invalid signature”。
已经在引导配置了加了“insmod ntfs”了。还是提示这个。
这是啥呀???

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/706634

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX