参考:
https://tlanyan.me/upgrade-ce...
https://blog.51cto.com/moerji...
https://blog.csdn.net/hjnth/a...html
非必要状况,请使用从新安装系统的方式升级,缘由以下:python
cat>/etc/yum.repos.d/upgradetool.repo<<EOF [upg] name=CentOS-$releasever - Upgrade Tool baseurl=https://buildlogs.centos.org/centos/6/upg/x86_64/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 EOF
cat <<EOF >/etc/yum.repos.d/upgrade.repo [upgrade] name=upgrade baseurl=https://buildlogs.centos.org/centos/6/upg/x86_64/ enable=1 gpgcheck=0 EOF
为防止报错
preupg: error: [Errno 2] No such file or directory: '/root/preupgrade/result.html'
,从新装旧版本的openscp
yum erase openscap -y &&\ yum install -y http://buildlogs.centos.org/centos/6/upg/x86_64/Packages/openscap-1.0.8-1.0.1.el6.centos.x86_64.rpm &&\ sudo yum install -y preupgrade-assistant-contents redhat-upgrade-tool preupgrade-assistant
preupg -l
preupg -s CentOS6_7
没有提示出错,能够继续下一步。不然请检查!!!要所有PASS才能够。上面这个命令生成的报告须要看看,主要是关于升级的风险的
我的经验就是升级前尽可能将非官方的rpm安装的软件都删掉
安装的第三方的rpm包越少,升级的风险越小shell
rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7
rpm --import http://vault.centos.org/centos/7.2.1511/os/x86_64/RPM-GPG-KEY-CentOS-7
rpm --import https://mirrors.aliyun.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7
redhat-upgrade-tool-cli --force --network 7 --instrepo=http://mirror.centos.org/centos/7/os/x86_64
redhat-upgrade-tool-cli --force --network 7 --instrepo=http://vault.centos.org/centos/7.2.1511/os/x86_64/
redhat-upgrade-tool --force --network 7.0 --instrepo=http://mirrors.aliyun.com/centos/7/os/x86_64/
centos-upgrade-tool-cli --force --network 7 --instrepo=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.2.1511/os/x86_64/
若是遇到报错
Error: database disk image is malformed
,清除缓存,再次重试
yum clean dbcache
reboot
机器起来后,登上服务器,须要作一些擦屁股的工做,好比,看还有没有CentOS6的软件残余,用命令:
rpm -qa | grep -i el6;
有的话要么想办法删掉,要么想办法将其升级到el7的相应的软件包。
vi /root/start.sh
输入如下内容:
#!/bin/bash ln -s /usr/lib64/libsasl2.so.3.0.0 /usr/lib64/libsasl2.so.2 ln -s /usr/lib64/libpcre.so.1.2.0 /usr/lib64/libpcre.so.0 service sshd restart rm -rf /etc/rc.d/rc.local mv /etc/rc.d/rc.local.bak /etc/rc.d/rc.local #恢复原始文件 rm -rf /root/start.sh #删除自身
执行如下命令
chmod +x start.sh &&\ chmod +x /etc/rc.d/rc.local &&\ # 建立备份 cp /etc/rc.d/rc.local /etc/rc.d/rc.local.bak &&\ # 添加脚本为开机自启动 echo 'bash /root/start.sh' >>/etc/rc.d/rc.local
重启后看下ssh是否能够正常链接
reboot
yum upgrade -y &&\ yum downgrade grep &&\ yum upgrade python &&\ yum update