使用可用源从CentOS6升级到CentOS7
参考:
https://tlanyan.me/upgrade-ce...
https://blog.51cto.com/moerji...
https://blog.csdn.net/hjnth/a...
说明
非必要情况,请使用重新安装系统的方式升级,原因如下:
- 并非所有的系统都能顺利从6升级到7,安装的软件越少,升级成功的可能性越大;
- 只支持6.5及以上系统升级到不高于7.2系统;
- 升级的耗时完全不比重新安装少,绝大多数情况下会耗费更长的时间和更多精力;
- 升级完成后处理各种依赖是一个非常头大的问题。
升级
配置升级工具upgradetool源
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包越少,升级的风险越小
导入CentOS7的key
多个源镜像
官方源:
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的相应的软件包。
升级完成后遇到的问题
ssh、yum不可用问题:
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
ps工具不可用问题:
yum upgrade -y &&\
yum downgrade grep &&\
yum upgrade python &&\
yum update
11 声望
0 粉丝
推荐阅读
Linux挂载存储卷
2、 卷组——–VG(Volumne Group)卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
bajins_com阅读 1.9k
Ubuntu 20.04 读写 Windows 10 共享目录(qbit)
本文实验环境中,Windows 操作系统版本为 Windows Server 2016,应该对 Windows 10 和 Windows Server 2019 同样适用
qbit赞 1阅读 6.2k
Linux 不同的发行版设置静态 IP
该文件通常位于 /etc/sysconfig/network-scripts/ 目录下,文件名格式为 ifcfg-<接口名称>。例如,如果接口名称为 ens33,需要编辑 /etc/sysconfig/network-scripts/ifcfg-ens33 文件。使用以下命令打开文件:
青阳半雪阅读 1.9k评论 3
无外网情况下的centos软件安装
有些时候在一些内网环境部署机器的时候,要用一个跳板机,再通过跳板机ssh到目标机器,最后发现目标机器是不能访问外网的,目标机器居然还不能反向ping跳板机或者ssh到跳板机,通过iptables -nvL和ip route以及ar...
龚正阳赞 1阅读 727
CentOS安装Redis
如果要安装最新的redis,需要安装Remi的软件源,官网地址:[链接]yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm然后可以使用下面的命令安装最新版本的redis:yum --enablerepo=re...
YYGP阅读 1.4k
配置VMware中联网的两种方式:Net模式&桥接模式
实践环境:VMware12Pro、CentOS7Net模式和桥接模式联网的区别:桥接模式:选择桥接模式的话虚拟机和宿主机在网络上就是平级的关系,相当于连接在同一交换机上。NAT模式:NAT模式就是虚拟机要联网得先通过宿主机才...
GoodLifeBro阅读 1.3k
yum安装MySQL
yum仓库 {代码...} 或者 {代码...} yum安装MySQL {代码...} 安装过程可能报错,附上解决方案:错误1 {代码...} 需执行yum module disable mysql然后重新install错误2 {代码...} 原因: MySQL GPG 密钥已过期导致...
YYGP阅读 1.1k
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。