说明:
首先,本文主要是对yum的安装,报错,排坑作为目标,以解决日常运维过程中出现的问题,希望对大家有所帮助。对yum命令的解释就不多说了,大家可以自行百度。
实验环境:
CentOS 7 x86_64
rpm包下载网址:
http://mirror.centos.org/centos/7/os/x86_64/Packages/
步骤如下:
1、下载rpm包,如果以下命令有运行不了的,可能是网址上的安装包有了更新变化,可以登录到那个网址查看下,把命令中的rpm包更改下就可以了,因为错了一个字母或数字就会下载不了,最好仔细核对。
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/yum-3.4.3-168.el7.centos.noarch.rpmwget http://mirror.centos.org/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpmwget http://mirror.centos.org/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpmwget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
2、安装yum,这个过程有个坑,正常安装的话是有依赖关系的。比如安装A,需要依赖安装包C;这个很正常,可此时安装C又提示你需要安装包A,这就很想让人骂街了。当然解决办法也有,那就是同时安装。
rpm -ivh yum- #同时安装yum包rpm -ivh python-iniparse-0.4-9.el7.noarch.rpm #安装python包
如果想单独安装的话也可以,在安装yum-3.4.3-168.el7和yum-plugin-fastestmirror这两个包的时候会报错,此时用下面命令就可解决
rpm -ivh yum-3.4.3-168.el7.centos.noarch.rpm --force --nodeps yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm
3、安装完成后,清理下环境就可以运行yum命令了
yum clean all #清理环境
4、如果有报错提示No module named sqlitecachec,可以重构数据
5、删除重构
cd /var/lib/rpm/rm -i __db.*rpm --rebuilddb
6、重构完需要再次安装yum-metadata-parser
7、此时问题解决,运行yum无异常。如果想卸载yum,命令如下
rpm -qa | grep yum | xargs rpm -e --nodeps