解决双系统切换问题:专注于恢复Windows启动的实用方法
- 问答
- 2025-09-22 13:06:34
- 1
我是如何把Windows从Linux手里"抢"回来的
前几天手贱,在已经装了Windows 10的笔记本上又装了个Ubuntu,结果开机直接给我整不会了——GRUB(Linux那个启动管理器)直接把Windows的启动项吞了,连个影子都没留😅,作为一个常年游走在"技术小白"和"伪极客"边缘的人,我开始了长达三小时的"抢救Windows"大作战……
第一步:别慌,先骂两句
发现Windows启动项消失的瞬间,我第一反应是:"完了,数据不会没了吧?"(后来证明纯属想太多),然后本能地掏出手机开始疯狂搜索"双系统 Windows不见了",结果跳出来的全是那种"三步解决"的营销号文章,点进去一看全是废话文学🤦♂️。
这时候千万别乱操作!尤其是别听某些教程说的"重装系统就行"——你数据不要啦?
第二步:掏出U盘,但别急着插
我翻出之前做的Windows安装U盘,准备用"修复启动"功能,但插上去之前突然想到:万一修复完Linux也挂了怎么办? 毕竟我还挺喜欢那个花里胡哨的Ubuntu桌面的……
于是决定先试试更温和的方法——手动在GRUB里添加Windows启动项。
GRUB急救小课堂
- 开机时狂按
Shift
(或者Esc
,取决于你的电脑)进GRUB菜单。 - 选"高级选项",找个能进"root shell"的模式(不同系统可能叫法不一样)。
- 输入以下命令更新GRUB配置:
sudo update-grub
理论上它会自动扫描所有系统并添加启动项……但我的电脑偏不!
第三步:当GRUB不给面子时
上面那招没用?那就得手动编辑GRUB配置文件了。
-
在终端输入:
sudo nano /etc/grub.d/40_custom
-
在文件末尾加上Windows的启动项(假设你的Windows在
/dev/nvme0n1p1
):menuentry "Windows 10" { insmod ntfs set root=(hd0,1) chainloader +1 }
(注意:
hd0,1
这部分得根据你的硬盘实际情况改,别照抄!) -
保存后再次
sudo update-grub
,重启看看Windows回来了没。
…我的情况更复杂,因为我的Windows是UEFI启动,而GRUB死活不认,这时候只能祭出终极大招——用Windows安装盘修复引导。
第四步:Windows安装盘,真香!
-
插上U盘,从它启动,选"修复计算机" > "疑难解答" > "命令提示符"。
-
输入:
bootrec /fixmbr bootrec /fixboot bootrec /scanos bootrec /rebuildbcd
这几个命令相当于让Windows重新"宣誓主权",把启动控制权抢回来。
-
重启后,Windows终于回来了! 🎉 但……GRUB又不见了😑。
第五步:平衡的艺术
现在的问题是:要么只能进Windows,要么只能进Linux,怎么让它们和平共处?
答案是:在Windows里装个EasyBCD,手动添加Linux的启动项,或者更硬核一点——回到Linux,重装GRUB。
我选了后者,因为……折腾使我快乐?(并不)
sudo grub-install /dev/sda sudo update-grub
重启后,终于! GRUB菜单里同时出现了Windows和Linux,泪目……
血泪教训
- 装双系统前先备份EFI分区(别学我头铁)。
- GRUB有时候很倔,别指望
update-grub
万能。 - Windows的
bootrec
命令是救命稻草,但用多了Linux可能又得重装GRUB。 - EasyBCD是个好东西,适合不想碰命令行的懒人。
现在我的电脑终于能自由切换了,虽然过程堪比"系统界的离婚官司"……但至少没数据损失,算是不幸中的万幸吧!💻🔥
(PS:如果你也遇到类似问题,欢迎评论区交流——毕竟,踩坑的路上不能只有我一个人😭)
本文由畅苗于2025-09-22发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:http://waw.haoid.cn/wenda/6453.html