装 Linux,我头一回折腾是在一台老笔记本上,用 U 盘引导进去,结果卡在 logo 界面足足二十分钟没动静,最后发现是 BIOS 里的一个安全启动选项没关。后来做运维、做开发,物理机、虚拟机、双系统我装过的机器没有一百也有八十台,各种发行版来回换,坑踩得足够多,现在基本上二十分钟能把一台机器从裸机装到可用的开发环境。这篇就把 Linux 系统安装这条完整链路上真正决定成败的环节拆开讲:镜像怎么选、启动盘怎么做、BIOS 怎么设、分区怎么算、装完怎么配,以及那些官方文档从来不写、但会让你浪费半天时间的细节。不管你是刚接触 Linux 的新手,还是想把 Ubuntu 系统安装流程标准化下来的老手,都能直接照着做,也能看懂每一步背后的道理。
1. 装系统前的整体思路与方案选型
很多人装 Linux 失败,不是因为操作不熟练,而是因为一开始选错了方向。选发行版、选载体、选引导方式,这三件事定下来,后面九成的麻烦就已经被规避掉了。所以动手之前,先花十分钟把下面几个问题想清楚,比急着插 U 盘有用得多。
1.1 先搞清楚你要装的是什么:主流发行版谱系速览
Linux 本身只是内核,你实际安装的是内核加上一大堆软件包集合而成的发行版。发行版之间的差别,说白了就是三件事:包管理器不同、安装器不同、默认软件策略不同。搞懂这个分类,你看到任何一个没听过的发行版,都能大致猜到它怎么装、怎么配。
按包管理器和血缘分,主流就四条线:Debian 系用.deb包和apt命令,包括 Ubuntu、Debian 本身以及国内常见的麒麟等;Red Hat 系用.rpm包和dnf/yum,包括 Fedora、RHEL 以及欧拉;Arch 系用pacman,滚动更新,适合喜欢折腾的人;还有 openSUSE、Alpine 这些自成一路的。同一条线里的发行版,安装器操作逻辑高度相似,你学会装一个,另一个基本就是换个界面。
| 发行版 | 包管理 | 安装器 | 适合谁 | 典型用途 |
|---|---|---|---|---|
| Ubuntu 22.04 LTS | apt/dpkg | Subiquity(图形/文本双模) | 新手、开发者 | 桌面开发、服务器、AI 环境 |
| Debian 12 | apt/dpkg | Debian Installer | 追求稳定的人 | 服务器、长期运行设备 |
| Fedora | dnf | Anaconda | 想用新特性的人 | 桌面尝鲜、开发测试 |
| openEuler / 麒麟 | dnf 或 apt | Anaconda / 定制安装器 | 政企、信创环境 | 服务器、办公终端 |
| Arch / Manjaro | pacman | 命令行 / Calamares | 折腾党 | 高度定制桌面 |
新手我一般只推一条路:Ubuntu 22.04 LTS 或者 24.04 LTS。理由是 LTS 版本有五年支持周期,社区资料最多,你遇到的几乎所有报错,网上都已经有人问过并给出答案;国产的麒麟、统信等系统,在信创场景里必须要用,但遇到问题时查资料的难度会高一截,不适合拿来练手。等你把 Ubuntu 装熟、命令用顺了,再去碰其他发行版,成本会低很多。
1.2 物理机、虚拟机、双系统:三条路怎么选
确定了发行版,下一个决策是"装在哪"。这件事看起来是硬件问题,实际上是风险控制问题。我见过太多人第一次就直接在办公电脑上格盘装双系统,结果把 Windows 引导搞丢,工作都做不了。
| 方式 | 隔离性 | 性能损耗 | 回退难度 | 推荐场景 |
|---|---|---|---|---|
| 虚拟机安装 | 完全隔离 | 15%~35% | 删文件即可 | 首次学习、测试命令、跑服务验证 |
| 双系统 | 无(独立分区) | 几乎为零 | 需修引导 | 主力开发机、需要完整硬件性能 |
| 单系统覆盖 | 无 | 几乎为零 | 需重装 | 专用服务器、闲置机器 |
| 硬件直通 / WSL | 部分隔离 | 较低 | 卸载即可 | Windows 下临时使用命令行工具 |
我的建议是分三步走:第一次用虚拟机装一遍,把安装向导的每一步、每个选项都点一遍,感受一下分区界面长什么样;第二次在闲置机器或备用盘上做双系统,练引导修复;第三次才在主力机上动手。虚拟机这条路我特别推荐,因为你可以随手打快照,装崩了直接回滚,几十秒的事,试错成本几乎为零。而且虚拟机里装的系统和物理机上装的,除了驱动和增强工具,其余流程完全一致,学到的经验可以直接迁移。
1.3 引导方式与分区方案的前置决策
这一节是纯技术活,但决定了你能不能装成功。现代机器有两套引导体系:老的Legacy BIOS + MBR 分区表,和新的UEFI + GPT 分区表。2013 年以后的机器基本都是 UEFI,装系统时你只需要保证一件事——启动盘是用 UEFI 模式引导的,装出来的系统也必须是 UEFI 模式。混搭的后果就是装完重启进不去系统,屏幕上冷冰冰一行 "No bootable device"。
判断方法很简单:进 BIOS 看有没有 "UEFI" 字样、看 "Boot Mode" 是 UEFI 还是 Legacy/CSM。如果 BIOS 里同时有 "UEFI: 你的U盘" 和 "你的U盘" 两个选项,一定要选带 UEFI 前缀的那个。这是新手最容易忽略的一步,我当年就是在这里反复装了三遍。
分区方案上,UEFI 模式必须有一个EFI 系统分区(ESP),格式 FAT32,建议 512MB(装多个系统时给 1GB 更稳妥);其余按用途划分:
/根分区:建议 40~60GB,ext4。系统、软件包都装在这里。/home:剩下的空间全给它,ext4。你的文档、代码、配置都在这,重装系统时可以保留。swap交换分区:不用再死记"内存的两倍"这种老说法了,按下面这张表来。
| 物理内存 | swap 建议值 | 说明 |
|---|---|---|
| ≤ 2GB | 2 倍内存 | 老机器内存紧张,多留余量 |
| 2GB ~ 8GB | 等于内存 | 均衡方案,兼顾休眠 |
| 8GB ~ 64GB | 4GB ~ 8GB | 现代机器内存足够,swap 只做兜底 |
| > 64GB | 视需求,0~8GB | 不用休眠功能甚至可以不给 |
如果你打算用休眠功能(合盖挂起到磁盘),swap 必须大于物理内存,否则休眠会失败。这一点官方安装器不会提醒你,装完才发现合盖就掉电,重装分区又嫌麻烦,非常难受。我自己的习惯是:开发机内存 32GB,swap 给 8GB,不用休眠;笔记本内存 16GB,swap 给 16GB,保证休眠可用。
2. 装机前的核心准备:镜像、U盘与硬件核对
准备阶段的功夫下得够不够,直接体现在安装过程顺不顺。这一节的三件事——镜像、启动盘、BIOS 设置——任何一件出岔子,都会让你在安装界面前卡住,而且报错信息往往含糊不清,非常消耗耐心。
2.1 镜像下载与校验:别跳过校验这一步
镜像一定从发行版官方渠道下载,不要用来路不明的第三方打包版。下载时注意区分版本类型:
- Desktop 版:带图形桌面,安装器是图形界面,适合个人使用,体积 2~5GB。
- Server 版:不带桌面,安装完是命令行,适合服务器,体积 1GB 左右。
- Live 版:可以直接从 U 盘运行,不安装到硬盘,适合先试后装和紧急救援。
下载完必须做一次哈希校验。这不是强迫症,而是因为镜像下载过程中一旦出现几个字节的损坏,安装到一半会报出各种莫名其妙的错误,比如解压软件包失败、分区表写入异常,排查起来毫无头绪。校验成本只有几十秒:
# Linux / macOS 下计算 SHA256 sha256sum ubuntu-22.04.4-desktop-amd64.iso # Windows PowerShell 下 Get-FileHash .\ubuntu-22.04.4-desktop-amd64.iso -Algorithm SHA256算出来的字符串和官网发布的SHA256SUMS文件里对应的那一行逐字对比,完全一致才算过关。不一致就重新下载,别抱侥幸心理。
注意:USB 3.0 接口和劣质 U 盘是镜像损坏的高发区。如果你的校验反复失败,换一个品牌 U 盘、换一个 USB 口再试,通常就正常了。
2.2 启动盘制作:三种工具横向对比
做启动盘的工具很多,我实际长期用下来的就三个,各有适用场景:
| 工具 | 平台 | 特点 | 适合场景 |
|---|---|---|---|
| Ventoy | Windows/Linux | 一次安装,之后直接把 ISO 拷进 U 盘即可 | 经常换发行版、随身带多个系统 |
| Rufus | Windows | 轻量、速度快、选项细 | 偶尔装一次、需要精细控制分区方案 |
| balenaEtcher | 全平台 | 界面极简,三步骤完成 | 完全新手、怕点错选项 |
dd命令 | Linux/macOS | 原生、无依赖 | 服务器环境、无图形界面时 |
Ventoy 是我现在的主力方案,它的思路很讨巧:先往 U 盘写入一个引导程序,U 盘被分成两个区,一个放引导,另一个当普通 U 盘用,你只要把 ISO 文件拖进去,开机时 Ventoy 会列出所有 ISO 让你选。一个 U 盘放十几个发行版,比反复格式化省事太多。
Rufus 在写入时有几个关键选项要留意:
- 分区类型:选 GPT,目标系统选 UEFI,和 1.3 节说的引导方式保持一致。
- 文件系统:UEFI 下用 FAT32,但 FAT32 单文件上限 4GB,某些大镜像会放不下;这时 Rufus 会提示你改用 NTFS 并附加 UEFI:NTFS 驱动,选"是"即可。
- 写入模式:默认的 ISO 镜像模式即可,不要选 DD 模式,除非镜像模式启动失败。
Linux 下用dd的话,一定要先确认目标设备名,写错一个字就会把整个硬盘覆盖掉:
# 先列出所有块设备,看清 U 盘是哪个(比如 /dev/sdb,注意不是 /dev/sdb1) lsblk # 卸载 U 盘已有挂载(如果自动挂载了) sudo umount /dev/sdb* # 写入镜像,status=progress 会显示进度 sudo dd if=ubuntu-22.04.4-desktop-amd64.iso of=/dev/sdb bs=4M status=progress oflag=sync这是全文最危险的一条命令。
of=后面必须是没有数字后缀的整盘设备名。执行前请把lsblk的输出看三遍,确认容量和 U 盘对得上。写错设备名没有任何撤销手段。
2.3 BIOS/UEFI 关键选项与实测踩坑
启动盘插上、重启进 BIOS(通常是 F2、F12、Del、Esc,看开机画面提示),下面这几个选项是安装成败的关键:
- Secure Boot(安全启动):Ubuntu、Fedora、openSUSE 这些主流发行版都支持安全启动,可以保持开启。但 Arch、部分国产定制镜像、以及你自己编译内核的版本,通常需要先关掉,否则会卡在引导阶段。
- Fast Boot(快速启动):关掉。它会让机器跳过很多硬件自检,导致 U 盘不被识别。
- Windows 快速启动与 BitLocker:如果你要做双系统,必须先回到 Windows,在"电源选项"里关闭快速启动,并且挂起或关闭 BitLocker 磁盘加密。否则安装程序读到的是加密状态,压缩出来的空间不可用。
- 硬盘控制器模式(SATA Mode):很多笔记本默认是 RAID / Intel RST 模式,Linux 安装器识别不到硬盘。改成 AHCI 才能看到磁盘。注意,改之前如果 Windows 已经装好,直接改会导致 Windows 无法启动,正确做法是先在 Windows 里用命令切换驱动模式,再改 BIOS。
- Intel VMD / 傲腾:部分新笔记本(尤其 12 代以后的)默认开启 VMD,安装器同样看不到硬盘,需要在 BIOS 里关闭。
我印象最深的一次,是一台 12 代酷睿的笔记本,Ubuntu 安装器在分区那一步显示"没有可用磁盘",折腾了半小时才想起 VMD 这回事。关掉之后立刻正常。这类问题在网上搜到的答案往往语焉不详,记住一个判断原则:安装器看不到硬盘,先怀疑控制器模式和 VMD,而不是怀疑硬盘坏了。
3. 虚拟机安装 Ubuntu 22.04 全流程实操
虚拟机是练手的最佳场地。这一节我以 Ubuntu 22.04 LTS Desktop 在 VMware Workstation 里的安装为例,把每个参数为什么这么设讲清楚,VirtualBox 的操作逻辑完全一致,照着套就行。
3.1 虚拟机参数分配:几个数字背后的计算过程
新建虚拟机时那一堆数字不是随便填的,填小了后面跑不动,填大了宿主机卡死。按下面的思路算:
CPU 核心数:取宿主机物理核心数的一半,但不少于 2。比如宿主机是 8 核 16 线程,物理核心是 8,给虚拟机 4 个。为什么看物理核心而不是线程数?因为虚拟机的 vCPU 是要真实映射到物理核心上调度的,超过物理核心数会造成超配,宿主机和虚拟机一起变卡。
内存:宿主机 16GB,给虚拟机 4GB;宿主机 32GB,给 8GB。同时保证留给宿主机的内存不低于 8GB。如果你要在虚拟机里跑 Docker 或者编译大型项目,8GB 起步比较稳妥,4GB 会频繁触发 swap,体验很差。
磁盘:选"动态分配"(也叫精简置备),容量给 60GB。动态分配的意思是文件随时间增长,不会一上来就占满你的硬盘。60GB 的依据是:Ubuntu 完整桌面安装约占 8~12GB,加上开发工具链、Docker 镜像、几个项目的依赖,40GB 是个比较舒服的线,留 20GB 余量。
虚拟化加速:一定要在 BIOS 里打开 VT-x(Intel)或 AMD-V,在虚拟机设置里勾选"虚拟化 Intel VT-x/EPT"。这是虚拟机性能的分水岭,不开的话虚拟机跑起来像九十年代的机器。如果你还要在虚拟机里再套虚拟机(比如在里面装 Docker 或跑 KVM),需要额外勾选"虚拟化嵌套"。
存储控制器与网络:控制器选 NVMe 或 SCSI 都行,NVMe 略快;网络适配器选NAT最省事,虚拟机共享宿主机的网络直接上网;如果你需要宿主机访问虚拟机上的服务(比如从浏览器访问虚拟机里的 80 端口),选"桥接"或者做端口转发。
3.2 安装向导逐步操作与分区设置
虚拟机启动后进入安装界面,流程是:语言选择 → 键盘布局 → 更新与其他软件 → 安装类型 → 分区 → 时区 → 用户信息 → 等待安装 → 重启。
几个容易出问题的点:
更新与其他软件:如果网络不好,建议不勾选"安装时下载更新",否则安装过程会被下载速度拖到一两个小时。装完再更新是一样的。
安装类型:虚拟机里做练习,直接选"清除整个磁盘并安装 Ubuntu"最省事。但如果你是在双系统环境下,必须选"其他选项"手动分区,否则会误删 Windows 分区。手动分区界面里,你会看到所有磁盘和已有分区,操作方式是选中空闲空间 → 点"+"新增分区,按 1.3 节的方案分配:
| 挂载点 | 大小 | 类型 | 说明 |
|---|---|---|---|
| EFI 系统分区 | 512MB | FAT32 | 已有则挂载,不要重复创建 |
/ | 40GB | ext4 | 根分区 |
/home | 剩余全部 | ext4 | 保留个人数据 |
| swap | 8GB | 交换空间 | 按内存大小调整 |
分完区,最重要的一个选项是"安装启动引导器的设备"。单系统就选根分区所在的整块磁盘(如/dev/sda);双系统时,如果你是手动分区,也选整块磁盘,让 GRUB 覆盖原来的引导记录,这样开机时会同时出现 Ubuntu 和 Windows 的菜单。
时区与用户:时区选 Asia/Shanghai;用户名建议全小写字母,不要用中文和大写字母混排,某些软件对用户名格式很敏感,一开始就规范可以省掉很多事。
安装完成后会提示重启,VirtualBox 和 VMware 都会自动卸载 ISO,如果没有自动卸载、重启后又回到安装界面,手动在虚拟机设置里把光驱从"启动时连接"里断开即可。
3.3 首次开机后的基础配置:换源、增强工具与常用命令
系统装好只是开始,装完不配置,用起来会处处别扭。装完开机第一件事,按顺序做这几步:
第一步,换软件源。默认源在国内速度通常不理想,换成国内镜像站能快十倍不止。Ubuntu 22.04 的源文件在/etc/apt/sources.list:
# 备份原文件 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak # 编辑源文件(把域名替换成镜像站的地址) sudo nano /etc/apt/sources.list # 刷新索引并升级 sudo apt update && sudo apt upgrade -y注意:换源时确保发行版代号正确,Ubuntu 22.04 的代号是
jammy,24.04 是noble。代号写错会报 404,apt update直接失败。
第二步,安装虚拟机增强工具。VMware 装open-vm-tools-desktop,VirtualBox 装官方增强包,作用是让分辨率自适应、剪贴板互通、拖拽传文件:
sudo apt install open-vm-tools open-vm-tools-desktop -y第三步,打快照。这一步千万别省。装完系统、配好基础环境、还没装乱七八糟的东西之前,打一个干净的快照。以后不管你把系统折腾成什么样,几十秒就能回到这个状态。这是虚拟机相比物理机最大的优势,用它。
第四步,熟悉基础命令。把下面这些命令过一遍,日常九成的操作都覆盖了:
ls -lh # 看文件详情,-h 让大小变成人类可读 cd /var/log && pwd # 切换目录并确认当前位置 cp -r src dst # 递归复制目录 mv old new # 移动或重命名 rm -rf dir # 递归强制删除,用之前确认三遍路径 find / -name "*.conf" 2>/dev/null # 按名字查文件,屏蔽权限报错 grep -rn "keyword" ./ # 递归查内容并显示行号 chmod 755 script.sh # 给脚本加执行权限 ps aux | grep nginx # 查进程 df -h && du -sh * # 查磁盘占用与当前目录各子项大小用户管理也是常考点:
sudo adduser devuser # 交互式建用户,自动建家目录 sudo usermod -aG sudo devuser # 加入 sudo 组 sudo passwd devuser # 设置密码 su - devuser # 切换过去验证adduser和useradd的区别值得说一句:useradd是底层命令,只建条目,家目录、shell、密码都得自己补;adduser是上层封装,会一次性把该做的都做了。新手直接用adduser,能少踩一半坑。
4. 物理机安装与国产系统的注意事项
虚拟机里顺风顺水,一到物理机就容易翻车。物理机多了真实的磁盘布局、真实的引导记录、真实的硬件驱动,每一环都可能出问题。这一节讲三件在物理机上必须提前想清楚的事。
4.1 物理机分区与 Windows 共存的关键动作
装双系统的正确顺序是先 Windows,后 Linux,反过来的话 Windows 会覆盖引导记录,你还得手动修回来。确认 Windows 已装好后,按下面顺序操作:
先在 Windows 的"磁盘管理"里,找一个空间充裕的分区,右键"压缩卷",腾出至少 60GB 的未分配空间。Linux 安装器会识别这段未分配空间,手动分区时把分区建在上面。
然后在 Windows 里关闭快速启动。这个选项的坑在于:它让 Windows 关机时进入一种类似休眠的状态,磁盘上还留着文件系统的锁,Linux 挂载时会报"磁盘处于不安全状态"拒绝写入。关掉的路径是"控制面板 → 电源选项 → 选择电源按钮的功能 → 更改当前不可用的设置",把"启用快速启动"取消勾选。
BitLocker 也要处理。如果 Windows 开了设备加密,Linux 安装器读到的是加密卷,压缩出来的空间不可用,甚至可能损坏数据。正确做法是在 Windows 里暂停 BitLocker 保护,装完 Linux 再恢复。
引导器的安装位置是双系统最关键的一步。手动分区界面底部有个"安装启动引导器的设备",选Windows 所在的整块磁盘(比如/dev/nvme0n1),不要选某个分区。这样 GRUB 会接管开机引导,重启后你会看到一个菜单,里面有 Ubuntu、Advanced options 和 Windows Boot Manager。默认进入 Ubuntu,想进 Windows 用方向键选。
如果重启后直接进了 Windows,说明引导顺序不对,去 BIOS 里把ubuntu排到第一位。如果连 GRUB 菜单都没有,进 Windows 用命令行修复,或者用 Ubuntu 安装盘进 Live 环境跑引导修复工具,它会自动扫描磁盘并重建引导。
4.2 国产发行版安装的差异点
麒麟、openEuler 这类国产发行版在政企和信创场景里用得很多,安装流程和主流发行版大体一致,但有几个地方要特别留意。
架构必须对上。国产系统普遍同时提供 x86_64、aarch64(ARM)、loongarch 等多个架构版本。你下载的是 ARM 镜像,却装到 x86 的机器上,安装器连启动都启动不了。下载前先确认机器的 CPU 架构,命令是uname -m或lscpu,输出x86_64就下 x86 版,输出aarch64就下 ARM 版。这是最常见的翻车点。
安装器形态不同。openEuler 用的是 Anaconda 安装器,服务器版默认是文本界面,操作靠 Tab 和方向键,跟图形界面完全两套交互逻辑。分区环节它会自动分好,如果你想手动分,要切到"安装目的地"里改。麒麟的桌面版则接近 Ubuntu 的安装体验,图形化程度高,上手容易。
软件源与授权。部分国产系统的默认源指向内网仓库,公网上无法访问,导致apt update或dnf update直接超时。装完系统后第一步应该是检查源配置,能连通的源就保留,不通的换成公开源或者配置内网源地址。这一点在离线环境里尤其重要,我建议把需要的软件包提前下载好做成离线包,避免装完系统却装不上软件。
预装软件策略。国产系统通常预装了办公套件、输入法、浏览器等一大堆软件,这是它的定位决定的。如果你只是想拿它当服务器用,装精简版或者最小化安装,能省下不少磁盘和资源。
4.3 装完之后的网络、驱动与中文乱码处理
物理机装完,最常撞上的问题是网络和驱动。
网络配置。Ubuntu 18.04 以后默认用 netplan 管理网络,配置文件在/etc/netplan/下的 YAML 文件里。改完配置要执行sudo netplan apply才生效,apply之后如果 SSH 断连,说明配置写错了,需要接显示器进本地终端改回去。DNS 相关的坑也在这里:系统会优先读/etc/resolv.conf,但这个文件在 Ubuntu 里通常是指向 systemd-resolved 的软链接,你直接改它重启就没了,正确做法是在 netplan 配置里写nameservers字段,或者配置/etc/systemd/resolved.conf。排查顺序是:先ping 8.8.8.8通不通(测网络层),再nslookup baidu.com通不通(测 DNS 层),两个层次分开看,能快速定位是网络问题还是 DNS 问题。
无线网卡与显卡驱动。部分 Broadcom 无线网卡需要额外装firmware-b43-installer之类的固件包,没有网络就没法下,形成死循环。应对办法是用手机开 USB 网络共享,或者提前把对应的.deb包拷到 U 盘。NVIDIA 显卡的话,直接在"软件和更新 → 附加驱动"里选推荐版本,比命令行编译省事得多,装完重启即可。
中文乱码,这个是高频问题。Linux 下解压中文命名的压缩包出现乱码,根本原因是 Windows 的 zip 用的是 GBK 编码,而 Linux 默认按 UTF-8 解读文件名。解决办法是解压时指定编码:
# 方案一:unzip 指定编码(部分版本支持 -O 参数) unzip -O cp936 中文压缩包.zip -d ./target # 方案二:用 7z 解压,兼容性更好 7z x 中文压缩包.zip # 方案三:已经解压出乱码了,用 convmv 批量重命名 sudo apt install convmv -y convmv -f GBK -t UTF-8 -r --notest ./乱码目录如果是终端里显示乱码,检查locale输出,把LANG设为zh_CN.UTF-8或en_US.UTF-8,中文环境下还需要装中文字体和输入法。字体缺失会显示成方块,装fonts-noto-cjk一般能解决;输入法用fcitx5加拼音引擎是目前比较省心的组合。
5. 常见问题与排查技巧实录
装了这么多机器,我发现问题的类型其实高度集中,百分之八十都落在启动、磁盘、网络这三类。下面按现象整理成速查表,再补充几条我自己的排查习惯。
5.1 启动与引导类问题速查
| 现象 | 最可能的原因 | 处理方式 |
|---|---|---|
| 黑屏显示 No bootable device | 引导模式不匹配(UEFI 装成了 Legacy) | 重进 BIOS 选带 UEFI 前缀的启动项,或重做启动盘 |
| 卡在品牌 logo 转圈 | 安全启动未关 / 显卡驱动冲突 | 关 Secure Boot;启动参数加nomodeset |
| 直接进入 Windows,无 GRUB 菜单 | 引导顺序被 Windows 抢先 | BIOS 里把 ubuntu 调到第一位 |
| 提示 grub rescue> | GRUB 找不到引导分区 | 用安装盘进 Live 环境,重建引导 |
| 安装过程中黑屏 | 屏幕分辨率与安装器不兼容 | 启动时按 e 编辑参数,加nomodeset后启动 |
nomodeset这个参数值得单独说:它让内核暂时不加载显卡驱动,用最基本的显示模式启动。很多黑屏问题都和显卡驱动的早期加载有关,加上这个参数往往能顺利进到桌面,进去之后再装正确的驱动就行。
排查启动问题有个通用思路:先确定是引导阶段的问题,还是内核/驱动阶段的问题。看到 GRUB 菜单说明引导是好的,问题在内核;连 GRUB 都没出来,问题就在引导记录或 BIOS 设置上。这一条能帮你把搜索范围砍掉一半。
5.2 安装过程与安装后的高频故障
| 现象 | 原因分析 | 解决方案 |
|---|---|---|
| 分区界面看不到磁盘 | RAID/RST 模式 或 Intel VMD 开启 | BIOS 里改 AHCI、关 VMD |
| apt update 报 404 | 源地址的发行版代号写错 | 核对代号(jammy/noble 等) |
| 装完无法联网 | 网卡固件缺失 或 netplan 配置错误 | 用 USB 网络共享下固件;检查 YAML 缩进 |
| 合盖不休眠 / 休眠后掉电 | swap 小于物理内存 | 重建 swap 分区或关闭休眠 |
| 解压中文压缩包乱码 | zip 使用 GBK 编码 | unzip -O cp936或7z x |
| 双系统时间差 8 小时 | Windows 用本地时间,Linux 用 UTC | 把 Linux 改为本地时间或让 Windows 用 UTC |
| 磁盘报"处于不安全状态" | Windows 快速启动未关 | 在 Windows 关闭快速启动后完全关机 |
双系统时间差这个问题几乎人人遇到,处理方式二选一:在 Linux 下执行timedatectl set-local-rtc 1让它使用本地时间,或者在 Windows 注册表里把硬件时钟设为 UTC。前者的改动更小、更可逆,我一般选这个。
还有一类问题容易被忽略:安装过程卡在"正在复制文件"或者某个百分比不动。这通常是 U 盘读取失败或者镜像本身有损坏,回到 2.1 节重新校验镜像、换个 U 盘口。别在这里干等,超过五分钟没动静基本就是不正常。
5.3 我踩过的坑与几条实操心得
第一条心得,永远先给虚拟机打快照再折腾。这条规则帮我省下的时间,比我学任何技巧省下的都多。你想试一个新配置、装一个新内核、改一套网络方案,先打快照。搞崩了回滚,三十秒回到原状。物理机上没有这个便利,所以物理机上的操作要更保守。
第二条,引导器和分区信息在动手前写下来。磁盘是/dev/nvme0n1还是/dev/sda,要装到哪个分区,ESP 挂载到哪,这些信息在分区界面里全都要重新确认一遍。我习惯在纸上写清楚,避免在安装界面里凭记忆点鼠标。人一紧张就容易点错,而分区操作的错误往往无法撤销。
第三条,镜像校验和 U 盘质量比你想象的重要。我现在固定用两个品牌的 U 盘,一个装 Ventoy 放着常用镜像,一个备用。U 盘坏了不会报错,只会让你在安装过程中遇到各种无法解释的失败,把所有失败原因都排查一遍之后,才发现问题出在最基础的介质上。
第四条,装完先配好再装软件。很多人的习惯是装完系统立刻开始装一堆工具,结果环境依赖打架、源配置错误,全都混在一起,很难定位问题。正确的顺序是:换源 → 更新系统 → 装驱动 → 打快照 → 再装业务软件。每一层稳定了再往上走,出问题时你能确定是哪一层的锅。
第五条也是我最想强调的一条:记录你装过的机器。哪台机器用的什么发行版、什么分区方案、装了哪些额外驱动、遇到的特殊问题怎么解决的,用一个简单的 Markdown 文件记下来。半年后你再装同型号的机器,翻出记录直接照抄,效率高得吓人。我现在的记录本里已经攒了几十台机器的配置,每次装新机器前先翻一翻有没有同型号的,有的话基本就是复制粘贴的事。
最后分享一个我觉得特别实用的小技巧:在安装盘的启动菜单里,除了"试用 Ubuntu"和"安装 Ubuntu",还有一个"检查磁盘是否有缺陷"的选项。如果你的机器装到一半老是失败,先用这个选项跑一遍,它会检测安装介质和部分硬件是否有问题。很多看似玄学的问题,跑完这个检查就水落石出了。这个选项藏在启动菜单里不太显眼,但关键时刻能省下大把时间。