Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

Red Hat Network を使用してシステムを更新しようとすると、"Error Class Code: 9 Error Class Info: Invalid System Credentials" と表示される理由

Solution Unverified - Updated -

Environment

  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 5
  • Red Hat Enterprise Linux 4

Issue

  • システムを更新または登録すると、以下のエラーが表示されます。

    Error Class Code:9
    Error Class Info:Invalid System Credentials.
    

Resolution

  • このエラーを解決するには、RHN で現在のシステムプロファイルを削除して、システムを再登録します。これにより、新しいシステムプロファイルとシステム ID をアップデートできるようになります。再登録プロセスの詳細な手順については、How to re-register my system with Red Hat Network (RHN)? を参照してください。

Root Cause

  • システムの SystemID (/etc/sysconfig/rhn/systemid) と、RHN ホストの SystemID が一致しない場合にこのエラーが発生します。この場合、RHN ホストがシステムを認識しないため、システムはアップデートを受けとることができません。RHN は、登録しているシステムに対するプロファイルを保持します。すべてのシステムは ServerID に基づいて識別されます。そのため、RHN 上の SystemID を、"/etc/sysconfig/rhn/systemid" ファイルに記載されている SystemID と一致させる必要があります。

  • システムを再インストールすると、システム ID が RHN に保存されているサーバー ID とは異なる ID となります。RHN には古いシステムに対するプロファイルが存在しているため、新しくインストールしたシステムが RHN の認証情報と一致しなくなります。次のコマンドを使用してシステム ID を確認することができます。

    # grep ID /etc/sysconfig/rhn/systemid
    

Diagnostic Steps

  • これで、現在のシステムのサーバー ID と RHN アカウントに登録したシステムのサーバー ID を比較することができます。上のコマンドの結果は以下のようになります。

    # grep ID /etc/sysconfig/rhn/systemid
    <value><string>ID-100100000</string></value>
    
  • RHN のシステム ID を使用してシステムを検索する方法は、以下の手順を行ってください。

  1. RHN にログインします。

  2. Advanced Search に移動します。

  3. 検索テキストボックスに systemID を入力します。

  4. "Field to Search:" オプションで "ID" を選択します。
    5.検索ボタンをクリックします。

以下のトレースバックも確認できました。

[root@~] # yum install httpd
Loaded plugins: product-id, rhnplugin, rhui-lb, security
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.
Explanation:
     An error has occurred while processing your request.If this problem
     persists please enter a bug report at bugzilla.redhat.com.
     If you choose to submit the bug report, please be sure to include
     details of what you were trying to do when this error occurred and
     details on how to reproduce this problem.

Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 309, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 178, in main
    result, resultmsgs = base.doCommands()
  File "/usr/share/yum-cli/cli.py", line 345, in doCommands
    self._getTs(needTsRemove)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 101, in _getTs
    self._getTsInfo(remove_only)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 112, in _getTsInfo
    pkgSack = self.pkgSack
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 662, in <lambda>
    pkgSack = property(fget=lambda self: self._getSacks(),
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 502, in _getSacks
    self.repos.populateSack(which=repos)
  File "/usr/lib/python2.4/site-packages/yum/repos.py", line 260, in populateSack
    sack.populate(repo, mdtype, callback, cacheonly)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 168, in populate
    if self._check_db_version(repo, mydbtype):
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 226, in _check_db_version
    return repo._check_db_version(mdtype)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1226, in _check_db_version
    repoXML = self.repoXML
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1399, in <lambda>
    repoXML = property(fget=lambda self: self._getRepoXML(),
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1391, in _getRepoXML
    self._loadRepoXML(text=self)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1381, in _loadRepoXML
    return self._groupLoadRepoXML(text, ["primary"])
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1365, in _groupLoadRepoXML
    if self._commonLoadRepoXML(text):
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1201, in _commonLoadRepoXML
    result = self._getFileRepoXML(local, text)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 974, in _getFileRepoXML
    cache=self.http_caching == 'all')
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 805, in _getFile
    result = self.grab.urlgrab(misc.to_utf8(relative), local,
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 511, in <lambda>
    grab = property(lambda self: self._getgrab())
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 506, in _getgrab
    self._setupGrab()
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 482, in _setupGrab
    self._grab = mgclass(self._grabfunc, self.urls,
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 686, in <lambda>
    urls = property(fget=lambda self: self._geturls(),
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 683, in _geturls
    self._baseurlSetup()
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 619, in _baseurlSetup
    mirrorurls.extend(self._getMirrorList())
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1630, in _getMirrorList
    fo = urlgrabber.grabber.urlopen(url, **ugopts)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 612, in urlopen
    return default_grabber.urlopen(url, **kwargs)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 893, in urlopen
    return self._retry(opts, retryfunc, url)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 854, in _retry
    r = apply(func, (opts,) + args, {})
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 892, in retryfunc
    return URLGrabberFileObject(url, filename=None, opts=opts)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 1010, in __init__
    self._do_open()
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 1093, in _do_open
    fo, hdr = self._make_request(req, opener)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 1202, in _make_request
    fo = opener.open(req)
  File "/usr/lib64/python2.4/urllib2.py", line 358, in open
    response = self._open(req, data)
  File "/usr/lib64/python2.4/urllib2.py", line 376, in _open
    '_open', req)
  File "/usr/lib64/python2.4/urllib2.py", line 337, in _call_chain
    result = func(*args)
  File "/usr/lib64/python2.4/site-packages/M2Crypto/m2urllib2.py", line 82, in https_open
    h.request(req.get_method(), req.get_selector(), req.data, headers)
  File "/usr/lib64/python2.4/httplib.py", line 810, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib64/python2.4/httplib.py", line 833, in _send_request
    self.endheaders()
  File "/usr/lib64/python2.4/httplib.py", line 804, in endheaders
    self._send_output()
  File "/usr/lib64/python2.4/httplib.py", line 685, in _send_output
    self.send(msg)
  File "/usr/lib64/python2.4/httplib.py", line 652, in send
    self.connect()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/httpslib.py", line 55, in connect
    sock.connect((self.host, self.port))
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 174, in connect
    ret = self.connect_ssl()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 167, in connect_ssl
    return m2.ssl_connect(self.ssl, self._timeout)
M2Crypto.SSL.SSLError: certificate verify failed

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.