从 Rocky Linux 9.6 升级到 10.0 需要注意以下关键兼容性问题:
1. 系统架构变化
- Python 默认版本:9.x 默认 Python 3.9,10.x 默认 Python 3.12
- GCC 工具链:升级到 GCC 14.x(9.x 为 GCC 11.x)
- glibc 版本:升级到 glibc 2.38+
2. 软件包兼容性
- 已移除的软件包:检查
dnf repoquery --unsatisfied和dnf repoquery --unneeded - 替代软件包:部分软件包可能被新包替代(如
iptables被nftables取代) - 第三方仓库:确保 EPEL、ELRepo 等支持 Rocky Linux 10
3. 服务配置迁移
- 防火墙:如果使用 iptables,需迁移到 nftables
- SELinux:策略可能需要重新编译
- 系统服务:检查自定义 systemd 单元文件的兼容性
4. 应用层兼容性
- PHP:默认版本从 8.0/8.1 升级到 8.2+
- 数据库:MariaDB 10.11 → 11.4,PostgreSQL 13 → 16
- Web 服务器:Apache 2.4.37 → 2.4.59,nginx 1.20 → 1.24
5. 升级前必须步骤
# 1. 完整备份系统和数据
# 2. 更新当前系统
sudo dnf update -y
# 3. 安装升级工具
sudo dnf install -y leapp-upgrade
# 4. 运行预检查
sudo leapp preupgrade
# 5. 查看评估报告
cat /var/log/leapp/leapp-report.txt
6. 已知问题
- 内核模块:第三方内核模块需要重新编译
- 32位支持:部分 32 位库可能不再提供
- 老旧硬件:检查驱动支持情况
7. 推荐升级路径
- 先在测试环境验证
- 使用
leapp工具进行原地升级 - 或考虑全新安装后迁移数据
- 准备回滚方案(备份至关重要)
8. 升级后验证
- 检查服务状态:
systemctl list-units --failed - 验证网络功能
- 测试关键应用程序
- 监控系统日志:
journalctl -f
建议详细阅读 Rocky Linux 10.0 的 官方发布说明 和 升级指南,并在生产环境升级前进行全面测试。
CLOUD技术笔记