在Linux系统中,定期更新是确保安全、稳定性和功能完整性的关键操作,不同发行版使用不同的包管理工具,以下是主流发行版的详细更新指南,操作前请务必备份重要数据。
更新前必备准备
- 备份数据
- 关键配置文件:
/etc
、/home
、网站/数据库 - 使用工具:
rsync
或tar
(示例:tar -czvf backup.tar.gz /path/to/data
)
- 关键配置文件:
- 检查磁盘空间
- 命令:
df -h
(确保分区有至少2GB空闲)
- 命令:
- 查看当前系统信息
- 发行版:
lsb_release -a
或cat /etc/os-release
- 内核版本:
uname -r
- 发行版:
各发行版更新命令详解
Debian/Ubuntu 及其衍生版(如 Mint)
# 仅安装安全更新(推荐生产环境) sudo apt upgrade --only-upgrade # 完整升级(可能涉及内核和依赖变更) sudo apt full-upgrade # 可选:清理旧内核和缓存 sudo apt autoremove sudo apt clean
Red Hat/CentOS/RHEL 系
# CentOS 7/8 或 RHEL sudo yum check-update # 检查可用更新 sudo yum update # 安装所有更新 # CentOS Stream 8+/RHEL 8+/Fedora sudo dnf check-update sudo dnf upgrade # 仅安装安全补丁(企业级关键操作) sudo yum update --security # CentOS 7 sudo dnf upgrade --security # CentOS 8+/Fedora
Arch Linux 及衍生版(如 Manjaro)
# 同步仓库并更新所有包(Arch 采用滚动更新) sudo pacman -Syu # 注意:若内核更新需重启 sudo reboot # 清理旧版本缓存 sudo pacman -Sc
openSUSE
# 刷新仓库并更新 sudo zypper refresh sudo zypper update # 常规更新 sudo zypper dup # 跨版本升级(谨慎使用) # 仅安全更新 sudo zypper patch --category security
更新后关键操作
- 重启生效
- 内核更新后必须重启:
sudo reboot
- 内核更新后必须重启:
- 验证更新状态
- 检查已安装的安全补丁:
Ubuntu:grep security /var/log/apt/history.log
CentOS:yum history info | grep -i security
- 检查已安装的安全补丁:
- 解决依赖问题
- Debian/Ubuntu:
sudo apt --fix-broken install
- RHEL/CentOS:
sudo yum-complete-transaction
- Debian/Ubuntu:
高级场景处理
-
仅更新安全补丁(生产服务器推荐)
Ubuntu:sudo unattended-upgrade --dry-run -d
(测试后移除--dry-run
执行)
CentOS: 配置yum-cron
自动安装安全更新 -
回滚错误更新
- Debian/Ubuntu:
apt list --installed | grep package_name # 查找版本号 sudo apt install package_name=old_version
- Arch Linux:使用
/var/cache/pacman/pkg/
中的旧包降级
- Debian/Ubuntu:
-
避免中断更新
使用screen
或tmux
会话:sudo apt install screen screen -S update sudo apt update && sudo apt upgrade
更新失败处理方案
- 常见错误
Could not get lock /var/lib/dpkg/lock
→ 结束其他 apt 进程:sudo killall apt apt-get
404 Repository not found
→ 检查/etc/apt/sources.list
中的源地址
- 依赖冲突解决
- Ubuntu:
sudo apt -f install
- Arch:
sudo pacman -Syu --overwrite '路径/冲突文件'
- Ubuntu:
- 系统损坏恢复
- 使用 Live USB 挂载磁盘,从备份还原
/etc
和/usr
- 使用 Live USB 挂载磁盘,从备份还原
最佳实践建议
- 生产服务器:
- 使用稳定版仓库(非 testing/unstable)
- 更新前在测试环境验证
- 配置自动化安全更新(Ubuntu:
unattended-upgrades
;CentOS:yum-cron
)
- 桌面用户:
- 启用图形更新工具(如 Ubuntu 的 “Software Updater”)
- 避免强制断电中断更新进程
- 通用原则:
- 每周检查更新(安全补丁发布周期通常为 7-14 天)
- 订阅发行版安全公告(如 Ubuntu Security Notices)
重要提醒:
- 重大版本升级(如 Ubuntu 20.04 → 22.04)需使用专用工具(
do-release-upgrade
)- 企业环境建议通过 Ansible 或 SaltStack 批量管理更新
引用说明:
操作命令参考各发行版官方文档:
- Ubuntu 更新指南
- Red Hat 补丁管理
- Arch Linux 系统维护
- openSUSE 更新文档
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5953.html