ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

双硬盘部署Win10与Ubuntu双系统:UEFI引导隔离与分区实战指南

双硬盘部署Win10与Ubuntu双系统:UEFI引导隔离与分区实战指南 1. 为什么选择双硬盘部署双系统如果你正在考虑在电脑上同时运行 Windows 10 和 Ubuntu 20.04.1并且恰好有两块物理硬盘那么恭喜你你已经站在了最优雅、最稳妥的解决方案门口。我见过太多朋友在一块硬盘上划分多个分区来安装双系统结果因为引导冲突、分区表损坏或者一次 Windows 更新整个 Ubuntu 系统就“消失”了修复起来费时费力。双硬盘方案的核心优势就是把两个操作系统彻底物理隔离让它们各自为政互不干扰。简单来说一块硬盘装 Windows另一块硬盘装 Ubuntu。这样做最直接的好处是引导独立。每个系统都有自己的引导加载程序Windows 是 Boot ManagerUbuntu 是 GRUB存放在各自的硬盘上。你可以通过主板的 BIOS/UEFI 启动菜单在开机时选择从哪块硬盘启动从而进入哪个系统。这种方式的容错性极高一个系统崩了完全不影响另一个。另一个巨大优势是数据安全。Windows 系统盘满了、中毒了或者你想重装 Windows格式化它的硬盘时Ubuntu 及其所有数据在另一块硬盘上安然无恙反之亦然。这比在一个硬盘上小心翼翼地区分系统分区、数据分区要省心得多。对于硬件要求两块硬盘可以是 SATA SSD/HDD也可以是 NVMe M.2 SSD或者混合搭配。主板需要有足够的接口SATA口或M.2插槽。最关键的是你的主板必须支持 UEFI 启动模式并且建议关闭传统的 Legacy/CSM 支持。现代电脑近8-10年的产品基本都支持 UEFI它使用 GPT 分区表相比老旧的 MBR 分区表支持更大容量硬盘和更灵活的启动管理。我们整个安装过程都将基于 UEFIGPT 环境这是目前最标准、问题最少的方案。2. 安装前的核心准备工作镜像、工具与BIOS设置磨刀不误砍柴工充分的准备能避免安装过程中 90% 的意外。这里我会详细拆解每一步并解释其必要性。2.1 获取官方系统镜像与制作启动盘首先你需要两个系统的安装镜像。对于 Windows 10强烈建议从微软官网下载“媒体创建工具”用它直接制作启动U盘。这能确保你得到最新、最纯净的官方版本避免第三方镜像可能夹带的垃圾软件或修改。如果你已经有了 ISO 文件务必核对其 SHA256 校验值以确保完整。对于 Ubuntu 20.04.1 LTS前往 Ubuntu 官网下载桌面版 ISO。LTS 代表长期支持版本稳定且有长达5年的更新支持非常适合作为主力系统使用。接下来是制作启动盘。你需要一个容量至少 8GB 的 U 盘。Windows 启动盘直接用官方的“媒体创建工具”制作即可傻瓜式操作。Ubuntu 启动盘的制作在 Windows 下我推荐使用Rufus这款工具它开源、免费且对 UEFI 模式支持得非常好。注意使用 Rufus 时关键设置有三点。第一分区类型选择“GPT”目标系统类型选择“UEFI非 CSM”。这确保了启动盘是为 UEFI 环境准备的。第二文件系统选择“FAT32”大文件如 Windows 镜像可能不行但 Ubuntu 的 ISO 没问题。第三格式化选项选择“标准 Windows 安装”而非“DD 镜像模式”后者在某些主板上可能无法被识别。制作完成后你的 U 盘里会有一个 EFI 引导分区和系统安装文件。请妥善保管这个 U 盘在安装完成前不要格式化它。2.2 规划硬盘与备份数据这是双硬盘方案中最轻松的一环但也不能马虎。假设你有硬盘 A例如 512GB NVMe和硬盘 B例如 1TB SATA SSD。硬盘 AWindows 盘我们打算将整个硬盘分配给 Windows 10。在安装时Windows 安装程序会自动创建必要的分区一个约 100MB 的 EFI 系统分区、一个约 16MB 的 MSR微软保留分区以及主系统分区C盘。你不需要手动干预。硬盘 BUbuntu 盘我们将把整个硬盘分配给 Ubuntu 20.04.1。Ubuntu 安装程序会帮助我们分区常见的方案是EFI 系统分区容量 512MB 到 1GB格式化为 FAT32。这个分区用于存放 Ubuntu 的 GRUB 引导程序。即使硬盘 A 上已经有了 Windows 的 EFI 分区我们也强烈建议在硬盘 B 上单独为 Ubuntu 创建一个。这是实现引导隔离的关键。交换空间swap大小通常等于或略大于你的物理内存RAM。例如16GB 内存可以设置 16GB 或 32GB 的交换空间。对于拥有大内存32GB以上且不打算使用休眠功能的用户交换分区可以酌情减小甚至不设使用交换文件代替。根分区/用于安装系统和软件建议至少分配 50GB如果空间充裕100GB 或更多会更从容。家目录分区/home存放用户个人数据、配置文件。这是重装系统时可以保留的部分建议分配剩余的所有空间。最重要的步骤备份在操作任何硬盘分区之前请确保两块硬盘上所有重要数据都已备份到其他可靠的存储设备如移动硬盘、NAS 或云盘。安装过程涉及格式化数据丢失无法恢复。2.3 关键 BIOS/UEFI 设置调整开机进入 BIOS/UEFI 设置界面通常是按 Del、F2、F12 等键开机画面有提示。这里有几个必须检查的选项启动模式Boot Mode确保设置为UEFI禁用Legacy或CSM兼容性支持模块。CSM 是为老旧 MBR 系统准备的开启它会导致 UEFI 和 Legacy 模式混用是双系统引导混乱的主要根源。安全启动Secure Boot对于 Ubuntu 20.04.1建议先将其关闭Disable。虽然新版 Ubuntu 支持安全启动但在安装过程中尤其是涉及第三方驱动如 NVIDIA 显卡驱动时关闭安全启动可以避免很多不必要的麻烦。安装并配置好所有驱动后可以再尝试开启。SATA 模式如果使用 SATA 硬盘确保其模式为AHCI。这是 Ubuntu 和现代 Windows 的标准模式能发挥硬盘最佳性能。如果之前是 RAID 或 Intel RST 模式切换成 AHCI 可能导致原 Windows 无法启动需提前在 Windows 内更改注册表请务必注意。启动顺序Boot Order暂时将你制作好的 Ubuntu 安装 U 盘设为第一启动项以便从它启动开始安装。保存设置并退出电脑会重启并从 Ubuntu 安装 U 盘启动。3. 分步安装 Ubuntu 20.04.1 到第二块硬盘从 U 盘启动后你会进入 Ubuntu 的 Live CD 试用桌面。我们可以先连接网络然后点击桌面上的“安装 Ubuntu 20.04.1 LTS”图标。3.1 安装类型选择与手动分区安装过程的前几步语言、键盘布局按提示进行即可。到了“安装类型”这个最关键步骤时请务必选择“其他选项”Something else。这会进入手动分区界面让我们能精确控制 Ubuntu 安装到哪块硬盘以及如何分区。在分区界面你可以看到连接到电脑的所有磁盘。通常/dev/sda和/dev/nvme0n1这样的标识代表不同的硬盘。通过容量和型号你应该能分辨出哪块是你的“硬盘 B”准备装 Ubuntu 的盘。操作前请反复确认切勿选错硬盘选中“硬盘 B”然后点击“新建分区表”。在弹出的对话框中选择“gpt”。这会清空该硬盘上所有现有数据请再次确认备份。清空后这块盘显示为“空闲空间”我们就可以在上面创建分区了。创建 EFI 系统分区点击“空闲空间”点“”号。大小输入1024MB1GB 足够且留有余地。新分区的类型选择“主分区”。新分区的位置选择“空间起始位置”。用于选择“EFI 系统分区”。点击“确定”。创建交换空间swap再次点击剩余的空闲空间点“”号。大小根据你的内存大小输入例如16384MB16GB。新分区的类型选择“逻辑分区”在 GPT 上主分区和逻辑分区区别不大但习惯上系统分区用主分区交换和家目录用逻辑分区。用于选择“交换空间”。点击“确定”。创建根分区/点击剩余的空闲空间点“”号。大小建议至少51200MB50GB我一般给102400MB100GB。新分区的类型选择“逻辑分区”。用于选择“Ext4 日志文件系统”。挂载点选择“/”。点击“确定”。创建家目录分区/home点击最后剩余的所有空闲空间点“”号。大小默认就是全部剩余空间不用改。新分区的类型选择“逻辑分区”。用于选择“Ext4 日志文件系统”。挂载点选择“/home”。点击“确定”。分区完成后界面应该类似下表设备类型挂载点大小格式/dev/sdb1EFI系统分区/boot/efi1024 MBFAT32/dev/sdb5交换空间swap16384 MBswap/dev/sdb6文件系统/102400 MBExt4/dev/sdb7文件系统/home剩余所有Ext4注意分区编号如 sdb1, sdb5可能因顺序而异这没关系。最关键的一步来了在界面底部有一个“安装启动引导器的设备”下拉菜单。请务必选择你刚刚为 Ubuntu 创建的那个 EFI 分区也就是上表中的/dev/sdb1。这确保了 GRUB 引导程序被安装到硬盘 B 自己的 EFI 分区里而不是覆盖硬盘 A 上 Windows 的 EFI 分区。这是实现双硬盘引导隔离的灵魂操作。确认无误后点击“现在安装”然后会提示你确认分区更改点击“继续”。3.2 完成安装与首次启动接下来的步骤是选择时区、创建用户名和密码等按提示设置即可。安装过程会自动进行完成后会提示重启。重启时有一个重要动作当电脑黑屏准备重启时迅速拔掉 Ubuntu 的安装 U 盘。这是为了防止电脑再次从 U 盘启动。重启后你可能会直接进入 Windows或者看到 GRUB 菜单但只有 Ubuntu 选项。这都正常因为我们还没配置双系统引导。4. 配置与管理双系统引导安装完成后我们有两个独立的系统各自位于不同的硬盘。现在需要一种方便的方式来选择启动哪一个。4.1 使用主板启动菜单最推荐这是最干净、最稳定的方法。开机时按下你主板对应的启动菜单键通常是 F12、F11 或 Esc开机画面有提示。你会看到一个列表显示所有可启动的设备例如Windows Boot Manager (你的硬盘A型号)Ubuntu (你的硬盘B型号)你的U盘名称使用方向键选择你想启动的系统回车即可。这种方法完全依赖硬件两个系统的引导程序互不接触绝对安全。每次开机多按一次键换来的是绝对的省心和稳定。你可以把常用的系统对应的硬盘在 BIOS 里设为默认第一启动项这样开机不按菜单键就会自动进入那个系统。4.2 使用 GRUB 引导菜单可选如果你希望看到一个图形化菜单来选择系统可以通过在 Ubuntu 中更新 GRUB 来探测并添加 Windows 启动项。首先确保你通过主板启动菜单进入了 Ubuntu 系统。打开终端CtrlAltT输入以下命令sudo update-grub这个命令会探测系统中所有可用的操作系统包括另一块硬盘上的 Windows并更新 GRUB 的配置文件。执行完毕后你会看到输出信息中包含了“找到 Windows 10”之类的提示。重启电脑这次在主板启动菜单中选择从“硬盘 B”Ubuntu 所在硬盘启动。你应该就能看到 GRUB 菜单里面同时包含了 Ubuntu 和 Windows 10 的选项了。实操心得update-grub命令依赖于os-prober这个工具。在某些极简安装或新版本中它可能默认未安装。如果sudo update-grub没有找到 Windows可以尝试先安装它sudo apt install os-prober然后再运行sudo update-grub。另外如果 Windows 是休眠状态非完全关机GRUB 可能无法正确添加其条目确保 Windows 是完全关机Shift点击“关机”而非休眠。4.3 修复可能出现的引导问题场景一开机直接进 Windows看不到 GRUB 或启动菜单里没有 Ubuntu。这说明主板默认从硬盘 A 启动且 GRUB 没有接管引导。进入 BIOS/UEFI 设置将包含 Ubuntu 的“硬盘 B”调整到启动顺序的第一位。保存退出后应该就能看到 GRUB 菜单了。如果仍然没有可能是 Ubuntu 的 EFI 引导文件未正确注册到主板固件。可以在 Windows 下使用EasyUEFI这类工具手动添加 Ubuntu 的 EFI 文件位于硬盘 B 的 EFI 分区路径是\EFI\ubuntu\grubx64.efi或shimx64.efi。场景二GRUB 菜单有 Windows 选项但选择后无法启动。这通常是因为 GRUB 指向的 Windows 引导文件路径不对。可以进入 Ubuntu编辑 GRUB 配置文件/etc/grub.d/40_custom手动添加正确的 Windows 启动项但这需要一定的 GRUB 知识。更简单的方法是回到“方法一”使用主板启动菜单这是最可靠的。场景三想彻底移除 Ubuntu。如果你以后不想用 Ubuntu 了操作非常简单在 Windows 的“磁盘管理”中直接删除 Ubuntu 所在硬盘硬盘 B的所有分区然后合并成一个新区间格式化即可。对于引导只需进入 BIOS/UEFI 设置将启动顺序中 Ubuntu 相关的项移除或者用 Windows 安装U盘启动进入修复模式使用命令提示符执行bootrec /fixmbr和bootrec /fixboot针对 UEFI可能需要用bcdboot命令修复 Windows 引导。双硬盘的物理隔离优势在此体现得淋漓尽致。5. 安装后的必要优化与配置成功进入双系统后还有一些设置能让体验更佳。5.1 驱动安装与系统更新在 Ubuntu 中首先打开“软件和更新”在“附加驱动”标签页下检查是否有专有的显卡驱动尤其是 NVIDIA 显卡可供安装选择推荐版本安装并重启。然后在终端中运行系统更新sudo apt update sudo apt upgrade -y对于 Windows 10则通过“设置”-“更新与安全”完成所有系统更新和驱动检查。5.2 双系统时间同步问题这是一个经典问题。Windows 默认将硬件时钟RTC视为本地时间Local time而 Linux 默认将其视为世界协调时UTC。这会导致当你从一个系统切换到另一个时系统时间显示错误8小时假设你在东八区。解决方案在 Ubuntu 中执行推荐 让 Windows 改用 UTC 时间比较麻烦我们可以让 Ubuntu 迁就 Windows也使用本地时间。在 Ubuntu 终端中输入timedatectl set-local-rtc 1 --adjust-system-clock这条命令告诉系统硬件时钟存储的是本地时间。执行后两个系统的时间就会保持一致了。5.3 共享数据分区可选但实用虽然系统隔离了但数据共享的需求还在。比如你下载的电影、文档希望两个系统都能访问。最好的办法是在某块硬盘上通常是数据盘或者空间较大的那块创建一个额外的分区格式化为NTFS或exFAT文件系统。NTFSWindows 原生支持在 Ubuntu 中通过ntfs-3g驱动也能完美读写默认已安装。exFAT更适合作为 U 盘或移动硬盘格式对大文件支持好两者都原生支持。你可以在 Windows 的“磁盘管理”中从某个硬盘压缩出一部分空间创建并格式化为 NTFS 分区命名为“Data”。在 Ubuntu 中它会被自动识别并挂载你可以在/media/你的用户名/Data路径下访问它。你还可以编辑 Ubuntu 的/etc/fstab文件让这个分区在开机时自动挂载到指定目录如/mnt/Data实现更稳定的访问。6. 针对特定硬件的注意事项与排错不同的硬件组合可能会遇到独特的问题这里列举一些常见情况。笔记本电脑特别是品牌机如戴尔、联想品牌机的 BIOS/UEFI 设置可能更复杂安全启动Secure Boot选项可能藏在“安全”Security子菜单深处。如果遇到安装失败或启动黑屏首要检查项就是关闭安全启动和快速启动Fast Boot。此外一些笔记本的 SATA 控制器模式可能是 RAID 或 RST需要改为 AHCI但这会导致原装 Windows 无法启动需提前在 Windows 内进行注册表修改。NVIDIA 显卡双显卡切换Optimus这是 Ubuntu 上经典的老大难问题。安装后如果遇到登录循环、黑屏、分辨率低大概率是显卡驱动问题。在安装时可以尝试在 GRUB 菜单选择“Ubuntu”时按e键在linux开头的行末尾添加nomodeset参数然后按 F10 启动。进入系统后立即安装专有的 NVIDIA 驱动。对于 Optimus 笔记本可以安装nvidia-prime或使用prime-select命令在独显和集显间切换。更现代的解决方案是使用nvidia-driver包和prime渲染 offload 技术。Wi-Fi 或蓝牙无法使用这通常是因为无线网卡使用了较新的或非主流的硬件Ubuntu 20.04.1 的内核可能没有内置其驱动。解决方案是首先通过有线网络连接安装ubuntu-restricted-extras和linux-firmware包。如果还不行需要根据无线网卡的具体型号通过lspci或lsusb命令查看搜索并安装对应的 DKMS 驱动。对于某些 Realtek 芯片这可能是一个比较折腾的过程。双硬盘速度差异大如果你用一块 NVMe 硬盘装 Windows一块 SATA SSD 装 Ubuntu可能会感觉 Ubuntu 启动和加载软件慢一些。这是正常的物理限制。如果追求极致体验可以考虑将 Ubuntu 也安装在 NVMe 硬盘上如果主板有多个 M.2 插槽或者将/根分区放在更快的硬盘上而将/home放在容量更大的硬盘上。整个双硬盘安装双系统的过程核心思想就是“隔离”与“清晰”。通过物理隔离规避了绝大多数软件层面的引导冲突通过清晰的手动分区掌控了每一个字节的磁盘空间。它可能比一些“一键安装”工具步骤稍多但换来的是一劳永逸的稳定和掌控感。当你熟练之后整个过程可以在一个小时内完成。下次再需要重装或升级任何一个系统时你会无比感激当初选择了这个方案。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进