「CentOS」- 将「CentOS 6.5」升级为「CentOS 7」版本

更新日期:2019年08月15日

内容简介

以前升级系统的时候,只能通过重新安装。但是经过社区不断的努力,现在可以通过命令行直接升级当前系统。

注意事项

目前CentOS尚未发布任何有关升级CentOS 6的官方文件,因此不建议在生产环境中进行此升级。如果你想尝试开发,可以按照如下简单的步骤操作。

这是从别的博文中收到的警告:不要使用此方法升级「CentOS 6.7」或更高版本的系统。因为在「CentOS 6.7」中的多个系统关键软件包的版本号,比它们在「CentOS 7」中的版本号更高,因此这些软件包无法正确升级。这会导致系统损坏,并且几个系统工具无法正常工作。你将无法登录或使用网络。此外「CentOS 6.6」现在升级也会失败,升级时出现错误“Downloading failed: invalid data in .treeinfo: No section: 'checksums'”,只能在「CentOS 6.5」上完成。

升级过程


#1 更新系统

将系统中的包更新到最新的版本:

#!/bin/sh

yum update -y 

#2 升级助手

升级助手不用于升级,它是升级检查工具。用于检查在升级过程中潜在的问题。

安装并执行升级助手:

#!/bin/sh

# 配置源
cat <<UA >> /etc/yum.repos.d/upgrade.repo
[upgrade]
name=upgrade
baseurl=https://buildlogs.centos.org/centos/6/upg/old/x86_64/
enabled=1
gpgcheck=0
UA

# 对openscap进行降级
# 因为一个错误:https://centos.org/forums/viewtopic.php?t=59763
yum erase openscap
yum -y install https://buildlogs.centos.org/centos/6/upg/x86_64/Packages/openscap-1.0.8-1.0.1.el6.centos.x86_64.rpm

# 安装升级助手
yum -y install redhat-upgrade-tool preupgrade-assistant-*

# 执行检查
preupg --text

从升级助手中可以找到所有将受此升级影响的包和应用程序。如果你觉得没有关系,那么可以继续下一步。

#3 执行升级

执行升级:

#!/bin/sh

# 如果链接无效,则访问http://centos.excellmedia.net/找到对应的文件,修改链接即可
# rpm --import http://centos.excellmedia.net/7.6.1810/os/x86_64/RPM-GPG-KEY-CentOS-7
# redhat-upgrade-tool --network 7.6 --force --instrepo http://centos.excellmedia.net/7.6.1810/os/x86_64/
rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7
centos-upgrade-tool-cli --network 7 --instrepo=http://mirror.centos.org/centos/7/os/x86_64

# 上述命令执行结束后,需要在重启后进行安装
reboot

#4 验证版本

最后一步是验证系统的版本:

#!/bin/sh

cat /etc/redhat-release

常见错误汇总


#1 Downloading failed: invalid data in .treeinfo: No section: 'checksums'

参见本文开始时的注意事项。

#2 YumRepo Error: All mirror URLs are not using ftp, http[s] or file.

-「YumRepo Error: All mirror URLs are not using ftp, http[s] or file
注释掉中的mirrorlist选项,并启用baseurl选项。

参考文献



Backlinks: 00.INDEX

ToC

内容简介

注意事项

升级过程

#1 更新系统

#2 升级助手

#3 执行升级

#4 验证版本

常见错误汇总

#1 Downloading failed: invalid data in .treeinfo: No section: 'checksums'

#2 YumRepo Error: All mirror URLs are not using ftp, http[s] or file.

参考文献