为了将这台十年的PC重新变成工作机器,安装Ubuntu MATE,经历了多重启动的问题。其核心是时代变迁中“UEFI与BIOS”的对峙。这篇文章记录了解决复杂情况的过程,展示了在不放弃正版软件的前提下如何成功搭建Linux环境的实际经历。
为什么要进行多重启动?
这台PC在十年前通过USB安装Windows 7使用,后期升级至Windows 8、10,艰难度过了漫长岁月。最终因性能不足被遗弃在仓库,但为了将其恢复为使用Linux的工作机器而重新拿了出来。
问题在于无法抛弃的资产们:- 无法再获取的MS Office正版永久版 - 贵价购入的Windows 10 Pro正版许可证
因此,用GPT重装磁盘,删除Windows并不是可以选择的选项。所以必须进行多重启动。然而,这个选择带来了意想不到的技术冲突。
问题 1: MBR分区限制 vs 现代Linux的分区需求
📌 情况总结
- SSD是安装了Windows的MBR方式磁盘
- Windows默认使用三个分区
- 系统
- 与启动相关的分区
- 恢复分区
- MBR最多只能有4个分区
- 安装Ubuntu MATE需要额外两个分区
/
挂载用EXT4分区- EFI系统分区 (ESP, FAT32 - 用于存储启动信息的系统分区)
总共需要5个,但MBR只能有4个……正撞上了壁。
✅ 解决方法
- 通过缩小HDD的一部分空间来创建ESP分区
- 将grub引导加载程序安装在这个HDD上(原本是原则上安装在同一磁盘)
- 在BIOS设置中将HDD设为优先于SSD
这个选择虽然不完美,但却是不破坏Windows的唯一安装方法。
无需进行GPT转换,正版软件也得以保留。
“GRUB在HDD上运行,Ubuntu在SSD上运行”这绝妙的组合。
问题 2: GRUB为什么无法找到Windows?
在安装Ubuntu后,将BIOS设置为UEFI启动,启动时GRUB未能识别Windows。
- Windows是MBR + 基于BIOS的启动结构
- GRUB是基于UEFI安装的
- 由于GRUB无法chainload基于BIOS的引导程序,因此将Windows识别为普通分区而非操作系统(OS)
- 没有可选的操作系统,因此自动只引导Ubuntu
✅ 解决方法
- 在BIOS中禁用UEFI模式 (= Legacy BIOS)
- 尝试优先从HDD启动 → 暂时失败(grub是UEFI引导程序,无法在BIOS模式下运行)后回退至SSD上的Windows MBR引导程序,最终成功启动Windows。
- 尝试优先从SSD启动 → 成功(MBR + BIOS基础上的Windows启动成功)
最终通过在BIOS中UEFI开/关与启动磁盘顺序组合,形成了以下“硬件级别的多重启动”:
BIOS设置 | 优先顺序 | 结果 |
---|---|---|
UEFI开 | HDD > SSD | 执行GRUB → 启动Ubuntu |
UEFI关 | SSD > HDD | 直接进入BIOS → 启动Windows |
可以在不使用GRUB的情况下轻松选择OS的物理多重启动结构。实际使用中比传统GRUB的操作系统选择方式更具用户体验。对于需要频繁切换两个操作系统的用户来说,这可能稍显麻烦,但对于我这种主要使用一个操作系统偶尔使用另一个的人来说,这是非常令人满意的配置。
启示
- 当今的Linux强制UEFI基础安装,但这是出于安全性和可扩展性的必然发展。
- 在不失去与BIOS基础系统的兼容性的同时,能够保护正版软件,构建快速且稳定的Ubuntu环境。
- 特别是可以在没有GRUB的情况下通过一个开关切换操作系统的构建,体验比预期更为舒适,对于像我一样不常切换两个操作系统,有时才用Windows的人来说,极为令人满意。
结束语
最初复杂而晦涩的“UEFI与BIOS”的世界。
然而亲自面对后,发现只要准确的概念与灵活的选择结合,就能保留正版且使用Linux。
在十年旧PC上安装Linux重新赋生机,并看到这台老旧机器再次在工作现场发挥作用,深感欣慰。
希望我的经历能够帮助到处于类似情况的人,也希望读到这篇文章的读者,如果在仓库中的某个地方有一台蒙尘的老机器,不妨再次拿出来,为其注入新的生命。我真诚地提议。

댓글이 없습니다.