Linux -Centos6升级到CentOS7
前言
升级前,最好把centos6的版本升级到最新版本,然后再进行跨版本升级。
步骤
1、添加UPG的yum源
vim /etc/yum.repos.d/upg.repo
[upg] name=CentOS-$releasever - Upgrade Tool baseurl=http://dev.centos.org/centos/6/upg/x86_64/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
2、安装升级工具
升级的工具包需要指定版本的openscap
yum erase openscap -y yum install -y http://dev.centos.org/centos/6/upg/x86_64/Packages/openscap-1.0.8-1.0.1.el6.centos.x86_64.rpm yum install -y redhat-upgrade-tool preupgrade-assistant-contents
3、导入centos7的key
rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7
4、预升级检查
preupg -s CentOS6_7
5、通过工具命令行升级
通过网络升级到7.2.1511,多台升级建议下载到本地网络,做一个本地的yum源
centos-upgrade-tool-cli --network 7 --instrepo=http://vault.centos.org/centos/7.2.1511/os/x86_64/
(发现部分包出现404导致升级失败,因此建议还是使用iso镜像进行升级,可以保证包的存在)
或者通过iso镜像升级
centos-upgrade-tool-cli --iso=/root/CentOS-7-x86_64-DVD-1511.iso --force
6、升级后的问题
sshd服务和yum、grep、rpm等常用服务或命令会出现异常,由于依赖包异常导致,可以手动做下软链接恢复使用一下,如果是远程升级,可以将下面的内容写到/etc/rc.d/rc.local里面,保证你升级完以后,ssh还可以登录:
ln -s /usr/lib64/libpcre.so.1.2.0 /usr/lib64/libpcre.so.0 ln -s /usr/lib64/libsasl2.so.3.0.0 /usr/lib64/libsasl2.so.2 service sshd restart
7、升级到最新版本
yum -y update
会发现有些包会有冲突,因此需要手动强制安装centos7的包,然后再卸载el6的包即可,记得先安装后卸载。
mount -o loop /root/CentOS-7-x86_64-DVD-1511.iso /mnt cd /mnt/Packages rpm -ivh nss-tools-3.19.1-18.el7.x86_64.rpm nss-util-3.19.1-4.el7_1.x86_64.rpm nss-3.19.1-18.el7.x86_64.rpm nss-sysinit-3.19.1-18.el7.x86_64.rpm nss-pam-ldapd-0.8.13-8.el7.x86_64.rpm nscd-2.17-105.el7.x86_64.rpm grep-2.20-2.el7.x86_64.rpm --force rpm -e nss-3.36.0-8.el6.x86_64 nss-sysinit-3.36.0-8.el6.x86_64 nss-tools-3.36.0-8.el6.x86_64 nss-util-3.36.0-1.el6.x86_64 grep-2.20-6.el6.x86_64
也有一下包直接可以不用的
rpm -e mingetty-1.08-5.el6.x86_64 b43-openfwwf-5.2-10.el6.noarch MAKEDEV-3.24-6.el6.x86_64 vim-common-7.4.629-5.el6_8.1.x86_64 dash-0.5.5.1-4.el6.x86_64 libnih-1.0.1-8.el6.x86_64 vim-filesystem-7.4.629-5.el6_8.1.x86_64
总结
目前发现最新只能升级到7.2.1511,因为centos/7.2.1511/os/x86_64/.treeinfo里面有upgrade选项(upgrade = images/pxeboot/upgrade.img),更新版本里面就没有了。
如果之前的系统安装的包比较多,update过程会提示各种冲突,不着急,直接使用iso里面的包rpm安装一下,如果找不到对应包的可以卸载掉不用了。
注:
CentOS 7.2.1511 归档iso地址:http://archive.kernel.org/centos-vault/7.2.1511/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso