
我装双系统这事前后折腾了不下三十台机器从最早的 BIOSMBR 时代一直装到现在的 UEFIGPT。说实话真正的安装环节——点几下、等进度条——大概只占整个过程的十分钟剩下的时间全耗在装之前的准备和装之后的收尾上。很多人第一次装 Ubuntu 双系统卡住的地方根本不是不会装而是装完之后 Windows 进不去了、时间差了八小时、硬盘分区表被搞乱、GRUB 菜单里找不到 Windows Boot Manager。这篇内容我想按一个老手实际会怎么做的顺序来写而不是按官方文档那种平铺直叙的流程。重点会放在几个真正会让人翻车的节点上Windows 侧的隐藏开关、分区容量的取舍逻辑、安装向导里那几个容易点错的岔路口、首启之后必做的四件收尾事以及引导丢了怎么救回来。适合手上有一台 Windows 机器、想腾出一块空间跑 Ubuntu 的人也适合已经装完但被各种小问题折磨的人。Ubuntu 双系统安装这件事说到底就是把一份操作系统塞进硬盘里然后让固件知道开机时该交给谁。听起来简单但中间牵扯到 Windows 的快速启动、BitLocker 加密、UEFI 安全启动、磁盘控制器模式、ESP 分区复用、GRUB 引导链这一串东西任何一个环节没处理好结果要么是安装器看不到硬盘要么是装完开机直接进了 Windows 再也回不来。下面我按实际操作的顺序把每一步的为什么讲清楚。1. Windows 这边必须先拆掉的几个隐藏开关动手分区之前如果你跳过这一步后面大概率会遇到装完 Ubuntu 之后Windows 的分区在 Linux 里只能只读挂载或者开机弹出 BitLocker 恢复密钥界面这类让人一脸懵的问题。这几个开关都藏在 Windows 里默认状态不一定是你想要的。1.1 快速启动它不是省电是让 NTFS 处于半睡眠状态Windows 的快速启动Fast Startup在电源选项里默认是开着的。它的原理是把关机动作变成一次用户会话结束 内核休眠也就是把内核状态写进休眠文件。结果是 NTFS 分区在关机后并没有真正干净卸载卷上会留一个脏标记。Linux 的 ntfs3 或 ntfs-3g 驱动看到这个标记会拒绝以读写方式挂载直接给你挂成只读。你就没法往 Windows 分区里写文件跨系统传数据的路直接断了。更麻烦的是如果你在 Linux 里强行走ntfsfix有概率把 Windows 的休眠状态弄坏。关闭路径控制面板 → 硬件和声音 → 电源选项 → 选择电源按钮的功能 → 点击更改当前不可用的设置→ 取消勾选启用快速启动。注意在 Win11 上这个入口藏得比较深如果控制面板里找不到可以用管理员权限运行powercfg /h off直接关掉休眠并把快速启动一并关掉——代价是失去休眠功能但双系统场景下这反而是好事。1.2 BitLocker 与设备加密先记录恢复密钥再动手Win11 的很多笔记本尤其是预装家庭版的机器会自动开启设备加密本质就是 BitLocker。问题在于安装 Ubuntu 会向 ESP 分区写入新的引导项同时修改固件启动顺序这些动作会让 TPM 的度量值发生变化。下次进 Windows 时系统会认为环境被篡改直接弹恢复密钥界面不输密钥进不去。所以动手前请务必做一件事登录你的微软账户在设备页面找到这台机器把 48 位的恢复密钥抄下来或者干脆先把 BitLocker 暂停/关闭。暂停Suspend protection比完全解密快得多装完系统再恢复保护即可。这一步看起来啰嗦但真出事的时候没有恢复密钥意味着整块盘的数据都读不出来代价太高。1.3 安全启动可以留着但要知道它什么时候会咬你很多人一上来就把 Secure Boot 关掉其实没必要。Ubuntu 官方镜像里带了微软签名的 shim在 Secure Boot 开启状态下是可以正常启动和安装的保持开启对系统安全性更好。真正需要留意的是第三方内核模块。Ubuntu 安装向导里有个安装第三方软件的选项勾上它会装 NVIDIA 显卡驱动、Wi-Fi 驱动、多媒体编解码器这些东西。这些模块没有微软签名安装器会要求你设置一个 MOKMachine Owner Key密码。设置完之后第一次重启会出现一个蓝底的 MOK 管理界面你必须选 Enroll MOK → Continue → Yes然后输入刚才那个密码把密钥注册进固件。如果你手快直接跳过这个界面NVIDIA 驱动就加载不了表现出来就是分辨率很低、或者干脆卡在黑屏。我的习惯是如果这台机器要装 NVIDIA 独显驱动就在安装向导里勾选第三方软件并设好 MOK 密码如果只是集显或者不在乎驱动就不用勾装完系统再单独装驱动也行。1.4 磁盘控制器模式新笔记本最容易踩的隐形坑近几年的 Intel 平台笔记本BIOS 里默认的存储模式往往是 Intel RST 或 VMDVolume Management Device而不是传统的 AHCI。这个模式是为 Windows 的软 RAID 和硬盘加速服务的问题是部分 Linux 内核版本在安装阶段识别不出这种模式下的 NVMe 硬盘安装器的分区界面会空空如也一块盘都看不到。正确的处理顺序不能乱否则 Windows 会因为找不到启动盘而蓝屏报 INACCESSIBLE_BOOT_DEVICE进入 Windows用管理员权限打开命令提示符执行bcdedit /set safeboot minimal让系统下次以安全模式启动。重启进入 BIOS/UEFI 设置界面把存储模式从 RST/VMD 改成 AHCI。保存退出Windows 会进入安全模式此时它会加载 AHCI 驱动。在安全模式下再次用管理员命令行执行bcdedit /deletevalue safeboot取消安全模式标记。正常重启Windows 应该能正常进入此时硬盘模式已经是 AHCILinux 安装器就能看到盘了。如果先改 BIOS 再处理 Windows那就是蓝屏循环还得找安装盘修复非常折腾。1.5 腾出空间磁盘管理压缩卷为什么压不出多少容量在 Windows 磁盘管理里对 C 盘右键压缩卷很多人会发现可压缩空间远远小于预期——比如一块 512G 的盘C 盘用了 200G却只能压出 20G。原因是页面文件、休眠文件、系统还原点这些不可移动文件卡在分区中间压缩算法只能利用它们后面的连续空间。可以参考这几个操作来释放可压缩空间关闭休眠powercfg /h off会删掉几个 G 的 hiberfil.sys在系统属性 → 系统保护里删掉旧的还原点对 C 盘做一次优化/碎片整理如果还不行临时把页面文件挪到别的盘或者设为无。做完这些压缩卷通常能压出你想要的大小。我的建议是Ubuntu 至少留 80G如果打算长期用给到 150G 以上更舒服。压缩出来的空间在 Windows 里显示为未分配不要在那里新建分区就让它空着留给 Ubuntu 安装器。2. 分区方案怎么定ESP、swap、根分区、home 的取舍逻辑分区这一步是双系统里最容易做错、也最不该照抄网上教程的地方。因为每台机器的 ESP 大小、内存容量、用途都不一样通用方案和实际需求常常对不上。下面把每个分区的作用和容量逻辑讲清楚你自己就能算。2.1 ESP 分区复用它千万别格式化UEFI 机器上Windows 安装时已经建了一个 EFI 系统分区ESP通常是 FAT32 格式大小在 100MB 到 260MB 之间挂载点是/boot/efi。这个分区里放着 Windows Boot Manager 的引导文件路径大概是EFI/Microsoft/Boot/bootmgfw.efi。装 Ubuntu 时正确做法是把这个已有的 ESP 直接挂载为/boot/efi不要勾选格式化。Ubuntu 会在这个分区里新建一个EFI/ubuntu目录把 shim 和 grub 放进去。如果你手一抖勾了格式化Windows 的引导文件就被清空了重启直接进不去系统。有人会问能不能给 Ubuntu 单独建一个 ESP技术上可以但没必要而且容易让固件里出现两个EFI System Partition造成启动项混乱。复用现有的那一个最省事。关于容量Ubuntu 写进 ESP 的只有 shim、grub 和几个配置文件加起来大概十几到二十几兆100MB 的 ESP 通常够用。但如果你之前装过别的 Linux 发行版、或者 ESP 已经被多个引导程序占满建议先在 Live 环境里挂上 ESP 用df -h看一眼剩余空间太紧张的话可以先用 Windows 工具扩容或者清理掉不用的引导目录。2.2 swap 分区要不要给多大先纠正一个常见误解swap 不是物理内存的固定倍数而是根据你打算怎么用机器来定。如果你从不用休眠功能swap 的主要作用是内存回收时的溢出缓冲。日常办公机16G 内存给 4G 到 8G swap 足够了32G 内存其实给 2G 到 4G 都行甚至完全不建 swap 分区、只用 swapfile 也可以。如果你想用休眠suspend to disk那 swap 必须大于等于物理内存容量因为休眠就是把内存内容整个写进 swap。Ubuntu 从 17.04 开始默认使用 swapfile 而不是 swap 分区。所以你完全可以不建 swap 分区让安装器自己创建一个 swapfile。但如果你打算频繁休眠、或者需要精细控制手动建一个 swap 分区更直观。2.3 根分区和 home分开还是一起根分区/用 ext4 格式。容量上Ubuntu 24.04 最小安装大概占 10G 左右加上常用软件、Docker 镜像、缓存给 40G 勉强够给 60G 到 100G 比较从容。/home单独分区是老派做法好处是重装系统时能保留个人数据。但要提醒一句现在的应用配置大量放在~/.config、~/.local里跨版本重装有时反而会因为配置不兼容引入奇怪问题。如果只是自己用、数据有备份习惯其实根分区和 home 放在一起简单省心如果你打算频繁折腾、又懒得每次备份那单独分一个/home值得。下面这张表是我常用的几种容量组合按硬盘总容量来选场景内存ESPswap//home轻量尝鲜256G 盘16G复用现有4G或不建60G剩余全部长期主力512G 盘16G复用现有8G80G剩余全部开发机1T 盘32G复用现有8G150G剩余全部需要休眠32G复用现有≥32G100G剩余全部2.4 分区表类型先确认是 GPT 还是 MBRUEFI 固件配 GPT 分区表是当前的主流组合Windows 10/11 正常安装的机器基本都是这个状态。但也存在例外老机器升级上来的可能是 BIOSMBR有些人在 BIOS 里开了 CSM兼容性支持模块引导模式会退回 Legacy。确认方法很简单在 Windows 磁盘管理里对目标磁盘右键 → 属性 → 卷看分区样式是 GPT 还是 MBR再看 BIOS 里是 UEFI 模式还是 Legacy/CSM。原则是两边保持一致GPT 配 UEFIMBR 配 Legacy。启动盘制作时也要选对应的模式否则会出现U 盘启动后直接被跳过或者安装器提示这台机器不支持 UEFI 启动的问题。3. 启动盘制作工具选对能省掉一半玄学问题启动盘制作这件事被低估了。用错工具或者选错写入模式会制造出一堆莫名其妙的引导故障让你误以为是分区或者固件的问题。3.1 为什么我不推荐用 UltraISO 写 Linux 镜像UltraISO 是传统 ISO 挂载/写入工具它处理 Windows 安装镜像没问题但写 Linux 镜像经常出岔子。原因是 Ubuntu 的 ISO 是混合 ISO同时支持以光盘方式和以原始磁盘镜像方式引导。UltraISO 倾向于按前者处理会把引导记录弄得不对结果可能是 U 盘能启动但进不了安装界面或者安装到一半报错。靠谱的选择有三个Rufus、balenaEtcher、Ventoy。Rufus 只支持 Windows功能最细balenaEtcher 三平台通用操作最简单Ventoy 的思路完全不同——它不是写入镜像而是把 U 盘做成一个多镜像引导器你只需要把 ISO 文件复制进去启动时它会列出所有 ISO 让你选。如果你手头有多个系统的 ISO、或者经常折腾不同发行版Ventoy 一次做好之后就不用反复写了。3.2 Rufus 的关键选项怎么选用 Rufus 写 Ubuntu 镜像时界面会自动识别 ISO 类型然后让你选分区方案和目标系统GPT UEFI 对应现代 UEFI 机器MBR BIOS 对应老机器。这两个选择必须和你目标机器的固件模式一致。写入模式上Rufus 会弹一个ISOHybrid 镜像的提示让你选 ISO 模式还是 DD 模式。对 Ubuntu 来说ISO 模式更友好因为它会把 ISO 里的文件解包写入U 盘上还能看到文件结构后续想往里加东西也方便DD 模式是逐字节复制做完之后 U 盘会被识别成一个只读的光盘设备想换内容得重新格式化。除非 ISO 模式写完之后引导有问题否则优先 ISO 模式。3.3 校验这一步别跳过下载完 ISO 之后用certutil -hashfile ubuntu-24.04-desktop-amd64.iso SHA256Windows或者sha256sumLinux算一下哈希和官网公布的对照。听起来多余但我确实遇到过下载不完整导致安装到 80% 报错的案例。这一步只花一分钟能排除掉一整类怎么也装不上的问题。3.4 引导模式确认别让 U 盘和固件说不到一块去U 盘做好之后开机按启动菜单键不同品牌不一样常见的是 F12、F11、Esc、F9在启动设备列表里你会看到同一个 U 盘可能出现两个条目比如一个带 UEFI: 前缀一个不带。带前缀的是 UEFI 模式启动不带的是 Legacy 模式。如果你要装 UEFI 双系统就选带 UEFI: 后缀的那一项。选错了会出现什么情况安装器会以 Legacy 模式运行分区时你发现没法创建 ESP或者装完之后固件启动列表里多出一个 Legacy 条目而 Windows 还是 UEFI 启动两个系统引导方式不一致GRUB 探测 Windows 会失败。还有一个隐藏设置BIOS 里的 CSMCompatibility Support Module。开着 CSM 时固件会同时支持 Legacy 和 UEFI容易造成启动模式判断混乱。建议在确定要装 UEFI 双系统时把 CSM 关掉让启动模式变得干净。4. 安装向导里的四个岔路口点错一个就重来启动到 Live 桌面也就是试用 Ubuntu那个界面之后先别急着点安装。我的习惯是先花五分钟做两件事一是打开磁盘工具或者用 GParted 看一下分区布局确认那块未分配空间确实在、且大小正确二是连上网络让安装器能下载更新和语言包。然后正式进入安装向导。下面这四个地方是真正的分歧点。4.1 安装类型必须选手动分区向导问到安装类型的时候会有几个选项擦除磁盘并安装 Ubuntu、与 Windows 共存安装、手动分区在 22.04 里叫 Something else24.04 新安装器里叫 Manual installation。擦除磁盘并安装直接抹掉整块盘双系统绝对不能选。与 Windows 共存它会自动从 Windows 分区里压缩空间并创建分区看起来很省事但它分配的大小是拍脑袋定的通常只有几十 G而且它调整 Windows 分区时偶尔会出问题。我不推荐。手动分区唯一推荐选项所有分区你自己定可控。在 24.04 的新安装器里手动分区界面会列出所有磁盘和现有分区你需要选中那块空闲空间free space点加号创建分区。4.2 分区挂载点ESP 不格式化其余全格式化创建分区时的几个关键点/boot/efi选中已有的 EFI 系统分区把挂载点设为/boot/efi格式化的勾一定要取消。这一步是双系统中最要命的操作勾错就等于删掉 Windows 引导。swap如果建 swap 分区类型选 swap area不需要挂载点。/类型 ext4挂载点/勾选格式化。/home类型 ext4挂载点/home勾选格式化。创建顺序上其实无所谓安装器最后会统一写盘。但有一点要注意如果你勾选了格式化某个已有分区安装器会弹一个确认框列出所有将被格式化的分区这个框一定要逐条看清楚确认里面没有 Windows 的 C 盘、也没有 ESP。4.3 引导器安装位置选整块磁盘不选分区如果你用的是 Ubuntu 22.04 或者更早版本安装向导底部会有一个下拉框叫安装启动引导器的设备Device for boot loader installation。这里必须选整块磁盘比如/dev/nvme0n1或/dev/sda而不是某个分区比如/dev/nvme0n1p5。为什么因为 UEFI 引导是往 ESP 里写文件GRUB 的grub-install需要知道目标磁盘。选成分区的话在某些固件上会导致引导项注册失败装完之后开机直接进 WindowsGRUB 影子都看不到。Ubuntu 24.04 换了新的安装器界面里没有这个下拉框了它会自动把引导写到检测到的 ESP。这也意味着在 24.04 上更要确保 ESP 的挂载设置是对的——如果 ESP 没被正确挂载为/boot/efi引导就可能写到别的地方去。4.4 用户名、主机名和密码顺手把主机名改短这几项看起来无所谓但主机名hostname值得提一句。默认主机名会根据你填的名字生成比如填了 zhangsan主机名可能是 zhangsan-Lenovo-Legion-5。这个长主机名会出现在终端提示符里也会被 SSH 连接、Docker 容器、局域网主机发现用到太长很烦。建议设一个短而清晰的主机名比如dev-box、ubuntu-work。设置密码时Ubuntu 允许弱密码但会提示日常自己用的话简单好记 开启磁盘加密的取舍自己权衡。5. 第一次开机之后必做的四件收尾事安装完成、点重启、拔掉 U 盘进入 GRUB 菜单看到 Ubuntu 和 Windows Boot Manager 都在——恭喜最难的关过了。但别急着开始用下面这四件事如果不在第一天做掉后面会一直膈应你。5.1 时间差八小时根源在 UTC 和本地时间的定义分歧Windows 把硬件时钟RTC当作本地时间来处理Ubuntu 默认把 RTC 当作 UTC 来处理。两个系统对同一块硬件时钟的理解不一致来回切换就会出现时间差。中国大陆时区是 UTC8所以现象就是从 Windows 重启到 Ubuntu时间快 8 小时从 Ubuntu 重启回 Windows时间慢 8 小时。两种修法我推荐改 Windows让 Windows 按 UTC 解释硬件时钟用管理员权限运行reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1 /f执行完重启一次 Windows之后两个系统时间就一致了。这个方案的好处是不污染 Linux 的配置重装 Linux 也不用重新设置。另一种是让 Ubuntu 用本地时间timedatectl set-local-rtc 1 --adjust-system-clock这条命令 Ubuntu 官方本身不推荐因为会让夏令时切换和网络时间同步出现奇怪行为所以只作为备选。5.2 显卡驱动先确认卡在哪一步如果是 NVIDIA 独显机器重启之后可能出现这几种情况分辨率被锁在 1024x768、外接显示器不亮、风扇狂转但屏幕黑。这些都指向驱动没正确加载。先在终端看一眼硬件和推荐驱动ubuntu-drivers devices它会列出可用的驱动版本和推荐项标着 recommended。然后sudo apt update sudo apt install nvidia-driver-550版本号按上一条命令的输出填。装完重启。如果你在安装向导里勾了第三方软件并设了 MOK 密码但重启时跳过了 MOK 注册界面驱动是装上了却加载不了这时候需要重新触发一次sudo mokutil --import /var/lib/shim-signed/mok/MOK.der设个临时密码重启时在蓝色界面完成注册。如果是 AMD 核显或 Intel 核显通常开箱可用不用额外操作。遇到黑屏但系统其实在跑的情况可以在 GRUB 菜单按e编辑启动项在linux那一行末尾加nomodeset先进去把驱动装好再删掉这个参数。5.3 中文输入法24.04 的默认方案够用Ubuntu 24.04 默认装了 IBus 输入法框架中文输入可以用智能拼音Intelligent Pinyin。如果装完发现切不出中文进设置 → 键盘 → 输入源添加汉语中国下的智能拼音即可。切换快捷键默认是 SuperSpace可以在设置里改。很多人想装搜狗输入法这需要额外装 fcitx 或 fcitx5 框架再装搜狗配置步骤比较多而且和 IBus 有冲突风险。我的建议是先用自带的智能拼音它对日常中文输入完全够用还支持云拼音可选。除非你有特殊词库需求否则没必要折腾第三方输入法。5.4 SSH 连不上24.04 默认没装服务端被这个问题坑过的人不少。Ubuntu 桌面版 24.04 默认不安装 openssh-server所以你从别的机器ssh userip会直接被拒绝。解决办法sudo apt install openssh-server sudo systemctl enable --now ssh sudo systemctl status ssh如果服务起来了还是连不上检查两件事一是 UFW 防火墙sudo ufw status需要放行 22 端口sudo ufw allow ssh二是确认客户端和服务端在同一个网段用ip a看一下本机地址。顺便提一句环境变量配置错误这个高频问题。新手常犯的错是把export PATH...写进/etc/environment而这个文件不支持export语法也不支持变量展开写进去会导致登录时环境变量解析失败严重的话进不了图形界面。PATH 类的修改应该放在~/.bashrc或~/.profile系统级的环境变量在/etc/environment里只写KEYvalue形式不带export不引用其他变量。6. 引导丢了怎么办两条修复路径和一个排查顺序引导问题分两种情况Ubuntu 的 GRUB 没了比如重装了 Windows或者 Windows 的引导没了比如手动分区时误格了 ESP。这两种的修复手法完全不同先判断属于哪一种。6.1 判断当前状态先看固件启动列表从 Live U 盘启动进试用桌面打开终端efibootmgr -v输出里会列出固件里所有的启动项。正常情况下应该有Windows Boot Manager和ubuntu两项。如果 ubuntu 项不见了说明 GRUB 的启动项被清掉了常见于重装 Windows 之后Windows 安装程序会重置启动顺序并且有时会清掉 EFI 分区里它不认识的目录。如果 Windows Boot Manager 不见了反过来就是 Windows 引导被破坏了。同时用lsblk -f确认分区布局还在特别是根分区和 ESP 挂载点。6.2 路径 AGRUB 没了从 Live 环境重装引导这是最常见的场景——重装 Windows 之后GRUB 被覆盖开机直接进 Windows。修复思路是挂载 Ubuntu 的根分区和 ESPchroot 进去重新执行 grub-install。先确认分区号lsblk -f假设 Ubuntu 根分区是/dev/nvme0n1p5ESP 是/dev/nvme0n1p1然后sudo mount /dev/nvme0n1p5 /mnt sudo mount /dev/nvme0n1p1 /mnt/boot/efi for i in /dev /dev/pts /proc /sys /run; do sudo mount --bind $i /mnt$i; done sudo chroot /mnt进入 chroot 之后grub-install --targetx86_64-efi --efi-directory/boot/efi --bootloader-idubuntu update-grub exit退出 chroot 后卸载所有挂载点再重启sudo umount -R /mnt sudo reboot重启时进固件启动菜单应该能看到 ubuntu 项了。update-grub这一步会自动探测 Windows Boot Manager 并写进 GRUB 菜单所以不用手动加。如果嫌命令行麻烦Ubuntu 社区有个图形工具叫 Boot-Repair在 Live 环境里装一下需要联网点Recommended repair它会自动做上面这些事。但它有时会做多余的操作比如重写整个 GRUB 配置我倾向于手动来可控。6.3 路径 BWindows 引导丢了用 Windows 安装盘修这种情况相对少见多发生在手动分区时误格式化了 ESP。修复需要 Windows 安装介质U 盘进入修复模式 → 疑难解答 → 命令提示符然后diskpart list disk select disk 0 list partition select partition 1 :: 选中那个 EFI 分区通常 100-300MB assign letterS exit bcdboot C:\Windows /s S: /f UEFIbcdboot会从 C 盘的系统目录里提取引导文件写入 S 盘也就是 ESP的EFI/Microsoft目录并重建 BCD 配置。执行完重启Windows 应该能起来了。起来之后再按 6.2 的方法修复 GRUB。6.4 一个通用排查顺序遇到任何开机进不去系统的情况我一般按这个顺序排现象首先怀疑验证方法开机直接进 Windows没有 GRUBGRUB 启动项丢失Live 环境efibootmgr -v开机黑屏只有光标显卡驱动或内核参数GRUB 加nomodeset卡在主板 logo固件启动项顺序错乱BIOS 里看启动顺序进 GRUB 但菜单里没 Windowsos-prober 没探测到chroot 后update-grub提示没有可启动设备ESP 被破坏或固件模式不匹配检查 BIOS 的 UEFI/Legacy 设置安装器看不到硬盘RST/VMD 模式未改BIOS 存储设置改为 AHCI顺带说一句GRUB 菜单里 Windows 选项消失最常见的原因是 Ubuntu 里os-prober在 22.04 之后默认被禁用了出于安全考虑。修改/etc/default/grub把GRUB_DISABLE_OS_PROBERfalse加上然后sudo update-grub就能重新探测到。6.5 设置默认启动项让常用的系统排第一GRUB 菜单默认等待 5 秒倒计时结束进第一个选项。如果 Ubuntu 排在第一位但你平时主要用 Windows每次都手动选很烦。修改/etc/default/grubGRUB_DEFAULT0 # 0 表示菜单第一项 GRUB_TIMEOUT10 # 倒计时秒数设短一点跳过更快 GRUB_SAVEDEFAULTtrue # 记住上次选择如果你想让 GRUB 记住上次选的那个系统配合GRUB_DEFAULTsaved和GRUB_SAVEDEFAULTtrue使用。改完执行sudo update-grub生效。注意 GRUB 菜单项的顺序会随内核更新变化用saved模式比硬编码数字更稳。7. 卸载 Ubuntu顺序错了会直接开不了机不是所有人都能一次装到位装完之后发现不合适、想彻底清掉双系统的也大有人在。卸载这件事有个严格的顺序搞反了就会出现删完分区开机直接黑屏因为引导还在但根分区没了的尴尬。7.1 第一步先把固件默认启动项切回 Windows不要一上来就去删分区。先在 Ubuntu 里把默认启动项改成 Windowssudo efibootmgr它会列出所有启动项和编号比如Boot0001* Windows Boot Manager和Boot0002* ubuntu。用-o参数设置启动顺序sudo efibootmgr -o 0001,0002把 Windows 排到前面。也可以直接进 BIOS 设置界面的启动顺序里调整更直观。这一步做完即使后面 Linux 分区被删了开机也会走 Windows Boot Manager。7.2 第二步清掉 ESP 里的 ubuntu 目录Ubuntu 的引导文件放在 ESP 的EFI/ubuntu目录下。挂载 ESP 后删掉这个目录sudo mkdir -p /mnt/esp sudo mount /dev/nvme0n1p1 /mnt/esp ls /mnt/esp/EFI # 应该能看到 Microsoft 和 ubuntu sudo rm -rf /mnt/esp/EFI/ubuntu sudo umount /mnt/esp顺带用efibootmgr -b 0002 -B把那个 ubuntu 启动项从固件里删掉。也可以在 Windows 侧操作用 Diskpart 给 ESP 分配一个盘符然后用资源管理器进去删EFI/ubuntu目录再用 EasyUEFI 之类的工具清理启动项。这一步很多人省掉结果就是固件启动列表里一直有个点不动的 ubuntu 项。7.3 第三步删除 Linux 分区并回收空间前两步做完重启确认能正常进 Windows。然后进 Windows 磁盘管理你会看到那几个未知分区ext4 和 swap 在 Windows 里都显示为未知。逐个右键删除卷删完之后那块空间变成未分配再对 C 盘右键扩展卷把空间还回去。注意 swap 分区在新版 Ubuntu 里可能是个文件而不是分区swapfile那种情况下只用删根分区和/home分区。另外提醒一句扩展卷只能向右侧相邻的未分配空间扩展。如果你的 Ubuntu 分区分成了好几块、中间夹着别的分区可能没法一次性扩回 C 盘。这种情况下用第三方分区工具比如 DiskGenius调整更灵活但操作前一定做好重要数据备份。7.4 如果只是想试试其实不用装双系统最后提两个替代方案能帮你避免装了删、删了装的循环。虚拟机用 VMware Workstation Player 或 VirtualBox 装 Ubuntu 虚拟机隔离性好、随删随建、不影响宿主系统。缺点是性能有损耗显卡直通和 3D 加速支持有限跑不了需要真机硬件的东西。适合学习 Linux 命令、测试软件、跑开发环境。WSLWin10/11 上一条wsl --install就能装好 Ubuntu 子系统启动秒开和 Windows 文件系统互通终端和 VS Code 集成也做得很好。最近的开发场景里我用 WSL 跑编译、跑 Python、跑 Docker 的频率比双系统还高因为它不用重启就能用。字体渲染上配合等宽字体和合适的配置写代码的观感已经很接近原生终端了。双系统的价值在于它能独占硬件资源——完整的 GPU、完整的 I/O、不受虚拟化层影响。如果你需要跑训练任务、需要精确的性能测试、或者就是想体验完整的桌面环境那还是得真机装。但如果只是日常开发先试试 WSL 或者虚拟机可能根本用不上双系统这一套。我个人的经验是双系统的真正难点从来不在安装这两个字上而在装之前对 Windows 侧开关的处理以及装之后对引导链的维护。把快速启动、BitLocker、磁盘模式这三件事提前处理好分区时确保 ESP 不格式化、引导器选整盘装完立刻解决时间和显卡驱动这套流程走下来双系统其实是一个很稳的方案。真出了问题记住两点开机进不去先看固件启动列表GRUB 丢了就用 Live 环境 chroot 重装绝大多数引导故障都能在这两步里定位清楚。