ネットワークに接続されているオフィスコンピュータ(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
これら2つが関連付けられていますか?それとも開発ツールのインストールプロセスが変更されましたか?
答え1
それでは、2つ...
1:証明書ベースのリポジトリは「subscription_manager」の機能ですが、「RHN Classic」は伝統的なRHNです。まず、システムがどのタイプを使用しているかを知る必要があります。 「証明書ベースのストレージ」(つまり、subscribe_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
それからあなたは可能一方、subscribe_managerを使用すると、/etc/sysconfig/rhn/systemidにファイルがある場合、システムは「RHN Classic」に登録されます。どの方法を使用しても、他の方法はオフにする必要があります。これは、/etc/yum/pluginconf.d/にある対応するプラグインの構成を構成することによって行うことができます。
「RHN クラシック」の場合は「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
「Development Tools」という名前の2番目の単語には、最初の文字が小文字になっていることがわかります。私した状況に関係なく、これが機能していることを確認してください。
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