CentOS 8 下输入yum,提示说找不到该命令(yum: command not found),输入dnf也同样提示说找不到该命令。CentOS 8 系统刚安装好之前是可以正常使用的,在卸载Python3之后,才出现该问题。不知何种原因,yum和dnf被不小心卸载了。找了很多重装yum的文章,按照步骤,捣鼓了很久都没搞定,作为Linux新手的我,折腾了很久,最终解决了这个问题。在此记录下。
目前的大多数经验贴都是在CentOS 7下面安装yum,其实安装yum的原理是一样的,只是需要的安装包会不同,作为新手的我,找了很久才找到适合CentOS 8的yum安装包和对应的依赖包。而且我试了很多次重装-卸载-重装都不成功,最后,我使用了最原始最笨的解决方法,没有使用--force -- nodeps 强制安装。而是根据安装提示信息,缺哪个依赖包去下载然后手动安装这些依赖包,最后才能正常启动yum。
具体步骤如下:(注意:默认已经切换到root 用户,如果没有切换,请加上 sudo命令)
一、查看是否安装了yum包,有则卸载:
查看是否安装yum包:rpm -qa |grep yum
卸载yum包:rpm -e --nodeps yum
二、找到并下载对应系统的yum包,并使用Winscp(for windows)、FileZilla(for Mac)等上传到服务器,我的系统为如图1:
我所使用的yum包为:yum-4.2.17-6.el8.noarch.rpm,下载地址为:http://mirrors.163.com/centos/8/BaseOS/x86_64/os/Packages/
三、使用rpm命令安装yum包:rpm -ivh yum-4.2.17-6.el8.noarch.rpm,注意,之前得先cd到yum包所在的目录,比如我把yum包放在/home/Muyi/下面,所以我使用 cd /home/Muyi/ 。
四、在安装yum包过程中提示缺dnf,并已给出了dnf的版本,如图2:
然后到以下网址搜索需要的rpm包然后下载,如图3:
https://rpmfind.net/linux/rpm2html/search.php?
安装dnf包: rpm -ivh dnf-4.2.17-6.el8.noarch.rpm 如图4:
注意:在安装包dnf-4.2.17-6.el8.noarch.rpm 时我遇到提示说已经有更新的包已安装,如图5:
之后,我使用--force 强制安装,如图6:
五、就这么缺什么包下载安装什么包,一路按照信息提示,下载安装,最终能正常使用yum。如图7:
写在最后:解决问题的大方向不变,可是系统环境是千变万化的,其他小伙伴的解决方式不一定适合自己。所以还是要厘清问题逻辑,按照信息提示去一步步解决问题,这似乎是一个很好的方法论。