公司的一个服务器是 RedHat 的,yum没有激活,刚好有个项目想要放到这个服务器上,就搞了一下yum
不太懂怎么搞,参考网上教程先把 yum 卸载了。。。(之后发现是一个不太明智的选择)
没了yum包只能用rpm来安装
rpm 常用命令
1.安装一个包
# rpm -ivh
2.升级一个包
# rpm -Uvh
3.卸载一个包
# rpm -e
4.安装参数
--force 即使覆盖属于其它包的文件也强迫安装
--nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。
5.查询一个包是否被安装
# rpm -q
6.列出所有被安装的rpm package
# rpm -qa
先清除本地所有的yum安装包
查看已安装的包
rpm -qa|grep yum
卸载所有包且不检查其依赖(不然会卸载不掉)
rpm -qa|grep yum|xargs rpm -e --nodeps
再执行查看命令不显示即为卸载成功
下载CentOS 的yum 包
看好自己服务器的版本,cat /etc/issue 或 arch ,i386或者i686是32位的,x86_64就是64位的
确定好想要安装的CentOS 的 版本再开始,版本不同是不通用的
你想要的都在这:
http://mirrors.163.com/centos/7/os/x86_64/Packages/
找到yum、yum-plugin-fastestmirror、yum-metadata-parser、python-urlgrabber、yum-updateonboot、yum-utils、python-iniparse下载下来
开始安装
按照以下顺序安装,提示缺少什么就安装什么
python-iniparse
yum-metadata-parser
...
yum、yum-plugin-fastestmirror(这两个包一起安装,不然会报yum 版本问题)
如提示python < 2.6 的版本问题,可能是下载的几个包的版本问题,基本和python 版本没关系,检查包的版本,或查看所有旧版本yum 依赖包是否全部卸载,包括yum,也可能是没安装 python-elementtree
安装完成后,yum -V 能显示版本即为安装成功
配置yum源文件
yum 源文件默认目录为 /etc/yum.repos.d/
注:此目录下repo文件是有序的,如果在前面的repo 文件的源有问题,就会直接报错,后边的源文件可能不会被检测到
备份本地源文件
mv CentOS7-Base.repo CentOS7-Base.repo.bak
下载配置文件
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
将此配置文件替换/etc/yum.repos.d同名文件
sed -i "s;\$releasever;6;g" CentOS6-Base-163.repo
或 vim repo文件
:%s/$releasever/7/g
清理yum缓存
yum clean all
将服务器软件包信息缓存至本地
yum makecache