拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Win11 + Ubuntu 20.04 双系统安装避坑指南

Win11 + Ubuntu 20.04 双系统安装避坑指南

1. 折腾前先想清楚:Ubuntu 20.04 装成什么形态才是你需要的

1.1 为什么偏偏是 20.04 而不是新版本

很多人看到标题就疑惑:都什么年代了,装机不都是默认最新的 Ubuntu 22.04 或者 24.04 吗,为什么还专门绕回来装 20.04?这里我不打算劝所有人,但必须把选择 20.04 的真实逻辑说清楚。

简单说三个理由。第一,机器人、自动驾驶、SLAM 方向的工程依赖太重。像 ROS Noetic 是明确绑定 Ubuntu 20.04 的,ORB-SLAM3 这类经典视觉定位框架,网上大量现成教程和部署记录都是在 20.04 下完成的。你装新版本系统,开源性项目跑起来遇到的坑可能比代码本身的坑还多。这些开源项目不是不支持新版本,而是大家长期在某个环境里测试、排错、积累经验,你跟着走就能少走弯路。

第二,20.04 是 LTS 长期支持版本,官方承诺的免费安全更新到 2025 年,扩展维护到 2030 年,对一台要稳定干活的电脑来说完全够用。它不是"过时系统",而是"稳定基线"。

第三,关于"轻量级"这个说法。20.04 默认桌面是 GNOME 3.36,比 22.04、24.04 的 GNOME 4x 内存占用更低,冷启动进桌面大概能控制在 1.2GB 到 1.5GB 内存。对 8GB 内存的老笔记本来说,这就是能不能流畅切换窗口的差别。

所以这篇博文面对的场景很明确:你手上有台 Win11 电脑,日常工作还要用 Windows,但你又需要一个稳的 Ubuntu 20.04 来搞开发、跑算法、做实验。接下来所有步骤都围绕这个场景展开。

1.2 双系统、虚拟机、WSL2 三选一,别凭感觉选

在动手之前,必须先确定安装形态,这一步选错了后面会越搞越难受。当前主流的方案就是三种:物理机双系统、虚拟机、WSL2。我给一张很直的对比表:

对比项双系统虚拟机(VMware/VirtualBox)WSL2
系统性能接近原生,显卡 GPU 能完全用上有虚拟化损耗,图形性能打折扣命令行性能接近原生,图形应用一般
硬件访问全部直通,USB、串口、摄像头都直接认需要做 USB 透传,部分设备不识别USB 串口访问麻烦,不支持复杂硬件直通
安装复杂度中,需要分区、处理引导低,一路默认就能装完低,一条命令就能装
ROS/Gazebo 图形仿真流畅流畅度一般,3D 渲染吃力图形支持和网络配置有诸多限制
文件互通通过共用盘符或网络,稍麻烦拖拽/共享文件夹即可文件互通做得最好
适合场景正经开发、跑算法、长时间干活快速试玩、学习 Linux 命令随手写代码、练命令行

我的建议非常直接:如果只是好奇 Linux 长什么样、想练命令,用虚拟机甚至 WSL2 就够了,别碰双系统。但如果你要部署 ROS、跑视觉算法、训练模型,或者打算长期在 Linux 下做开发,那就一次到位装双系统。这篇博文的完整流程就是围绕双系统走。

还有一点要特别提醒:有些人想着先装 VMware 试试,等熟悉了再改成双系统。这个路径可以,但虚拟机环境下生成的配置、装好的依赖、甚至磁盘布局习惯,和物理机不完全一样,后期迁移要重新踩坑。有时间就一步到位,没时间也不要勉强。

1.3 硬件门槛与空间规划:老笔记本也能跑出理想体验

安装 20.04 的硬件门槛其实非常低。官方推荐 4GB 内存、25GB 磁盘空间,但那只是"能跑"。

我的个人建议是:内存至少 8GB,桌面流畅度才算合格。如果只有 4GB 内存,建议装完系统后把 GNOME 的动画关掉,再挂一个 zram 交换空间,勉强能用。另外磁盘要预留至少 80GB 给 Linux,其中根分区 50GB,剩下的给 home 目录。搞机器人或图像处理的朋友,我强烈建议直接给 150GB 以上,因为数据集、ROS 工作空间、虚拟环境随便一放就是几十 GB。

怎么确认当前电脑的启动模式?Win11 下按Win+R输入msinfo32,回车打开系统信息,看"BIOS 模式"这一项。现在的 Win11 电脑基本清一色是 UEFI,对应磁盘分区表也必然是 GPT。这一点很重要,后面所有步骤里的分区、启动盘制作都按照 UEFI+GPT 走,不用再纠结 Legacy 引导的问题。

另外要心里有数:双系统安装不会删除你的 Windows 数据,但谁也不敢保证过程中百分之百无意外。真正稳妥的做法是安装前把重要文件备份一遍,尤其是桌面和文档里来不及整理的东西,复制到移动硬盘或网盘也不费多少时间。

2. Win11 侧的三道闸门:快速启动、BitLocker 与安全启动

2.1 关闭快速启动:不关会带来什么实际后果

Win11 默认开着"快速启动",表面看是开机更快,实际上是 Windows 在关机时把内核会话写进了休眠文件,下次开机直接加载休眠镜像,而不是完整初始化硬件。这在纯 Windows 环境里没问题,但一旦装了双系统,问题就来了。

Linux 在挂载 NTFS 分区时有自己的机制,如果 Windows 上次是"快速关机"而不是完全关机,NTFS 分区的元数据还处于未正常关闭状态。Linux 侧再往这个分区写入数据,轻则下次进 Windows 提示"磁盘错误,是否修复",重则导致 NTFS 分区文件损坏。这个坑我是见过的,有人装完双系统后 Windows 蓝屏,排查到最后才发现是快速启动惹的祸。

关闭方法很简单。打开"控制面板" → "硬件和声音" → "电源选项",在左侧点击"选择电源按钮的功能",然后点击上方"更改当前不可用的设置",最后取消勾选"启用快速启动",点击保存修改。

注意一点:Win11 的"设置 → 系统 → 电源"里也有类似选项,但最可靠的位置还是控制面板。如果你在设置界面找不到,直接控制面板进去。关完以后开机速度会慢一点点,通常几秒,但换来的是双系统文件的绝对安全,这笔账怎么算都划算。

2.2 BitLocker 恢复密钥:先备份再暂停,否则系统可能完全锁死

Win11 对系统盘默认开启 BitLocker 加密,尤其是笔记本和平板这类支持现代待机的设备。BitLocker 本来是为了防设备丢失导致数据泄露,但双系统场景下它是个大麻烦。

具体问题有两个。第一,Linux 默认不带 BitLocker 的读写驱动,装完 Ubuntu 后你在 Windows 分区里可能看不到文件,或者只能读不能写。虽然这不是致命的,但很影响双系统之间的文件互传体验。第二,如果 BitLocker 处于"暂停保护"状态但恢复密钥没备份,某些情况下 Windows 更新或硬件改动会触发重新加密校验,一旦密钥丢失,系统直接锁死,连用 Windows 安装盘都恢复不了。

所以安装 Ubuntu 前必须做两件事:备份恢复密钥,再暂停保护。

备份路径:设置 → 隐私和安全性 → 设备加密 → BitLocker 驱动器加密管理,按提示选择"备份恢复密钥",建议保存到微软账户或文件里。然后选择"暂停保护",确认即可。

这里我必须多说一句:暂停保护只适合安装系统的这段时间,装完 Ubuntu 之后记得回到 Windows 重新打开 BitLocker。不打开的话,你整个系统盘的透明加密等于被撤掉了,数据安全级别下降。当然,也有一些玩家选择永久关闭 BitLocker,图的是 Linux 和 Windows 文件互传无障碍。如果你非常在意两边文件互通,可以在安装前直接关闭 BitLocker 并解密分区,但这需要不少时间,而且笔记本丢了数据不安全,自己权衡。

2.3 安全启动该开还是该关:版本兼容与显卡驱动的坑

安全启动(Secure Boot)是 UEFI 固件里的一项防篡改机制,只允许加载带有效签名的引导程序和驱动。Win11 默认要求安全启动必须开启,所以你这台电脑大概率当前是开着的。

问题来了:Ubuntu 20.04 的 GRUB 引导程序本身是支持安全启动的,装系统、进系统、日常使用都没问题。但是安装第三方闭源驱动(尤其是 NVIDIA 显卡驱动)时,内核模块需要通过 DKMS 编译,这些编译出来的模块没有微软签名,安全启动会拒绝加载,表现就是显卡驱动装完重启后进不去桌面、黑屏、或者 nvidia-smi 报错。

针对这个坑,我给出的建议是分两种情况处理:

对硬件特别新、必须用闭源 NVIDIA 驱动的用户,直接进 BIOS 关闭安全启动再装系统。关闭路径一般是开机狂按F2/Del进 BIOS,找到 Secure Boot 选项,禁用,保存退出。Win11 在安全启动关闭后仍然能正常启动(Win11 安装时才强制要求,运行时并不检测),所以不用太担心。

对只用集成显卡或不装独立显卡驱动的用户,安全启动保持开启没任何问题。Ubuntu 20.04 官方对 Secure Boot 支持得很完善,系统安装完成后甚至能在 MOK 管理界面里注册自定义密钥。

我的做法是:如果不确定显卡驱动需求,优先关掉安全启动。关掉后装系统的容错率更高,U 盘制作也省去签名折腾的麻烦。记得在系统装好、驱动装好之后再去纠结它要不要重新打开。

3. 启动盘制作与磁盘空间的腾挪方案

3.1 下载镜像与校验:这一步不能省

Ubuntu 20.04 的官方镜像从 ubuntu.com/download/desktop 页面就能找到,但页面默认推荐最新 LTS,老版本链接藏在页面下方,找起来费点劲。偷懒的办法是直接用清华、阿里云镜像站下载,速度更快。清华镜像站地址为 mirrors.tuna.tsinghua.edu.cn,路径里选 ubuntu-releases/20.04,下载ubuntu-20.04.6-desktop-amd64.iso(20.04 最后一个版本点是 20.04.6,包含到 2023 年的所有补丁)。

下载完别急着写盘,先做校验。这一步很多人嫌麻烦直接跳过,但镜像站下载包偶尔会有损坏,尤其是文件几个 GB 的情况下。在 Windows 下可以用 PowerShell 里自带命令算哈希值:

Get-FileHash .\ubuntu-20.04.6-desktop-amd64.iso -Algorithm SHA256

然后把算出的 SHA256 值和镜像站页面提供的哈希值对比。一致就用,不一致就重新下载。整个过程就一分钟,但能避免烧录一个坏盘然后卡在安装中途报错。

3.2 Rufus 制作启动 U 盘:GPT + UEFI 的正确姿势

制作启动盘的工具很多,BalenaEtcher、Ventoy 都有人用。我长期用 Rufus,因为它在 Windows 生态里最顺手,对 UEFI 引导兼容性最好。

准备一个至少 8GB 的 U 盘,注意安装过程 U 盘会被格式化,重要文件提前备份。打开 Rufus,设备一栏选择你的 U 盘,引导类型选择镜像文件,点"选择"找到下载好的 ISO,关键设置在"分区类型"这一项上:目标系统是 UEFI,分区类型必须选GPT。选了之后"目标系统"会自动变成 "UEFI(非 CSM)",其余选项保持默认。

点开始之后,Rufus 会提示写入模式,默认就行。中途如果 Windows 提示"需要格式化磁盘"之类,一律点取消,那是系统弹的干扰项。等进度条跑完,启动盘就做好了。

补充一个稍微进阶的内容:有些人想做一个"多功能装机盘",把 Ubuntu、Windows PE、各种修复工具都放一个 U 盘里用,那直接用 Ventoy。把 Ventoy 装到 U 盘后,把 ISO 文件直接扔进 U 盘根目录,开机选择 Ventoy 菜单里的任意 ISO 启动就行。对于只想装 Ubuntu 的用户,我建议还是 Rufus 一把梭,逻辑最简单,踩坑最少。

3.3 压缩磁盘空间与两种分区方案

安装前必须在 Windows 侧腾出空间。右键"此电脑" → "管理" → "磁盘管理",找到你要压缩的分区(推荐压缩数据盘 D 盘,如果你有的话;如果只有 C 盘一个分区,那也不用慌,压缩 C 盘即可,不会损坏系统)。

右键选中分区 → "压缩卷",输入要腾出的容量大小,单位是 MB。比如想腾出 120GB,就输入 122880。压缩完成后,磁盘管理里会出现一块"未分配"空间,这块空间就是给 Ubuntu 用的。

这里有两个注意事项。第一,不能在压缩前把分区变成"动态磁盘"。大多数家用电脑都是基本磁盘,不用管。但如果之前用过分区助手之类的工具,磁盘类型可能被改过,建议确认是"基本"再做。第二,压缩出来的未分配空间必须和 C 盘或其他已有分区相邻。如果你的磁盘中间被恢复分区挡住了,压缩选项可能是灰色的,这时需要用第三方分区工具处理,或者直接不动了,到了 Ubuntu 安装程序里再临时改分区。

分区方案我推荐两种,根据你的实际需求选一个:

方案 A(省心默认型):

  • 根分区/:50GB,ext4
  • 交换分区 swap:8GB(内存 16GB 以上可以设 8GB,16GB 以下建议 8-16GB,内存 32GB 以上干脆不建,用 swapfile 替代)
  • home 分区/home:剩余所有空间,ext4

方案 B(开发工程型,适合 ROS/SLAM/深度学习):

  • 根分区/:80GB,ext4
  • 交换分区 swap:8GB
  • home 分区/home:剩余所有空间,ext4
  • 单独数据分区:如果你有机械硬盘想挂载做数据盘,装完后手动挂载到/data

很多教程会建议另外划一块boot/efi分区,但那是因为它们的电脑没有已有的 EFI 分区。你现在的 Win11 系统必然有一个几百 MB 的 EFI 系统分区,Ubuntu 会自动识别并共用它,不需要再创建。这个细节在下一步手动分区时会再次出现,到时候别慌。

4. 安装引导逐屏拆解到桌面

4.1 开机进启动菜单:找到你的 U 盘

启动盘插好,重启电脑。开机时屏幕一亮就连续按启动菜单热键,常见品牌如下:戴尔是 F12,联想是 F12,惠普是 F9,华硕是 F8 或 Esc,微星是 F11。如果你不确定,开机时留意屏幕下方的提示字样,或者干脆逐个试试。

在启动菜单里选择 U 盘对应的启动项,名称一般带"USB"或"UEFI"字样。强烈建议选带UEFI前缀的那一项,比如 "UEFI:KingstonDataTraveler 3.0",这样确保走 UEFI 引导。如果选了不带 UEFI 字样的 Legacy 启动项,后面分区时会进入完全不同的引导流程,那才是真的恶心。

进去之后会进入 Ubuntu 的 GRUB 菜单,通常有两个选项:"Try or Install Ubuntu" 和 "Ubuntu (safe graphics)"。直接选第一个,回车。

如果你到这一步黑屏卡住不动了,大概率是显卡兼容问题。重启用"Ubuntu (safe graphics)" 选项,这个会在进系统时临时加 nomodeset 参数,绕过独显驱动的初始化黑屏问题。

4.2 安装程序设置与手动分区

整个安装过程里,语言、键盘布局、WiFi 这些一路正常选就行。语言建议选中文,或者英文也行,系统后续可以随时切换。要特别注意的地方在"安装类型"这一步。系统会给你两个省心选项:"清除整个磁盘"(危险,别选)和"与 Windows 共存"(自动分区,不推荐)。想彻底掌控分区布局,就直接选最下方的"其他选项"(Something else)。

点击"继续"后进入分区界面。这个界面看起来复杂,其实核心操作就几步:

先找到那块"空闲"的空间(free space),就是刚才在 Windows 压缩出来的未分配区域,大小应该和你设置的数字一致。

选中空闲空间,点击"+"号创建根分区。尺寸填 50000 或 80000(MB),类型选择"主分区"或"逻辑分区"都无所谓,位置选择"起点",用于选择"Ext4 日志文件系统",挂载点选/。

再选中剩余的空闲空间,点"+"创建 swap 分区。尺寸填 8192 或你计划的大小,用于选"交换空间"(swap area),不需要填挂载点。

继续选中剩下的空闲空间,点"+"创建 home 分区。这次把剩余全部容量都填进去,用于选 Ext4,挂载点选/home。

分区表里应该能看到一个已有的EFI 系统分区(挂在 /dev/nvme0n1p1 之类,大小通常 100MB 到 500MB),这个分区保持原样,绝对不要去改它。安装程序会自动把引导写入这个 EFI 分区。

最下面一行"安装启动引导器的设备",默认是/dev/nvme0n1(你的整块磁盘),保持默认不要动。有些教程让你改成 EFI 分区,那是误人子弟,设置成整块磁盘反而最稳。

确认无误后点"现在安装"。系统开始复制文件,期间会让你选择时区、创建用户名密码。时区直接在地图上点上海或北京,或手动输入Shanghai。

4.3 安装完成重启后的引导菜单细节

安装完成后系统提示重启。拔掉 U 盘,按提示重启,此时会看到 GRUB 引导菜单,最前面是 Ubuntu 内核选项,下面通常会有 "Windows Boot Manager(在 /dev/nvme0n1p1 上)" 这一项。

这说明双系统引导已经成功。以后每次开机默认进 Ubuntu,如果想进 Windows,在 GRUB 菜单里手动选 Windows Boot Manager。GRUB 的默认等待时间是 10 秒,对于手速慢的人,可以直接后续改成 30 秒,这个后面讲。

如果你的 GRUB 菜单里干干净净只有 Ubuntu,没有 Windows 项,别着急,进系统后运行一条命令就能修复,具体见第 6 章。

正常进入 Ubuntu 桌面后,第一件事是确定网络能通。如果 WiFi 连不上或者有线没驱动,先检查是不是网卡太新需要额外固件。Ubuntu 20.04 内核自带的驱动覆盖了大多数常用网卡,遇到问题再单独解决,别在这块钻牛角尖。

5. 首次进系统后必做的三件事

5.1 换源、更新与系统升级

装完系统第一步,先确认当前系统是 20.04 的哪个小版本。在终端执行:

lsb_release -a

只要显示 Release 是 20.04,后面不管小版本是多少,都可以正常换源和更新。

然后打开软件源配置文件,把默认的官方源替换成国内镜像源。这里我推荐清华源,稳定且文档清楚。20.04 的源文件路径是/etc/apt/sources.list,里面默认内容用的是 archive.ubuntu.com 和 security.ubuntu.com 两个域名。直接执行命令替换:

sudo sed -i 's@//.*archive.ubuntu.com@//mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list sudo sed -i 's@security.ubuntu.com@mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list sudo apt update && sudo apt upgrade -y

第一行把普通软件仓库地址改到清华,第二行把安全更新仓库地址改到清华,第三行更新软件列表并升级所有已装软件到最新。升级过程可能耗时较长,取决于网络速度,耐心等它跑完。

换源之后有个细节要注意:/etc/apt/sources.list只改这两个域名还不够,有些版本的文件里还写了ports.ubuntu.com或archive.ubuntu.com的 CDN 前缀,如果apt update报错提示某个地址过期,就用sudo vim打开文件手动改,把里面所有http://开头的域名整体看一遍,确保都在清华域下。

这套源配置同时也为后续安装 ROS、安装第三方包打好基础,不换源你会体验到什么叫"下载速度以 KB 计"的折磨。

5.2 显卡驱动:两个坑与一个最优做法

安装显卡驱动的需求在热词里呼声很高,尤其是apt install nvidia-driver-535这个命令被搜爆了。但我必须把正确的安装姿势讲清楚,避免你盲目敲命令。

进系统后先确认显卡型号和推荐驱动版本:

ubuntu-drivers devices

这条命令会列出系统识别到的显卡设备和可安装的驱动版本。如果命令不存在,先执行sudo apt install ubuntu-drivers-common。识别没问题后,有两个安装路径:

路径一(推荐):自动安装系统推荐的驱动版本

sudo ubuntu-drivers autoinstall

系统自己选一个最合适的驱动版本,装完重启,搞定。

路径二(指定版本):对应特定 CUDA 版本的工程环境

sudo apt install nvidia-driver-535

使用这条命令的前提是你已经确认 535 驱动和你的 CUDA 版本、PyTorch 版本匹配。如果没有这个硬性需求,直接用路径一就行。

装完驱动重启后,用nvidia-smi验证。能看到显卡型号、驱动版本、CUDA 版本信息,就说明驱动安装成功。

接着讲两个坑:

第一个坑是前面提到的安全启动问题。如果你在 BIOS 里关掉了 Secure Boot,驱动装完重启正常加载,一切顺利。如果你没关 Secure Boot,装驱动过程中很可能会弹出蓝底白字的 MOK 管理界面(Machine Owner Key),让你输入一段密码并确认注册。很多人搞不清楚这个密码是什么,其实是安装过程中你自己设的一个临时密码,用于签名第三方内核模块。这时候如果乱按,驱动装完重启大概率白屏或黑屏。处理方案很简单,开机进 BIOS 关掉 Secure Boot,就没有这个过程了。

第二个坑是显示器副屏/分辨率问题。Ubuntu 20.04 装完 NVIDIA 驱动后,有概率出现"设置里识别到显示器但分辨率不对"或"主副屏顺序颠倒"。可以通过xrandr命令手动调整,但最简单的路径是在"设置 → 显示"里操作。如果连有多个显示器却只显示一个,先检查是否用的是 HDMI/VGA 转接口,部分转接头在 NVIDIA 驱动下识别不到。这类问题本质上不是驱动 bug,而是连接方式兼容性问题,换直连就能解决。

5.3 git、编译链与中文输入法的实用配置

新系统到手,先把开发环境基础工具装齐:

sudo apt install -y git build-essential cmake curl vim net-tools htop openssh-server

build-essential这个包特别关键,它包含了 gcc、g++、make 等编译工具链,几乎所有的 C/C++ 项目编译都依赖它。cmake 是大型工程构建工具。git 配置一下用户信息:

git config --global user.name "你的名字" git config --global user.email "你的邮箱"

SSH 服务顺手启动并设为开机自启:

sudo systemctl enable ssh --now

这样局域网内的其他机器就能直接ssh 用户名@你的IP连上来,方便开发板、服务器、台式机之间的文件传输和远程操作。

还有一个容易被忽略的重要配置:中文输入法。Ubuntu 20.04 默认输入法是 IBus,配置起来不算复杂但偶尔抽风,尤其在微信、WPS、VS Code 里出现候选框错位的问题。我建议直接换 Fcitx5:

sudo apt install -y fcitx5 fcitx5-chinese-addons fcitx5-config-qt

安装完成后,需要进入"系统设置 → 区域与语言 → 输入法"里,把 IBus 切换成 Fcitx 5。注销重新登录,输入法托盘图标就会出现。如果不出现,执行:

im-config -n fcitx5

再注销一遍。之后用Ctrl+空格切换中英文输入即可。很多人装完系统没管输入法,用 Extra 某些默认输入框的中文支持很痛苦,这一步值得花五分钟做完。

6. 双系统日常维护与引导修复速查

6.1 GRUB 菜单里没有 Windows 项:一条命令解决

进入 Ubuntu 后发现 GRUB 菜单没有 Windows Boot Manager,原因通常是 os-prober 没有正确检测到其他系统。解决方式:

sudo os-prober

看看输出里有没有 Windows Boot Manager 的信息。如果有,root 下执行:

sudo update-grub

GRUB 会重新扫描整块磁盘的 EFI 启动项,并把 Windows 加进菜单。如果没有输出,多半是 EFI 分区没被挂载或系统没识别到,这种问题稍微复杂一点,需要检查ls /sys/firmware/efi是否存在,确认当前确实是 UEFI 引导,再手动挂载 EFI 分区后重新执行:

sudo mount /dev/nvme0n1p1 /boot/efi sudo update-grub

我写这段是因为太多人第一步就是乱猜 BIOS 设置,其实绝大多数情况就是update-grub一下的事。

6.2 显卡驱动装完黑屏的应急处理

这个问题几乎每个装 Ubuntu 双系统的人都遇到过:装完 NVIDIA 驱动,重启后黑屏、停在 grub 之后、或者直接卡在登录界面反复回跳。

导致黑屏的原因很多,常见的有驱动版本和内核不匹配、安全启动导致模块被拒绝加载、GRUB 默认参数里没有加 nomodeset。

应急措施是开机时进入 GRUB 菜单,选中 Ubuntu 内核行,按e进入编辑模式,找到quiet splash这一行,改成quiet splash nomodeset,然后按Ctrl+X或F10启动。nomodeset 参数让内核不去初始化显卡图形加速,用最基本的显示模式把系统带起来。

启动后进入系统,再确定具体问题。如果是安全启动问题,就按前面说的去 BIOS 关 Secure Boot。如果是驱动版本太新,可以卸载后安装稍旧版本:

sudo apt purge nvidia-* sudo ubuntu-drivers autoinstall

值得提醒的是:sudo apt purge nvidia-*会把所有 NVIDIA 相关包卸载干净,用完别忘重启。我见过很多人在黑屏问题里反复循环,是因为没有完全卸载就先装了另一个版本,模块互相冲突。

6.3 系统时间差 8 小时:两条修复路径

双系统最经典的时间问题:装完 Linux 后回 Windows,发现系统时间差 8 个小时。原理是 Windows 把硬件时间当作本地时间存储,而 Linux 默认把硬件时间当作 UTC,两者基准不同导致偏移。

最快的修复方式是在 Linux 侧执行:

sudo timedatectl set-local-rtc 1

让 Linux 也把硬件时间当本地时间,之后两边就同步了。执行后可以用timedatectl查看输出,如果显示RTC in local TZ: yes就说明生效了。

想反着改的也可以,在 Windows 侧用管理员权限打开命令提示符,执行:

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /t REG_QWORD /d 1

让 Windows 也按 UTC 处理硬件时间。这两条路径殊途同归。我的习惯是用 Linux 侧的命令,因为改一处就不用再管注册表,而且对 Win11 的兼容性没问题。

6.4 彻底卸载 Ubuntu:留给以后可能想反悔的你

有一天你也可能会想卸掉 Ubuntu,把磁盘空间重新还给 Windows。这个过程有坑,我直接给操作顺序:

先在 Windows 侧打开磁盘管理,删除 Linux 所在的分区(根分区、home 分区、swap 分区),把空间删除后合并回原分区。

然后处理引导项。这一步很多人漏掉,结果删完分区后开机还进入 GRUB 的 rescue 界面,卡在grub>命令行不知所措。原因是 EFI 分区里的 Ubuntu 引导文件还在。正确的处理方式是用 diskpart 找到 EFI 分区,挂载后删除 Ubuntu 目录。

diskpart list disk sel disk 0 list vol

找到文件系统为 FAT32、容量通常几百 MB 的 EFI 分区,记住它的卷号。然后挂载它:

sel vol 1 assign letter=Z

打开Z:\EFI\,你会看到ubuntu和Microsoft两个目录,删掉ubuntu文件夹,再在 diskpart 里移除盘符:

remove letter=Z

这样重启后不会再出现 GRUB 菜单,系统会直接从 Windows Boot Manager 启动。整个过程只有两个关键点:一是分区删除顺序,二是 EFI 目录清理,做到这两个,Windows 和 Linux 之间随时可以"分手"。

我在实际折腾这些系统的过程中最有体会的一点是:Ubuntu 双系统安装这件事,真正难的不是命令,而是对整个引导链路、分区表、安全启动和文件系统权限的理解。一旦你理解了"UEFI 只负责引导,GRUB 负责菜单,系统负责挂载"这条主链路,大部分故障都能自己判断出来。希望这篇基于 Win11 平台的 Ubuntu 20.04 安装记录,能帮你少走几趟弯路。

返回列表