我虚拟机安装的系统是RedHat Enterprise Linux 6.4-i686,是32位的。使用yum命令安装软件时候出现以下错误:
This system is not registered to Red Hat Subscription Management.You can use subscription-manager to register.
主要原因就是redhat的yum源是需要注册付费的,所以我打算卸掉红帽原有的yum源。
步骤一:
首先我们检查一下当前已经安装的yum包
rpm -qa|grep yum (rpm -qa 列出所有被安装的 rpm package,而grep yum筛选出匹配到yum的部分,也就是我们当前已经安装的yum包)
接着使用命令,不检查依赖关系直接删除这些yum包
rpm -qa|grep yum|xargs rpm -e --nodeps (xargs作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题。rpm -e 是卸载 rpm package --nodeps是忽视依赖关系)
然后我们再用rpm -qa|grep yum检查一下是否全部清除完毕
步骤二:
接下来,我们要下载新的centos的yum包,并且安装它们。
下载前的首要任务是明确我们当前系统的版本号和位数:
输入命令 cat /etc/issue && arch,如果是i386或者i686就是32位的,如果是x86_64就是64位的。
很显然我的是32位,接下来看看我们的系统版本号,输入命令uname -a看看系统版本= =然后到http://mirrors.kernel.org/centos/ 或者 http://mirrors.163.com/centos/ 找对应系统版本号和系统位数下载,找到yum、yum-plugin-fastestmirror、yum-metadata-parser、python-urlgrabber这四个软件包下载。如果跟我系统一样是RedHat Enterprise Linux 6.4-i686,那么可以直接从我提供的百度云链接里下载。
====================================================================================
链接:/s/17mvacn3VlQAjKZm89Kjzbw
提取码:见评论区
====================================================================================
最后用命令安装它们就OK了:
rpm -ivh yum-metadata-parser-1.1.2.16.el6.i686.rpm
rpm -ivh yum-3.2.29-81.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm python-urlgrabber-3.9.1-11.el6.noarch.rpm (把相互依赖的包一起安装)
步骤三:
接下来要做的就是更换yum源,打开http://mirrors.163.com/.help/centos.html,在里面下载对应版本的repo文件,我下载的是CentOS6-Base-163.repo文件,然后把它放到/etc/yum.repos.d/下。接着我们还需要把里面的$releasever为版本号6,进入vim编辑器后在末行模式下输入:%s/$releasever/6/g 完成15处替换。
步骤四:
接着在命令行上输入yun发现yum不好使了,出现
-bash: yum: command not found
的错误,由于我们切换了本地yum源,所以出现了这个错误,于是这一步我们要修复它。
首先先输入wget http://yum.baseurl.org/download/3.2/yum-3.2.28.tar.gz,下载完后解压tar xvf yum-3.2.28.tar.gz,接着进入目录cd yum-3.2.28,输入以下命令
touch /etc/yum.conf
./yummain.py install yum
步骤五:
整完上面的之后我们在命令行里输入yum就有反应了,而后我们输入命令 yum clean all 清除原来的缓存,接着输入命令yum makecache 重建缓存。
步骤六:
完成了这些我们可以再试试安装软件包了,这里我安装了php,
yum -y install php
发现已经没有问题了。
原文地址:https://www.cnblogs.com/figsprite/p/10220228.html