CentOS Linux release 7.6.1810
uname -r
3.10.0-957.el7.x86_64
怎么搞yum都不好使,就把/etc/yum.repos.d下和/var/cache/yum/x86_64下面的文件全删了,还是重安吧
1.yum卸载
# rpm -qa yum
yum-3.4.3-150.el7.centos.noarch
# rpm -qa | grep yum | xargs rpm -e --nodeps
# rpm -qa yum
2.下载rpm包
centos 官方下载网站是 http://mirror.centos.org/centos/
。
去这里找包http://mirrors.ustc.edu.cn/centos/7.6.1810/os/x86_64/Packages/,没有合适的就去拿自己的网上搜一下下载地址。
下载如下包:
# python 部分
python-backports-1.0-8.el7.x86_64.rpm
python-pycurl-7.19.0-19.el7.x86_64.rpm
python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm
python-ipaddress-1.0.16-2.el7.noarch.rpm
python-setuptools-0.9.8-7.el7.noarch.rpm
python-urlgrabber-3.10-9.el7.noarch.rpm
python-2.7.5-76.el7.x86_64.rpm
python-iniparse-0.4-9.el7.noarch.rpm
python-libs-2.7.5-76.el7.x86_64.rpm
python-devel-2.7.5-76.el7.x86_64.rpm
rpm-4.11.3-35.el7.x86_64.rpm
rpm-python-4.11.3-35.el7.x86_64.rpm
# yum 部分
yum-3.4.3-161.el7.centos.noarch.rpm
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm
3.安装rpm包
先装python
运行 rpm 命令。这里一定要加 --replacefiles --replacepkgs
参数, 因为需要覆盖一些老文件老包,不加的话会提示文件冲突或者包已经安装过了。
sudo rpm --replacefiles --replacepkgs -ivh python-backports-1.0-8.el7.x86_64.rpm python-pycurl-7.19.0-19.el7.x86_64.rpm python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm python-ipaddress-1.0.16-2.el7.noarch.rpm python-setuptools-0.9.8-7.el7.noarch.rpm python-urlgrabber-3.10-9.el7.noarch.rpm python-2.7.5-76.el7.x86_64.rpm python-iniparse-0.4-9.el7.noarch.rpm python-libs-2.7.5-76.el7.x86_64.rpm python-devel-2.7.5-76.el7.x86_64.rpm rpm-4.11.3-35.el7.x86_64.rpm python-2.7.5-76.el7.x86_64.rpm rpm-4.11.3-35.el7.x86_64.rpm rpm-python-4.11.3-35.el7.x86_64.rpm
输出
再安装 yum,同样也要加 --replacefiles --replacepkgs
。
sudo rpm --replacefiles --replacepkgs -ivh yum-3.4.3-161.el7.centos.noarch.rpm rpm-python-4.11.3-35.el7.x86_64.rpm yum-metadata-parser-1.1.4-10.el7.x86_64.rpm yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm rpm-4.11.3-35.el7.x86_64.rpm
这里一定要注意,必须出现进度条 100% 的 输出,才是安装成功了。
不同版本的系统,需要的包可能不太一样,当运行安装命令时,可能会提示有一些依赖包缺失。
这种情况下,可以根据提示下载响应的依赖包,添加到 rpm -ivh
的列表中。
4.安装完成
尝试运行下 yum。
yum --version
使用的时候 yum repolist all 显示repos为0,可能是把/etc/yum.repos.d下和/var/cache/yum/x86_64下面的文件全删了的原因,现在再次添加吧。
#wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
#mv CentOS7-Base-163.repo CentOS7-Base.repo