保姆级Red Hat没有yum命令、报错This system is not registered to Red Hat Subscription Management.

前言:红帽的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

⑥清除原有缓存,使设置生效


在使用RHLE 7过程中,输入关于yum的命令,报错

 

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. 

没有找到yum

以上报错都是因为没有注册yum源,而redhat的yum源是需要注册付费的,想要免费使用红帽系统,可将其替换为CentOS对应的源

 

解决方案

1、检查是否安装yum包。

查看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

2、在root下,删除系统自带的yum包

执行rpm -qa|grep yum|xargs rpm -e --nodeps 不检查依赖直接删除所有yum包。
再次执行rpm -qa|grep yum查看已经安装的yum包,没有内容表明删除成功。

3、判断自己系统适合哪个版本的CentOS源

  • 法Ⅰ:查看版本号(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位系统

  • 法Ⅱ:看系统自带的python版本,自带python2.6版本的,比较适合CentOS 6.9系统,自带python2.7版本,比较适合CentOS 7 系统
[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

 

4、使用国内CentOS的yum包替换redhat自带的yum

 

①下载

Ⅰ.镜像地址:

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命令下载,wget+空格+对应版本对应文件的网址,网址可在下图中右键,选择复制链接
  • 也可以直接下载在网页上下载软件包,如果Linux没有网络条件,可以先在其他地方下载好再传到Linux中
  • 路径为mirrors.163.com/centos/7/os/x86_64/Packages

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

.成功下载示例

.查看包是否都下载成功

 

②安装

  • 注意:必须按照下面的步骤安装,不能一个个安装,否则无法成功
  • rpm -ivh 后面跟的是我们刚刚下载的文件,输入前几个字母比如yum-plu然后按tab键自动补全命令

.先安装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*  最终的强制安装指令

 

 

③备份Redhat自带的repo文件(如果yum.repos.d下没有repo文件,直接跳到步骤④)

  1. cd /etc/yum.repos.d
  2. mv rhel-source.repo rhel-source.repo.bak

 

④下载对应版本的repo文件,放入 /etc/yum.repos.d/中

 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

⑤替换CentOS-Base.repo文件中的$releasever为版本号7

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等

 

转载请注明出处

 

参考文献


  1. 安装yum: rpm >= 0:4.11.3-22 被 yum-3.4.3-154.el7.centos.noarch - ontoweb-zp - 博客园 (cnblogs.com)
  2. Redhat7中yum安装以及问题解决办法(YUM和wget都无法使用的情况下)_天涯的博客-CSDN博客
  3. RedHat7更换CentOS7的yum源时踩过的坑 - 司徒鲜生 - 博客园 (cnblogs.com)
  4. 小白超详细解决教程redhat yum 报错:This system is not registered to Red Hat Subscription Management_有风南来的博客-CSDN博客
  5.  red hat6.5 This system is not registered to Red Hat Subscription Management问题_genaro26的博客-CSDN博客
  • 11
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
这个错误提示说明你的系统没有注册到 Red Hat 订阅管理系统中,因此无法更新订阅管理仓库。解决方法是使用 `subscription-manager` 工具来注册你的系统。 你可以按照以下步骤来注册你的系统: 1. 打开终端并以 root 用户身份登录。 2. 运行以下命令以注册你的系统: ``` subscription-manager register ``` 这会提示你输入你的 Red Hat 订阅管理用户名和密码。 3. 运行以下命令以启用所有可用的订阅: ``` subscription-manager attach --auto ``` 4. 运行以下命令以更新订阅管理仓库并安装任何可用的更新: ``` yum update ``` 以上步骤可以解决 `Unable to read consumer identity This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.` 错误。 如果你还遇到了 `在"/etc/yum.repos.d", "/etc/yum/repos.d", "/etc/distro.repos.d"中没有被启用的仓库` 错误,可以按照以下步骤来启用这些仓库: 1. 运行以下命令以列出所有可用的仓库: ``` yum repolist all ``` 这将列出系统中所有可用的仓库,包括已启用和未启用的仓库。 2. 找到你需要启用的仓库,并记录下它的名称。 3. 运行以下命令以启用该仓库: ``` yum-config-manager --enable <repository> ``` 将 `<repository>` 替换为你需要启用的仓库的名称。 4. 重复步骤 3 直到你启用了所有需要的仓库。 5. 运行以下命令以更新仓库缓存: ``` yum clean all && yum makecache ``` 现在,你应该能够正常地使用 yum 安装和更新软件包了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值