news 2026/5/28 19:06:17

Ubuntu 20.04 升级到 24.04 实战详细教程/记录

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Ubuntu 20.04 升级到 24.04 实战详细教程/记录

Ubuntu 20.04 升级到 24.04 实战记录:20.04 → 22.04 → 24.04

一、前言

最近我把一台Ubuntu 20.04.6 LTS虚拟机成功升级到了Ubuntu 24.04.4 LTS
整个过程里踩了几个典型坑,比如:

  • VMware 虚拟机网络不通
  • 软件源异常
  • 升级过程中出现配置文件冲突
  • 删除旧软件包时不知道该不该继续
  • 看到 24.04 弹窗时误以为要立刻点升级

这篇文章把整个过程整理成一份可直接照做的实操记录,尽量让普通用户也能跟着升级成功

适合人群:

  • 当前系统是Ubuntu 20.04
  • 想升级到Ubuntu 24.04
  • 不想重装系统
  • 虚拟机 / 实体机都可参考

先说结论:20.04 不能直接升级到 24.04

正确路径是:

Ubuntu20.04LTS ->Ubuntu22.04LTS ->Ubuntu24.04LTS

升级前的条件和准备

1)先备份,虚拟机建议做快照

如果你用的是 VMware / VirtualBox,强烈建议先做快照。升级中途如果出问题,可以直接回滚。

2)确认当前系统版本和网络正常

执行:

lsb_release-acat/etc/os-releaseping-c38.8.8.8

确认两件事:

  • 当前确实是Ubuntu 20.04、外网能通

3)检查软件源

升级前第三方源最容易引发问题,先检查:

cat/etc/apt/sources.listls-l/etc/apt/sources.list.dgrep-R"^[^#].*deb "/etc/apt/sources.list /etc/apt/sources.list.d/2>/dev/null

如果你有第三方源,比如 Docker、Node、MongoDB、PPA 等,建议先禁用。


二、升级前先处理软件源

1)备份原有软件源

sudocp/etc/apt/sources.list /etc/apt/sources.list.bak.$(date+%F)

2)禁用第三方源

以 Docker 源为例:

sudomkdir-p/root/disabled-apt-sourcessudomv/etc/apt/sources.list.d/docker.list /root/disabled-apt-sources/2>/dev/null||true

3)把 Ubuntu 20.04 主源改成官方源

sudotee/etc/apt/sources.list>/dev/null<<'EOF' deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse deb http://security.ubuntu.com/ubuntu focal-security main restricted universe multiverse EOF

4)刷新索引

sudoaptcleansudorm-rf/var/lib/apt/lists/*sudoaptupdate

只要apt update正常,就可以继续。


三、先把 20.04 更新到最新状态

正式升级前,先把当前系统更新干净:

sudoaptupgrade-ysudoaptfull-upgrade-ysudoaptautoremove-ysudoaptinstall-yupdate-manager-core ubuntu-release-upgrader-core

检查升级策略:

grep'^Prompt='/etc/update-manager/release-upgrades

如果不是Prompt=lts,改成:

sudosed-i's/^Prompt=.*/Prompt=lts/'/etc/update-manager/release-upgradesgrep'^Prompt='/etc/update-manager/release-upgrades

重启一次:

sudoreboot

重启后再确认:

lsb_release-auname-r

第一步:Ubuntu 20.04 升级到 22.04

1)开始升级

执行:

sudodo-release-upgrade

2)升级过程中常见提示怎么选

提示 1:glibc升级时 mysql 没有自动重启

这类提示直接选:

  • <Ok>按回车继续即可。

提示 2:正在安装 Firefox Snap

这是正常现象,不要中断。处理方式:

  • 等待下载完成
  • 不要Ctrl + C
  • 不要强制关闭终端

提示 3:配置文件冲突,例如/etc/sysctl.conf

如果出现类似:

  • /etc/sysctl.conf

通常会问你是否用维护者的新版本覆盖当前文件。这里建议:输入N回车,也就是:保留当前版本


提示 4:软件包设置:正在设定 unattended-upgrades

选第二项keep the local version currently installed回车

原因和刚才一样:这是升级时遇到你本机已修改过的配置文件,先保留当前版本更稳,升级后再按需要比对调整。

提示 5:桌面弹出“Ubuntu 24.04 LTS 升级可用”

这时不要跳到 24.04。

应该点击:稍后询问先把20.04 → 22.04这一步跑完。


提示 6:出现继续 [yN]

这里输入:y 然后回车。


提示 7:提示升级完成并将重启

继续输入:y 然后回车。系统会自动重启。


3)重启后确认 22.04 是否成功

登录系统后执行:

lsb_release-a

如果看到类似下面内容,说明第一段升级成功:

Description: Ubuntu22.04.5 LTS Release:22.04Codename: jammy

第二步:Ubuntu 22.04 升级到 24.04

1)先把 22.04 更新干净

先执行:

sudoaptupdatesudoaptupgrade-ysudoaptfull-upgrade-ysudoaptautoremove-y

然后确认当前版本:

lsb_release-auname-r

2)开始升级到 24.04

执行:

sudodo-release-upgrade

3)升级过程中常见提示怎么选

提示 1:/etc/vim/vimrc配置文件冲突

输入:N回车。


提示 2:/etc/sysctl.conf冲突

还是输入:N回车。


提示 3:/etc/fwupd/fwupd.conf配置文件冲突

继续输入: N 回车。


提示 4:删除陈旧软件包

如果提示删除旧软件包并询问是否继续:

继续[yN]

这里输入: y 然后回车。


4)系统重启后,桌面会变成新版本样式

升级完成后系统会自动重启。
重启后桌面样式通常会发生明显变化,这是正常的。


5)确认 24.04 是否升级成功

打开终端执行:

lsb_release-acat/etc/os-releaseuname-rsudoaptupdate

如果看到类似下面内容,就说明升级已经完成:

Description: Ubuntu24.04.4 LTS Release:24.04Codename: noble

并且sudo apt update正常,没有报错。

四、完整命令汇总

1)升级前准备

lsb_release-acat/etc/os-releaseping-c38.8.8.8cat/etc/apt/sources.listls-l/etc/apt/sources.list.dgrep-R"^[^#].*deb "/etc/apt/sources.list /etc/apt/sources.list.d/2>/dev/nullsudocp/etc/apt/sources.list /etc/apt/sources.list.bak.$(date+%F)sudomkdir-p/root/disabled-apt-sourcessudomv/etc/apt/sources.list.d/docker.list /root/disabled-apt-sources/2>/dev/null||truesudotee/etc/apt/sources.list>/dev/null<<'EOF' deb http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse deb http://security.ubuntu.com/ubuntu focal-security main restricted universe multiverse EOFsudoaptcleansudorm-rf/var/lib/apt/lists/*sudoaptupdatesudoaptupgrade-ysudoaptfull-upgrade-ysudoaptautoremove-ysudoaptinstall-yupdate-manager-core ubuntu-release-upgrader-coresudosed-i's/^Prompt=.*/Prompt=lts/'/etc/update-manager/release-upgradesgrep'^Prompt='/etc/update-manager/release-upgradessudoreboot

2)20.04 → 22.04

sudodo-release-upgrade

关键选择:

  • mysql / glibc 弹窗:<Ok>
  • 配置文件冲突:N
  • 桌面弹出 24.04 提示:稍后询问
  • 继续 [yN]y
  • 重启确认:y

3)22.04 → 24.04 前更新

sudoaptupdatesudoaptupgrade-ysudoaptfull-upgrade-ysudoaptautoremove-ylsb_release-auname-r

4)22.04 → 24.04

sudodo-release-upgrade

关键选择:

  • /etc/vim/vimrcN
  • /etc/sysctl.confN
  • /etc/fwupd/fwupd.confN
  • 删除陈旧软件包:y

5)升级完成后检查

lsb_release-acat/etc/os-releaseuname-rsudoaptupdatesudoaptautoremove-ysudoaptclean

五、几个关键经验

1)什么时候选N

遇到“配置文件已修改,是否覆盖”的提示时,优先选:

N

适用于:

  • /etc/sysctl.conf
  • /etc/vim/vimrc
  • /etc/fwupd/fwupd.conf

也就是:保留当前版本


2)什么时候选y

遇到这些情况时通常选:

y
  • 继续 [yN]
  • 确认继续升级
  • 确认删除旧软件包
  • 确认升级完成后重启

3)什么时候点“稍后询问”

当你还在做20.04 → 22.04时,如果桌面弹出:

  • Ubuntu 24.04 LTS 升级可用

这时不要立刻点升级,应该点:

  • 稍后询问

先完成当前这一段升级。


结语

这次升级的最终结果是:

  • Ubuntu 20.04.6 LTS
  • 成功升级到
  • Ubuntu 24.04.4 LTS

整个过程虽然步骤不少,但只要记住下面 5 点,成功率会高很多:

  1. 必须分两段升级:20.04 → 22.04 → 24.04
  2. 升级前先清理软件源
  3. 配置文件冲突优先选N
  4. 继续升级 / 删除旧包时选y
  5. 先让当前阶段跑完,不要中途跳版本

如果你也准备从 Ubuntu 20.04 升级到 24.04,希望这篇文章能帮你少踩坑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/23 2:00:38

告别翻墙!用DeepSeek API在国内零成本玩转Claude Code(保姆级配置教程)

国内开发者零门槛体验Claude Code的完整指南 第一次听说Claude Code时&#xff0c;我正在为一个JavaScript项目焦头烂额。作为独立开发者&#xff0c;我常常需要快速原型开发&#xff0c;但又受限于时间和资源。Claude Code的出现像是一剂强心针——这个能直接在终端运行的AI编…

作者头像 李华
网站建设 2026/5/23 2:00:41

bilibili-downloader:免费获取B站4K视频的技术实现与场景应用

bilibili-downloader&#xff1a;免费获取B站4K视频的技术实现与场景应用 【免费下载链接】bilibili-downloader B站视频下载&#xff0c;支持下载大会员清晰度4K&#xff0c;持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 在数字内容消…

作者头像 李华
网站建设 2026/5/22 22:47:14

Featurize深度学习训练全流程解析:从数据上传到模型输出

1. 数据上传&#xff1a;从本地到云端的高效迁移 第一次使用Featurize上传数据集时&#xff0c;我习惯性地点开了网页端的上传按钮&#xff0c;结果发现系统自动启用了分片上传机制。这个细节让我印象深刻——当我的10GB图像数据集在上传过程中网络波动时&#xff0c;竟然不需要…

作者头像 李华
网站建设 2026/5/23 2:01:36

AWPortrait-Z人像美化LoRA实战:中老年群体自然感人像生成技巧

AWPortrait-Z人像美化LoRA实战&#xff1a;中老年群体自然感人像生成技巧 1. 项目概述与核心价值 AWPortrait-Z是一个基于Z-Image精心构建的人像美化LoRA模型&#xff0c;通过WebUI界面提供简单易用的人像生成体验。这个项目特别针对中老年群体的人像生成进行了优化&#xff…

作者头像 李华
网站建设 2026/5/23 2:00:41

Redis究竟有几种数据结构?分别有什么特点?

Redis有多少种数据结构&#xff1f;大多数人的回答是5种&#xff1a;String、List、Hash、Set、Sorted Set。这个答案放在Redis 3.x的时代没问题&#xff0c;但到了Redis 7.x&#xff0c;实际可用的数据结构已经有10种。除了上面5种基础类型&#xff0c;还有Bitmap、HyperLogLo…

作者头像 李华