centos 6 2020年 6月停止支持,所以最近尝试做一下升级。
注意:本文升级参考了网络上的文章,升级并不完美
1.参考1:从centos6升级到centos7步骤,https://www.cnblogs.com/osroot/p/5689362.html
2.参考2:CentOS6离线升级CentOS7,https://blog.csdn.net/github_38358734/article/details/73610698
3.参考3:CentOS 6.5升级至CentOS 7 centos6.x如何更新,https://jingyan.baidu.com/article/d169e186084e8a436611d8bd.html
4.参考4:centos官方升级工具页(已无法使用),https://wiki.centos.org/TipsAndTricks/CentOSUpgradeTool
步骤如下
1.备份
有快照的可以做个快照,没快照的dd命令或者再生龙
2.编辑升级的upgrade.repo文件
touch /etc/yum.repos.d/upgrade.repo
nano /etc/yum.repos.d/upgrade.repo
文件内容如下
[upgrade]
name=upgrade
baseurl=http://buildlogs.centos.org/centos/6/upg/x86_64/
enabled=1
gpgcheck=0
注意:这里的baseurl不能用网上的哪个dev网址了,因为这个跟那个升级工具一起过时了
3.安装升级依赖包
yum install preupgrade-assistant-contents redhat-upgrade-tool preupgrade-assistant
4.升级校验
校验升级会升级哪些包,安装东西多的话会比较长,做好半小时的准备。
preupg
5.导入centos7.2的key
rpm --import http://vault.centos.org/centos/7.2.1511/os/x86_64/RPM-GPG-KEY-CentOS-7
注意,这里只能导入7.2的,7.2之后的版本没有升级包的东西了
6.升级
升级这里有几种方式
网络方式
centos-upgrade-tool-cli --network 7 --instrepo=http://vault.centos.org/centos/7.2.1511/os/x86_64/
网上有建议换成阿里云镜像的,我试了基本行不通
iso方式
centos-upgrade-tool-cli --iso=/path/CentOS-7-x86_64-DVD-1511.iso
因为现在7.2也没有更新源,建议这里的iso下载everything的
光盘模式 建议先挂载,也可以不挂载
mount /dev/cdrom /mnt
/usr/bin/redhat-upgrade-tool-cli --device=/mnt/
因为我是虚拟机,这里用的光盘模式,
7.处理升级后遗症
升级完之后sshd会挂掉,这里可以上系统日志看一下哪里报错,怎么看就不多说了
简单的查找命令
grep /var/log/messages |sshd
一般会发现两个库有问题,libpcre.so和libsasl2.so.2
这里简单说下解决方案,先用find命令查找,查到后建立link
libpcre.so解决 报错提示没有/lib64/libpcre.so.0
find / -name libpcre.so*
find的列表里有/usr/lib64/libpcre.so.1
link指向
link /usr/lib64/libpcre.so.1 /lib64/libpcre.so.0
libsasl2.so解决 报错提示 libsasl2.so.2
find / -name libsasl2.*
find列表里有usr/lib64/libsasl2.so.3
link指向
link /usr/lib64/libsasl2.so.3 /lib64/libsasl2.so.2
如果原来系统有大量的程序,这么查下去一个一个修复link会耗费大量精力,建议还是重新安装系统,看哪些程序需要,再重新安装一遍程序比较合理。
还有升级之后iptable的策略还是会带上的,这个不用怎么担心。