一、引言
在使用 Ubuntu 系统时,及时更新系统是保障系统安全、稳定和获取新功能的重要操作。系统更新可以修复已知的安全漏洞、提升软件性能,还能让你使用到最新的软件功能。本文将详细介绍 Ubuntu 系统更新的相关知识,包括更新前的准备、更新方式、常见问题及解决方法等,适合新手一步步学习。
Ubuntu 系统更新的完整流程。内容包括更新前的数据备份、版本检查及网络测试;命令行操作如 apt update/upgrade、do-release-upgrade 升级 LTS 或开发版;依赖修复、离线更新及第三方源冲突处理;图形界面更新方法;以及更新后的版本与服务状态检查。旨在帮助用户安全高效地维护系统,解决常见更新问题。

在使用 Ubuntu 系统时,及时更新系统是保障系统安全、稳定和获取新功能的重要操作。系统更新可以修复已知的安全漏洞、提升软件性能,还能让你使用到最新的软件功能。本文将详细介绍 Ubuntu 系统更新的相关知识,包括更新前的准备、更新方式、常见问题及解决方法等,适合新手一步步学习。
在进行系统更新之前,务必备份重要的数据。因为更新过程中可能会出现意外情况,导致数据丢失。你可以使用以下命令进行简单的数据备份:
sudo tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system /
解释:
sudo:以管理员权限执行命令。tar:用于创建归档文件。-cvpzf:参数组合,c 表示创建新的归档文件,v 表示显示详细的操作过程,p 表示保留文件的权限,z 表示使用 gzip 压缩,f 表示指定归档文件的名称。backup.tar.gz:备份文件的名称。--exclude=/backup.tar.gz:排除备份文件本身,避免将其重复备份。--one-file-system:只备份当前文件系统中的文件,不跨文件系统备份。/:表示备份整个根目录。在更新之前,需要了解当前系统的版本,以便确定是否有可用的更新以及更新的目标版本。可以使用以下命令检查系统版本:
lsb_release -a
解释:
lsb_release:用于显示 Linux 标准库发行版信息。-a:显示所有信息,包括发行版名称、版本号、代号等。系统更新需要从软件源服务器下载更新文件,因此稳定的网络连接是必不可少的。可以使用以下命令测试网络连接:
ping www.baidu.com
解释:
ping:用于测试网络连通性。www.baidu.com:要测试的目标网站域名。sudo apt update
参数解析:
sudo:以管理员权限执行命令apt:Ubuntu 包管理工具update:从软件源服务器下载最新的包列表执行效果:
/etc/apt/sources.list 和 /etc/apt/sources.list.d/ 目录下的所有源Release 和 Packages.gz 文件/var/lib/apt/lists/ 目录)典型输出:
Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease Get:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB] ... Fetched 1,234 kB in 3s (411 kB/s) Reading package lists... Done
sudo apt upgrade -y
参数解析:
-y:自动确认所有操作(避免手动输入 y)执行流程:
注意事项:
systemctl --failedsudo apt autoclean
作用:
/var/cache/apt/archives/ 目录下已安装包的 .deb 文件sudo do-release-upgrade
执行逻辑:
交互提示处理:
Y,自定义配置选 NNo,手动处理服务服务重启提示:
Some services need to be restarted for the upgrade to complete. Do you want to restart them now?
配置文件冲突:
Configuration file '/etc/ssh/sshd_config' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** sshd_config (Y/I/N/O/D/Z) [default=N] ?
sudo do-release-upgrade -d
风险提示:
sudo apt-get -f install
执行逻辑:
典型场景:
# 示例:修复 libstdc++6 依赖
apt-file search libstdc++.so.6.0.30 # 查找包名
sudo apt-get install libstdc++6:i386 # 安装 32 位兼容库
工具说明:
apt-file:需要提前安装:sudo apt install apt-filedpkg -S 替代:dpkg -S libstdc++.so.6.0.30# 1. 下载升级包
wget http://old-releases.ubuntu.com/ubuntu/pool/main/u/ubuntu-release-upgrader/ubuntu-release-upgrader-core_1:22.04.14_all.deb
# 2. 安装并启动升级
sudo dpkg -i ubuntu-release-upgrader-core_1:22.04.14_all.deb
sudo do-release-upgrade
适用场景:
# 1. 备份并清空第三方源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list # 注释所有非官方源
# 2. 执行升级
sudo do-release-upgrade
# 3. 恢复第三方源并更新
sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
sudo apt update
典型问题:
# 1. 检查网络连接
ping archive.ubuntu.com
# 2. 重新执行更新
sudo apt update && sudo apt upgrade -y
# 3. 清理残留文件
sudo rm -rf /var/lib/apt/lists/*
sudo apt update
# 1. 查看磁盘使用情况
df -h
# 2. 清理旧内核
sudo apt-get autoremove
# 3. 手动删除大文件
sudo du -sh /var/cache/apt/archives/*
sudo rm /var/cache/apt/archives/*.deb
# 1. 查看冲突文件
dpkg -l | grep ^rc
# 2. 重新配置包
sudo dpkg --configure -a
# 3. 强制覆盖配置
sudo dpkg --force-confnew -a
# 1. 安装自动更新工具
sudo apt install unattended-upgrades
# 2. 配置安全更新
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
# 3. 启用每日更新
sudo nano /etc/apt/apt.conf.d/20auto-upgrades
配置示例:
# 50unattended-upgrades
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
};
# 20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
# 1. 备份原始源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 2. 编辑源列表
sudo nano /etc/apt/sources.list
推荐国内源:
# 阿里云
deb http://mirrors.aliyun.com/ubuntu/ ${ubuntu_version} main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ ${ubuntu_version} main restricted universe multiverse
# 清华大学
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ ${ubuntu_version} main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ ${ubuntu_version} main restricted universe multiverse
| 版本类型 | 发布周期 | 标准支持 | 扩展支持(Ubuntu Pro) |
|---|---|---|---|
| LTS | 每 2 年 | 5 年 | 额外 5 年(共 10 年) |
| 临时版本 | 每 6 个月 | 9 个月 | 无 |
支持状态查询:
sudo ubuntu-advantage status
# 1. 禁用第三方源
sudo sed -i 's/^/#/' /etc/apt/sources.list.d/*.list
# 2. 执行升级
sudo do-release-upgrade --mode=server
# 3. 重新启用源并更新
sudo sed -i 's/^#//' /etc/apt/sources.list.d/*.list
sudo apt update
# 1. 安装图形化更新工具
sudo apt install update-manager
# 2. 启用开发版本提示
sudo gsettings set com.ubuntu.update-manager show-development-release true
# 3. 配置自动清理
sudo nano /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::AutocleanInterval "7";
通过以上步骤,您可以全面掌握 Ubuntu 系统软件包的更新操作,涵盖日常维护、版本升级、依赖处理、网络优化等多个维度。建议定期执行系统更新,保持系统安全稳定。若遇到复杂问题,可参考 Ubuntu 官方文档 或社区论坛。
对于使用桌面环境的 Ubuntu 用户,可以通过系统设置来更新系统。具体步骤如下:
还可以使用更新管理器来更新系统。具体步骤如下:
sudo update-manager -d
解释:
update-manager:用于管理系统更新的图形界面工具。-d:显示开发版本的更新信息,如果只需要显示稳定版本的更新信息,可以省略该参数。Ubuntu 系统默认使用官方软件源,但有时官方软件源的下载速度可能较慢。可以手动指定其他软件源来提高下载速度。具体步骤如下:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
解释:
cp:用于复制文件。/etc/apt/sources.list:原有的软件源列表文件。/etc/apt/sources.list.bak:备份文件的名称。sudo nano /etc/apt/sources.list
解释:
nano:一个简单的文本编辑器。/etc/apt/sources.list:软件源列表文件。deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
解释:
deb:表示二进制软件包的软件源地址。deb-src:表示源代码软件包的软件源地址。http://mirrors.aliyun.com/ubuntu/:阿里云软件源的地址。focal:Ubuntu 20.04 的代号,如果使用的是其他版本,需要将 focal 替换为相应的代号。Ctrl + X,然后输入 Y 确认保存,最后按下 Enter 键退出。sudo apt update
如果想体验最新的功能和特性,可以升级到 Ubuntu 的开发版本。但需要注意的是,开发版本可能存在稳定性问题,不建议在生产环境中使用。可以使用以下命令升级到开发版本:
sudo do-release-upgrade -d
解释:
-d:表示升级到开发版本。更新完成后,可以再次使用 lsb_release -a 命令检查系统版本,确认是否升级成功。
可以使用以下命令检查软件包的状态,确保所有软件包都已成功升级:
sudo apt list --upgradable
解释:
list:列出软件包信息。--upgradable:只列出可升级的软件包。更新完成后,需要检查系统服务是否正常运行。可以使用以下命令检查系统服务的状态:
systemctl --failed
解释:
systemctl:用于管理系统服务。--failed:只显示失败的服务。通过本文的介绍,你已经了解了 Ubuntu 系统更新的详细步骤和相关知识。在进行系统更新时,一定要做好备份工作,确保网络连接稳定,遇到问题时可以参考本文提供的解决方法。及时更新系统可以让你的 Ubuntu 系统更加安全、稳定和高效。希望本文对你有所帮助!

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online