在ECS云服务器上安全升级Ubuntu系统版本,建议按以下步骤操作:
一、升级前准备
-
备份数据
- 创建系统盘快照(云平台控制台操作)。
- 备份关键数据(如数据库、配置文件、网站文件)到远程存储或本地。
-
检查当前系统
lsb_release -a # 查看当前版本 df -h # 检查磁盘空间(至少保留2GB空闲) free -h # 确认内存充足 -
更新现有系统
sudo apt update && sudo apt upgrade -y sudo apt dist-upgrade -y sudo apt autoremove
二、执行版本升级
方法1:使用 do-release-upgrade(推荐)
# 1. 安装升级工具
sudo apt install update-manager-core
# 2. 修改升级策略(可选)
# 编辑 /etc/update-manager/release-upgrades,设置 Prompt=lts(仅升级LTS版本)
sudo nano /etc/update-manager/release-upgrades
# 3. 执行升级
sudo do-release-upgrade -d # 升级到开发版(非LTS)
# 或
sudo do-release-upgrade # 升级到最新稳定版
方法2:手动修改源列表升级
# 1. 备份源列表
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 2. 替换源中的版本代号(如将 focal 改为 jammy)
sudo sed -i 's/focal/jammy/g' /etc/apt/sources.list
# 3. 更新并升级
sudo apt update && sudo apt dist-upgrade -y
三、升级后操作
-
重启系统
sudo reboot -
验证升级结果
lsb_release -a uname -a -
检查服务状态
systemctl list-units --state=failed sudo journalctl -xe # 查看错误日志 -
清理旧软件包
sudo apt autoremove --purge
四、风险控制与回滚
-
测试关键服务
- 验证Web服务、数据库、网络等是否正常。
- 运行应用自带的测试脚本(如有)。
-
回滚方案
- 如果升级失败,使用云平台快照回滚系统盘。
- 保留旧内核:升级时选择保留原有配置文件(出现提示时选“N”)。
五、注意事项
- 避免跨版本升级:建议逐版本升级(如 18.04 → 20.04 → 22.04)。
- 选择维护窗口:在业务低峰期操作,避免影响服务。
- 使用屏幕会话:防止SSH断开导致升级中断:
sudo apt install screen screen -S upgrade # 在screen会话中执行升级 - 检查兼容性:确认应用支持新版本(如PHP、Python运行时)。
六、ECS特殊优化
- 云监控:升级前启用云监控,实时观察资源使用情况。
- 安全组策略:临时开放必要端口(如SSH),升级后恢复。
- 负载均衡:如有负载均衡,先将服务器移出后端组,升级完成后再加入。
通过以上步骤,可最大限度降低升级风险。如为生产环境,建议先在测试环境演练。
CLOUD技术笔记