所有托管服务节省 15%

测试技能,享折扣

使用代码: Skills 开始使用
China
Linux 操作系统 窗口

如何双启动 Windows 10 和 Linux:完整高级指南

同时运行 Windows 10 和 Linux 可以让你两全其美——Windows 用于游戏和通用应用程序,Linux 用于开发、系统管理和开源工具。然而,在单台机器上管理两个操作系统是一项需要精确性、规划和对现代固件和磁盘架构深入理解的微妙操作。

本综合指南将逐步指导你使用 UEFI、GPT 和现代 Linux 发行版(如 Ubuntu、Fedora 或 Arch Linux)设置一个干净、高效的双启动系统。无论你是开发人员、系统管理员还是高级用户,本教程都将帮助你配置一个强大的双启动环境,而不会损害任何一个操作系统。

为什么要双启动 Windows 10 和 Linux?

在深入技术步骤之前,值得理解为什么双启动仍然是专业人士相比虚拟化或 WSL(Windows Subsystem for Linux)的首选:

  • 完全硬件访问:两个操作系统都在裸机上运行,为您提供最大的 CPU、GPU 和 RAM 性能。
  • 无开销:与虚拟机不同,双启动引入零虚拟化开销。
  • 灵活性:使用 Linux 进行 Docker、Kubernetes、原生包管理器和终端工作流;切换到 Windows 进行游戏、Adobe 软件或企业应用程序。
  • 成本效益:无需维护两台独立的物理机器。

对于管理远程基础设施(如 VPS Hosting 环境)的开发人员和系统管理员来说,拥有一个与服务器环境相匹配的原生 Linux 桌面可以显著减少上下文切换和配置摩擦。

先决条件和安全检查清单

在触及任何分区之前,请完成此检查清单:

  • 将所有关键数据备份到外部驱动器或云存储
  • 记下您的 Windows 产品密钥(在 CMD 中运行 wmic path softwarelicensingservice get OA3xOriginalProductKey
  • 确认您的固件类型是 UEFI(不是传统 BIOS)— 在 Windows 中搜索”系统信息”并检查 BIOS 模式
  • 验证您的磁盘使用 GPT 分区(磁盘管理 → 右键单击磁盘 → 属性 → 卷选项卡)
  • 准备至少 8 GB USB 驱动器用于 Linux 安装程序
  • 确保您的系统至少有 100 GB 的可用磁盘空间以便舒适地安装 Linux

> ⚠️ 严重警告:在 Linux 安装期间选择错误的单个分区可能会永久破坏您的 Windows 安装或驱动器上的所有数据。分区级别没有撤销选项。先备份 — 始终备份。

第1步:为双启动准备磁盘

选项A:Windows已安装(最常见的情况)

1.1 缩小Windows分区

打开磁盘管理diskmgmt.msc),右键单击您的主分区(通常是C:),然后选择压缩卷

  • 为Linux分配至少50 GB(开发者工作站建议80–120 GB)
  • 压缩操作会创建Linux将使用的未分配空间

> 注意:如果Windows由于不可移动文件(如页面文件或休眠文件)而无法充分压缩卷,请先禁用休眠:

> “`cmd

> powercfg /h off

> “`

1.2 禁用快速启动

快速启动会导致Windows将部分休眠状态写入磁盘。如果Linux在此状态下挂载Windows NTFS分区,可能会发生文件系统损坏。

导航到:控制面板 → 电源选项 → 选择电源按钮的功能 → 关闭快速启动

或者,通过命令提示符(以管理员身份):

powercfg /h off

1.3 禁用BitLocker

如果您的系统驱动器上启用了BitLocker,Linux将无法访问该分区,GRUB安装可能会失败。

导航到:控制面板 → 系统和安全 → BitLocker驱动器加密 → 关闭BitLocker

在继续之前,请等待完整的解密过程完成。

1.4 验证EFI系统分区(ESP)

基于UEFI的Windows安装始终包括EFI系统分区(ESP),通常为100–500 MB,格式为FAT32。您稍后将在此处挂载Linux的引导加载程序 — 不要删除或格式化它

使用diskpart验证:

diskpart
list disk
select disk 0
list partition

查找类型为系统的分区 — 那就是您的ESP。记下其分区号。

选项B:在新驱动器上全新双启动安装

如果您从头开始安装两个操作系统:

  1. 始终先安装Windows — Windows不识别Linux引导加载程序,如果第二个安装,将覆盖GRUB。
  2. 允许Windows安装程序自动创建ESP。
  3. 在磁盘末尾留下未分配的空间供Linux使用。

第 2 步:创建可启动的 Linux USB 驱动器

2.1 下载您的 Linux 发行版

选择适合您用例的发行版:

发行版最适合
Ubuntu LTS初学者、开发人员、通用
Fedora Workstation最新 GNOME、开发人员
Arch Linux高级用户、完全自定义
Debian Stable服务器、稳定性优先的工作站
Pop!_OS游戏、NVIDIA GPU 支持

从发行版的官方网站下载 ISO。在写入 USB 之前,始终验证 SHA256 校验和。

2.2 将 ISO 写入 USB

在 Windows 上 — 使用 Rufus:

  • 选择您的 USB 驱动器
  • 选择 ISO 文件
  • 分区方案:GPT
  • 目标系统:UEFI (non-CSM)
  • 点击开始

在 Linux/macOS 上 — 使用 dd

sudo dd if=/path/to/linux.iso of=/dev/sdX bs=4M status=progress && sync

> 将 /dev/sdX 替换为您的实际 USB 设备(使用 lsblk 验证 — 永远不要猜测)。

2.3 配置 UEFI 从 USB 启动

  1. 重启并进入 UEFI 固件设置(通常是 F2DELF10ESC — 查看您的制造商文档)
  2. 禁用安全启动 — Arch Linux 和某些其他发行版需要;Ubuntu 和 Fedora 原生支持安全启动
  3. 将 USB 驱动器设置为第一启动设备
  4. 保存并退出

第 3 步:在 Windows 旁安装 Linux

3.1 启动到实时环境

从 USB 启动后,您将进入 Linux 实时会话。在启动安装程序之前,最好的做法是:

  • 测试 Wi-Fi、音频和显示输出
  • 打开终端并运行 lsblk 以识别您的磁盘布局
  • 确认 ESP 可见(查找约 100–500 MB 的 FAT32 分区)

3.2 启动安装程序并选择手动分区

手动(自定义)分区让您完全控制并防止意外覆盖。在安装程序中,选择:

  • Ubuntu:”Something else”
  • Fedora:”Custom” 分区
  • Arch Linux:通过 fdiskgdiskcfdisk 手动配置

3.3 在未分配的空间中创建 Linux 分区

识别您在第 1 步中创建的未分配空间,并创建以下分区:

分区文件系统大小用途
/(根目录)ext430–60 GB核心操作系统文件
/homeext4剩余空间用户数据(可选但推荐)
swapswap2–8 GB(与 RAM 匹配以支持休眠)虚拟内存 / 休眠

> 提示:将 /home/ 分离允许您重新安装 Linux 而不会丢失个人文件和配置。

> 对于 NVMe 驱动器:您的磁盘将显示为 /dev/nvme0n1,分区如 /dev/nvme0n1p1。对于 SATA SSD/HDD,它将是 /dev/sda,分区如 /dev/sda1 等。

3.4 配置 EFI 系统分区

这是最关键的步骤。找到现有的 ESP(由 Windows 创建的 FAT32 分区):

  • 不要格式化它 — 这将破坏 Windows 引导加载程序
  • 将其挂载点设置为 /boot/efi
  • 保持格式复选框未选中

3.5 配置 GRUB 引导加载程序

当提示引导加载程序安装位置时:

  • 将 GRUB 安装到 EFI 系统分区,而不是 MBR
  • ESP 通常是 /dev/sda1/dev/nvme0n1p1
  • GRUB 将自动检测 Windows 启动管理器并将其添加到启动菜单

完成安装并重新启动。出现提示时移除 USB 驱动器。

第 4 步:配置 UEFI 启动顺序

安装后,您的系统可能会直接启动到 Windows,完全绕过 GRUB。这是因为 Windows Boot Manager 在 UEFI 启动顺序中可能仍然具有优先级。

选项 A:通过 UEFI 固件设置配置

  1. 在下次启动时进入 UEFI 固件设置
  2. 导航到启动选项卡
  3. “ubuntu”“fedora”“Linux Boot Manager”移到“Windows Boot Manager”上方
  4. 保存并退出

选项 B:通过 Windows 命令行配置

以管理员身份打开命令提示符并运行:

bcdedit /set {bootmgr} path EFIubuntugrubx64.efi

根据您的发行版调整路径:

  • Fedora:EFIfedoragrubx64.efi
  • 通用:EFIBOOTBOOTx64.efi

选项 C:通过 Linux 使用 efibootmgr 配置

启动到 Linux(通过 UEFI 菜单或 USB)并使用 efibootmgr

# List all boot entries with their numbers
sudo efibootmgr

# Set boot order (replace with your actual entry numbers)
sudo efibootmgr -o 0002,0001,0000

输出将显示类似 Boot0001* ubuntuBoot0002* Windows Boot Manager 的条目。将 Linux 条目放在首位。

第5步:安装后配置

5.1 自定义GRUB

编辑GRUB配置文件以调整超时和默认操作系统:

sudo nano /etc/default/grub

关键参数:

# Time in seconds before auto-booting the default entry
GRUB_TIMEOUT=10

# 0 = first entry (usually Linux), or use "saved" to remember last choice
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

# Optional: set a custom distributor name
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

编辑后,始终重新生成GRUB配置:

# Debian/Ubuntu
sudo update-grub

# Fedora/RHEL
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

# Arch Linux
sudo grub-mkconfig -o /boot/grub/grub.cfg

5.2 安装grub-customizer(可选GUI工具)

对于偏好使用图形界面管理GRUB的用户:

# Ubuntu/Debian
sudo apt install grub-customizer

# Fedora
sudo dnf install grub-customizer

5.3 修复Windows时钟差异

设置双启动后的常见问题是Windows显示错误的时间。这是因为Linux默认以UTC存储时间,而Windows使用本地时间。在Linux中修复:

timedatectl set-local-rtc 1 --adjust-system-clock

或者通过设置注册表以使用UTC在Windows中修复:

reg add "HKEY_LOCAL_MACHINESystemCurrentControlSetControlTimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f

5.4 重新启用安全启动(可选)

如果您的Linux发行版附带签名的引导加载程序(Ubuntu和Fedora都有),您可以在安装后在UEFI中安全地重新启用安全启动。建议在共享或企业环境中的系统上使用此功能。

Arch Linux和某些其他发行版需要手动MOK(机器所有者密钥)注册才能与安全启动配合使用。

5.5 在Linux中挂载Windows NTFS分区(可选)

要从Linux访问您的Windows文件,请安装ntfs-3g并挂载分区:

sudo apt install ntfs-3g   # Ubuntu/Debian
sudo dnf install ntfs-3g   # Fedora

# Create a mount point and mount
sudo mkdir /mnt/windows
sudo mount /dev/sda3 /mnt/windows

要在启动时自动挂载,请在/etc/fstab中添加条目:

/dev/sda3  /mnt/windows  ntfs-3g  defaults,uid=1000,gid=1000  0  0

排除常见双启动问题

GRUB 在启动时不出现

  • 进入 UEFI 并手动将 Linux 启动项设置为主启动项
  • 从 USB 启动,挂载您的 Linux 分区,然后运行 grub-install 后跟 update-grub

GRUB 菜单中未列出 Windows

sudo os-prober
sudo update-grub

如果 os-prober 被禁用,编辑 /etc/default/grub 并添加:

GRUB_DISABLE_OS_PROBER=false

然后再次运行 sudo update-grub

“没有可启动设备”错误

  • 验证 ESP 是否正确挂载在 /boot/efi
  • 确认 GRUB 已安装到 EFI 分区,而不是 MBR
  • 从实时 USB 环境重新运行 grub-install

安装 Linux 后 Windows 拒绝启动

  • 使用 Windows 恢复 USB → 修复 → 命令提示符
  • 运行:bootrec /fixbcdbootrec /fixmbr
  • 然后从 Linux 重新配置 GRUB

双启动与其他方法:何时选择什么

方法优点缺点
双启动充分利用硬件性能,零开销需要重启才能切换操作系统
虚拟机即时切换,快照功能性能开销,GPU 限制
WSL2Windows 内的 Linux 终端不是完整 Linux,硬件访问受限
独立机器完全隔离成本、空间、维护

对于管理 Dedicated Servers 或复杂云基础设施的专业人士来说,原生 Linux 双启动工作站提供了最接近生产服务器的环境——使测试、脚本编写和基于 SSH 的管理无缝进行。

双启动设置的实际用例

软件开发

启动到Linux以使用Docker容器、原生包管理(apt, dnf, pacman)和强大的Bash/Zsh终端。切换到Windows以使用Visual Studio、Microsoft Office或面向客户端的应用程序。管理带有cPanel的VPS环境的开发人员会发现Linux桌面工作流直接映射到服务器端操作。

游戏和创意工作

Linux通过Proton/Steam在游戏方面取得了巨大进步,但某些游戏和外设仍然需要Windows。双启动让您享受完整的Windows游戏体验,同时不牺牲Linux开发环境。

安全研究和渗透测试

使用强化的Linux环境(Kali、Parrot OS)进行安全测试和分析,然后切换到Windows进行报告、文档编写或运行Windows特定工具。

Web托管和服务器管理

管理共享Web托管环境或为客户网站配置SSL证书的系统管理员受益于与其服务器上运行的LAMP/LEMP堆栈相同的Linux工作站——减少”在我的机器上可以工作”的差异。

结论

使用 Windows 10 和 Linux 设置双启动系统是开发人员、系统管理员和高级用户可用的最强大配置之一。虽然该过程涉及仔细的步骤——缩小分区、配置 UEFI、安装 GRUB 和管理启动顺序——但一旦您了解底层架构,每个阶段都是逻辑清晰且文档完善的。

要记住的关键原则:

  1. 修改分区前始终备份数据
  2. 先安装 Windows 再安装 Linux — Windows 将覆盖任何现有的引导加载程序
  3. 切勿格式化 EFI 系统分区 — 它在两个操作系统之间共享
  4. 安装 Linux 前禁用快速启动和 BitLocker
  5. 使用手动分区以完全控制磁盘布局

正确配置后,双启动系统稳定、高效且面向未来。您可以自由选择适合每项任务的工具——Linux 的强大功能和灵活性用于开发和管理,Windows 的兼容性用于游戏和生产力软件——全部在一台机器上,无需妥协。

无论您是在构建镜像 VPS Hosting 设置的本地开发环境,还是只想在不放弃 Windows 的情况下探索 Linux,双启动仍然是充分利用硬件的黄金标准。