在RHEL 6中安装开发工具

在RHEL 6中安装开发工具

我在连接到网络的办公室计算机(运行 RHEL 6)上拥有管理员权限。我尝试使用以下命令安装开发工具:sudo yum groupinstall "Development Tools" 但收到一条错误消息:

Updating certificate-based repositories.
There was an error communicating with RHN.
RHN Satellite or RHN Classic support will be disabled.

Error Message:
 Please run rhn_register as root on this client
 Error Class Code: 9
 Error Class Info: Invalid System Credentials.

我尝试运行 rhn_register,它说"It appears this system has already been registered for software updates"

向下滚动,我发现以下几行:

Setting up Group Process
Warning: Group development does not have any packages.  
No packages in any requested group available to install or update

这两件事有联系吗?或者开发工具的安装流程发生了变化?

答案1

所以,有两件事...

一:基于证书的存储库是“subscription_manager”的功能,而“RHN Classic”是传统的 RHN。首先您需要知道您的系统使用的是哪种类型。如果它是“基于证书的存储库”(又名 subscription_manager),那么您将看到文件 /etc/yum.repos.d/redhat.repo ,其内容如下:

[rhel-6-server-rpms]
name = Red Hat Enterprise Linux 6 Server (RPMs)
baseurl = https://cdn.redhat.com/content/rhel/server/6/$releasever/$basearch/os
enabled = 0
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
sslverify = 1
sslcacert = /etc/rhsm/ca/redhat-uep.pem
sslclientkey = /etc/pki/entitlement/1111111111111111111-key.pem
sslclientcert = /etc/pki/entitlement/1111111111111111111.pem
metadata_expire = 86400

如果是这种情况,你是可能使用 subscription_manager,另一方面,如果您有一个位于 /etc/sysconfig/rhn/systemid 的文件,则系统已通过“RHN Classic”注册。无论如何,无论您使用哪种方法,都应该关闭另一种方法。这可以通过配置位于以下位置的相应插件的配置来完成:/etc/yum/pluginconf.d/

对于“RHN Classic”,这将是文件“rhnplugin.conf”,对于“subscription_manager”,这将是“subscription-manager.conf”。通过在相应的配置文件中设置布尔值“enabled=[0|1]”来启用/禁用这些功能。如果您没有这些配置,那么您的系统未通过 RHN/subscription_manager 注册,尽管您拥有本地管理权限,但您应该联系控制您的 RHN 权利的系统管理员。如果你已注册,我们继续。

禁用您选择不使用的插件后,请验证您是否可以通过以下命令看到可用的组并且没有错误消息:

yum grouplist

或者,甚至更好:

yum grouplist | grep -i development 

这应该产生类似于以下内容的输出:

redbeard@yum01 [~]# yum grouplist | grep -i development
   Additional Development
   Desktop Platform Development
   Development tools
   Server Platform Development

您会注意到名称“开发工具”的第二个单词中有一个小写首字符。我做过验证无论情况如何,这都应该有效。

redbeard@yum01 [~]# sudo yum groupinstall "Development Tools"
Loaded plugins: product-id, security, subscription-manager
This system is receiving updates from Red Hat Subscription Management.
Setting up Group Process
Package 1:pkgconfig-0.23-9.1.el6.x86_64 already installed and latest version
Package binutils-2.20.51.0.2-5.36.el6.x86_64 already installed and latest version
Package elfutils-0.152-1.el6.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package autoconf.noarch 0:2.63-5.1.el6 will be installed
---> Package automake.noarch 0:1.11.1-4.el6 will be installed
---> Package bison.x86_64 0:2.4.1-5.el6 will be installed
---> Package byacc.x86_64 0:1.9.20070509-7.el6 will be installed
---> Package cscope.x86_64 0:15.6-6.el6 will be installed
---> Package ctags.x86_64 0:5.8-2.el6 will be installed
....

答案2

现在仅仅注册系统是不够的,还需要“服务级别偏好”至少“自营“。存储库可用性取决于服务级别首选项。因此,请使用以下步骤来获取正确的服务级别。

此外,在命令行上使用“订阅管理器”注册系统后,可以在订阅管理门户网站上管理其他功能。

01.检查您已启用的订阅

subscription-manager list

02. 将您的系统注册到客户门户订阅管理

subscription-manager register --username your_username --password your_password

03.列出可用的服务级别

subscription-manager service-level --list

04. 使用开关设置您想要的级别

subscription-manager service-level --set=self-support
subscription-manager list

05.通过某个订阅提供的所有存储库的列表

subscription-manager repos --list
yum repolist all

笔记:如果订阅不起作用可以使用自动选项,如下所示。

subscription-manager attach --auto

删除所有订阅

subscription-manager remove --all

要安装开发工具,请使用以下步骤。

01. 要找出该组中的内容,请使用命令

yum groupinfo "Development Tools"

或者

yum grouplist | grep -i development

02.安装开发工具

yum groupinstall "Development Tools"

03.检查并验证一些工具的安装版本

gcc --version
make --version

相关内容