前言:红帽的yum源是需要注册付费的,如果一定要免费使用红帽系统,那么你需要将红帽的yum源替换为CentOS对应的源,那你可以花些时间看我的在替换yum源的过程以及所遇到的问题;如果不一定要使用红帽系统,那么建议你抛弃红帽,直接下载CentOS。
目录
在使用RHLE 7过程中,输入关于yum的命令,报错
解决方案
1、检查是否安装yum包。
2、在root下,删除系统自带的yum包
3、判断自己系统适合哪个版本的CentOS源
4、使用国内CentOS的yum包替换redhat自带的yum
①下载
②安装
③备份Redhat自带的repo文件(如果yum.repos.d下没有repo文件,直接跳到步骤④)
④下载对应版本的repo文件,放入 /etc/yum.repos.d/中
⑤替换CentOS-Base.repo文件中的$releasever为版本号7
⑥清除原有缓存,使设置生效
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
没有找到yum
以上报错都是因为没有注册yum源,而redhat的yum源是需要注册付费的,想要免费使用红帽系统,可将其替换为CentOS对应的源
查看RHEL是否安装了yum,若是安装了,那么又有哪些yum包
[root@localhost 桌面]# rpm -qa |grep yum
yum-langpacks-0.4.2-3.el7.noarch
yum-rhn-plugin-2.0.1-4.el7.noarch
PackageKit-yum-0.8.9-11.el7.x86_64
yum-metadata-parser-1.1.4-10.el7.x86_64
yum-utils-1.1.31-24.el7.noarch
执行rpm -qa|grep yum|xargs rpm -e --nodeps 不检查依赖直接删除所有yum包。
再次执行rpm -qa|grep yum查看已经安装的yum包,没有内容表明删除成功。
cat /etc/redhat-release
)和系统类别(uname -a 或 arch,x86_64就是64位的,i386或者i686就是32位的)
[root@localhost 桌面]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.0 (Maipo)
[root@localhost 桌面]# arch
x86_64
[root@localhost 桌面]# uname -a
Linux localhost.localdomain 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
我的版本号是redhat 7.0,64位系统
[root@localhost 桌面]# cd /usr/lib/
[root@localhost lib]# ls
alsa firewalld java-1.6.0 kbd modules-load.d sse2
binfmt.d firmware java-1.7.0 kde3 mozilla sysctl.d
bonobo games java-1.8.0 kde4 openslp-server systemd
cpp gcc java-ext kdump polkit-1 tmpfiles.d
crda gems jvm kernel python2.7 tuned
cups grub jvm-commmon locale rpm udev
debug java jvm-exports modprobe.d sendmail udisks2
dracut java-1.5.0 jvm-private modules sendmail.postfix yum-plugins
Ⅰ.镜像地址:
http://mirrors.163.com/centos/ 或者 http://mirrors.kernel.org/centos/或者http://mirrors.aliyun.com/repo/或者其他站点,这里以163的站点为例
找到对用的版本号和系统类别下载
Ⅱ.下载yum、yum-plugin-fastestmirror、yum-metadata-parser、python-iniparse、python-urlgrabber这五个软件包
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-10.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-168.el7.centos.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm
Ⅲ.成功下载示例
Ⅳ.查看包是否都下载成功
Ⅰ.先安装yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
[root@localhost /]#rpm -ivh yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
Ⅱ.再输入以下命令对有互相依赖的包进行安装
[root@localhost /]#rpm -ivh yum-3.4.3-168.el7.centos.noarch.rpm yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm python-urlgrabber-3.10-10.el7.noarch.rpm python-iniparse-0.4-9.el7.noarch.rpm 警告:yum-3.4.3-168.el7.centos.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY 准备中... ################################# [100%] 正在升级/安装... 1:python-iniparse-0.4-9.el7 ################################# [ 25%] 2:python-urlgrabber-3.10-10.el7 ################################# [ 50%] 3:yum-plugin-fastestmirror-1.1.31-5################################# [ 75%] 4:yum-3.4.3-168.el7.centos ################################# [100%]
查看所有yum包,检查是否安装完成
[root@localhost /]# rpm -qa |grep yum yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch yum-metadata-parser-1.1.4-10.el7.x86_64 yum-3.4.3-168.el7.centos.noarch
如果安装出现错误 rpm >= 0:4.11.3-22 被 yum-3.4.3-154.el7.centos.noarch 需要
安装最新的rpm即可
1.wget http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-32.el7.x86_64.rpm 2.rpm -Uvh rpm-4.11.3-32.el7.x86_64.rpm --nodeps
如果yum包没有完全安装成功,出现依赖包的问题或者包冲突的问题
可以添加以下两个参数,进行强迫安装
[root@localhost /]# rpm -ivh --force --nodeps yum-3.4.3-168.el7.centos.noarch.rpm yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm python-urlgrabber-3.10-10.el7.noarch.rpm python-iniparse-0.4-9.el7.noarch.rpm 或者 [root@localhost /]# rpm -ivh *.rpm --force 即使覆盖属于其它包的文件也强迫安装 --nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 [root@localhost /]# rpm -ivh --force --nodeps yum* 最终的强制安装指令
- cd /etc/yum.repos.d
- mv rhel-source.repo rhel-source.repo.bak
http://mirrors.163.com/.help/centos.html
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
在/etc/yum.repos.d/CentOS-Base.repo这个后面跟的是你下载的镜像的地址,wget -O意思是下载并以指定的文件名保存,所以文件会改名叫CentOS-Base.repo了,不是点击下载时的CentOS7-Base-163.repo
vim CentOS-Base.repo
然后复制以下命令对文本内容进行全局替换:
:%s/$releasever/7/ge
替换完成之后输入 :wq 保存并退出
[root@localhost yum.repos.d]# yum clean all 已加载插件:fastestmirror, product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. 正在清理软件源: InstallMedia base extras updates [root@localhost yum.repos.d]# yum makecache 已加载插件:fastestmirror, product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Determining fastest mirrors base | 3.6 kB 00:00 extras | 2.9 kB 00:00 updates | 2.9 kB 00:00 (1/10): base/x86_64/group_gz | 153 kB 00:00 (2/10): base/x86_64/filelists_db | 7.2 MB 00:11 (3/10): extras/x86_64/filelists_db | 231 kB 00:01 (4/10): extras/x86_64/primary_db | 236 kB 00:02 (5/10): extras/x86_64/other_db | 139 kB 00:01 (6/10): base/x86_64/other_db | 2.6 MB 00:05 (7/10): updates/x86_64/primary_db | 8.0 MB 00:12 (8/10): updates/x86_64/other_db | 610 kB 00:00 (9/10): updates/x86_64/filelists_db | 4.7 MB 00:18 (10/10): base/x86_64/primary_db | 6.1 MB 00:00:44 元数据缓存已建立
注:重新建立缓存需要联网,快速联网可参考快速解决NAT(地址转换协议)模式下虚拟机不能上网问题_想一直摸鱼的博客-CSDN博客
到此,配置完成,可以尝试使用yum下载软件,比如:yum install wget等
转载请注明出处
参考文献