ubuntu 升级补丁,备份备份备份

一、常规软件包更新(安全补丁和软件升级)

更新软件包列表

从软件源服务器获取最新的软件包信息:

bash 复制代码
sudo apt update

升级已安装的软件包

安装所有可用的更新(安全补丁、功能更新):

bash 复制代码
sudo apt upgrade

处理依赖关系(可选)

如果需要处理依赖关系的重大变更(如内核升级):

bash 复制代码
sudo apt dist-upgrade

清理无用软件包

删除因升级而残留的无用依赖:

bash 复制代码
sudo apt autoremove

自动更新(推荐配置)

启用自动安全更新:

bash 复制代码
# 安装 unattended-upgrades(若未安装)
sudo apt install unattended-upgrades
# 启用自动更新
sudo dpkg-reconfigure unattended-upgrades
配置文件路径:/etc/apt/apt.conf.d/50unattended-upgrades,可自定义自动更新策略。

二、发行版升级(如从Ubuntu 20.04 LTS升级到22.04 LTS)

准备工作

备份重要数据(使用工具如rsync、Timeshift或云存储)。

关闭所有非必要应用程序。

确保网络连接稳定。

升级当前系统

确保所有软件包已更新到最新版本:

bash 复制代码
sudo apt update && sudo apt upgrade -y

执行发行版升级

LTS到LTS升级(默认仅提供下一个LTS版本):

bash 复制代码
sudo do-release-upgrade

跨版本升级(如从非LTS升级或强制升级到开发版):

bash 复制代码
sudo do-release-upgrade -d

按提示操作

升级过程中会提示确认配置文件的更改(通常选择保留本地版本或查看差异)。

完成后重启系统:

bash 复制代码
sudo reboot

三、常见问题解决

依赖冲突或错误

修复损坏的依赖:

bash 复制代码
sudo apt -f install

清理并重试:

bash 复制代码
sudo apt clean
sudo apt update

升级后内核问题

重启后选择GRUB菜单中的旧内核启动。

清理旧内核:

bash 复制代码
sudo apt purge $(dpkg -l | awk '/linux-image-.*[0-9]/{print $2}' | grep -v $(uname -r))

软件源错误

检查/etc/apt/sources.list和/etc/apt/sources.list.d/中的源是否与新版本兼容。

四、推荐工具

Timeshift:创建系统快照,升级前备份。

apt-listchanges:查看升级中的变更日志:

bash 复制代码
sudo apt install apt-listchanges

五、注意事项

生产环境谨慎操作:建议先在测试环境中验证升级。

关注官方公告:访问Ubuntu安全通知(USN)获取关键补丁信息。

长期支持版本(LTS):推荐使用LTS版本以获得5年支持周期。

相关推荐
Johny_Zhao4 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒2 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing4 天前
WSL+Cpp开发环境配置
linux