23.12. 升级现有系统
重要
以下部分只适用于在次要版本间升级 Red Hat Enterprise Linux,例如:将 Red Hat Enterprise Linux 6.4 升级到 Red Hat Enterprise Linux 6.5 或更高的版本。在主要版本间升级时不支持这个方法,例如:将 Red Hat Enterprise Linux 6 升级到 Red Hat Enterprise Linux 7。
使用 Red Hat Upgrade Tool 和 Preupgrade Assistant 工具可进行 Red Hat Enterprise Linux 主要版本的本地升级,但有一些限制。详情请查看 第 37 章 升级当前系统。
安装系统自动探测 Red Hat Enterprise Linux 的现有安装。升级将现有系统软件更新到新的版本,但并不从用户的主目录中删除任何数据。硬盘中现有分区结构不会改变。只有在软件包升级需要时才会更改系统配置。大多数软件包升级不会更改系统配置,而是安装额外配置文件以备之后检测。
请注意:使用的安装介质可能不包含升级计算机所需的所有软件包。
注意
在现有 Red Hat Enterprise Linux 系统中手动安装的软件可能会在升级后行为有所改变。需要在升级后手动重新安装,或者重新编译这个软件以便确定在更新的系统中可正确执行这些软件。
23.12.1. 使用安装程序升级
注意
通常 Red Hat 建议保留独立
/home
分区中的用户数据并执行全新安装。有关分区详情以及如何设置分区请参考 第 9.13 节 “磁盘分区设置”。
如果选择使用安装程序升级系统,那么所有不是由 Red Hat Enterprise Linux 提供,且与 Red Hat Enterprise Linux 软件冲突的软件都将被覆盖。开始使用这个方法升级前,请列出系统中现有软件包已备之后参考:
rpm -qa --qf '%{NAME} %{VERSION}-%{RELEASE} %{ARCH}\n' > ~/old-pkglist.txt
安装后,根据这个列表选择哪些软件包是应该重新构建或者从 Red Hat 以外的源搜索的。
下一步,备份所有系统配置数据:
su -c 'tar czf /tmp/etc-`date +%F`.tar.gz /etc'
su -c 'mv /tmp/etc-*.tar.gz /home'
执行升级前请完整备份所有重要数据。重要数据应包含整个
/home
目录中的内容,以及某些服务的内容,比如 Apache、FTP、 SQL 服务器或者源代码管理系统。虽然升级不是破坏性的,但不正确的操作也可能造成数据丢失。
警告
注:上面的示例在
/home
目录中保存备份资料。如果您的 /home
目录不是独立分区,就不应该完全按照这些示例操作!请将备份保存到其他设备中,比如 CD 或者 DVD 盘或者外接硬盘中。
有关以后完成升级过程的详情请参考 第 35.2 节 “完成升级”。