Why does subscription-manager list return: "No Installed Products found" ?

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 5.7 and onwards
  • Red Hat Subscription Management (RHSM)
  • Red Hat Subscription-Manager

Issue

  • Why does command 'subscription-manager list return: No Installed Products found`?
  • How to get 69.pem if it is missing?
  • subscription-manager list --consumed shows a valid subscription but subscription-manager list command shows "No installed products to list"
  • yum repolist command returns no repository information.
[root@example ~]#  yum -v repolist
Not loading "rhnplugin" plugin, as it is disabled
Loading "product-id" plugin
Loading "security" plugin
Loading "subscription-manager" plugin
Updating certificate-based repositories.
Config time: 1.008
Yum Version: 3.2.29
Setting up Package Sacks
repolist: 0                     <===
[root@example ~]#  subscription-manager list
No installed products to list
[root@example ~]#  subscription-manager repos
This system has no repositories available through subscriptions.

Resolution

  • Product certificates are x509 files that are placed on client machines and used by tooling to identify which products are installed.

Place product certificate in /etc/pki/product directory with 644 and user and group ownership as a root (root:root).

Root Cause

  • Product certificate pem file is missing from /etc/pki/product/ directory.

Diagnostic Steps

  • Collect sosreport of the system.
  • Verify the product certificate information stored in /etc/pki/product directory.
  • Enable the repository and check for error.
# subscription-manager repos --enable=REPO_ID
REPO ID does not match a valid repository ID. Use "subscription-manager repos --list" to see valid repositories
  • Review the logs for Subscription-Manager, which shows that no products are updated at /var/log/rhsm/rhsm.log
2013-09-04 16:33:35,721 [DEBUG]  @profile.py:95 - Loading current RPM profile.
2013-09-04 16:33:35,783 [INFO]  @connection.py:538 - Using certificate authentication: key = /etc/pki/consumer/key.pem, cert = /etc/pki/consumer/cert.pem, ca = /etc/rhsm/ca/, insecure = False
2013-09-04 16:33:35,783 [INFO]  @connection.py:549 - Connection Built: host: subscription.rhn.redhat.com, port: 443, handler: /subscription
2013-09-04 16:33:35,991 [DEBUG]  @cert_sorter.py:116 - Sorting product and entitlement cert status for: 2013-09-04 16:33:35.991899+00:00
2013-09-04 16:33:35,992 [DEBUG]  @cert_sorter.py:169 - Installed product IDs: []
2013-09-04 16:33:35,994 [DEBUG]  @cert_sorter.py:185 - Checking certificate: 1456352708107124720
2013-09-04 16:33:35,994 [DEBUG]  @cert_sorter.py:122 - valid entitled products: []
2013-09-04 16:33:35,994 [DEBUG]  @cert_sorter.py:123 - expired entitled products: []
2013-09-04 16:33:35,994 [DEBUG]  @cert_sorter.py:124 - partially entitled products: []
2013-09-04 16:33:35,995 [DEBUG]  @cert_sorter.py:125 - unentitled products: []
2013-09-04 16:33:35,995 [DEBUG]  @cert_sorter.py:126 - future products: []
2013-09-04 16:33:35,995 [DEBUG]  @cert_sorter.py:127 - partial stacks: []
2013-09-04 16:33:35,995 [DEBUG]  @cert_sorter.py:128 - valid stacks: []
2013-09-04 16:33:35,998 [DEBUG]  @connection.py:360 - Loading CA PEM certificates from: /etc/rhsm/ca/
2013-09-04 16:33:35,998 [DEBUG]  @connection.py:342 - Loading CA certificate: '/etc/rhsm/ca/redhat-uep.pem'
2013-09-04 16:33:35,999 [DEBUG]  @connection.py:342 - Loading CA certificate: '/etc/rhsm/ca/candlepin-stage.pem'
2013-09-04 16:33:35,999 [DEBUG]  @connection.py:366 - Using proxy: server.example.com:80
2013-09-04 16:33:35,999 [DEBUG]  @connection.py:381 - Making request: GET https://subscription.rhn.redhat.com:443/subscription/consumers/b92d3659e-5024-4b56-9c7a-8dc281088c22/certificates/serials
2013-09-04 16:33:37,142 [DEBUG]  @connection.py:394 - Response status: 200
2013-09-04 16:33:37,143 [INFO]  @certlib.py:225 - certs updated:
Total updates: 0
Found (local) serial# [2456322608907124720L]
Expected (UEP) serial# [2456322603907424720]
Added (new)
  <NONE>
Deleted (rogue):
  <NONE>
Expired (deleted):
  <NONE>

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.

13 Comments

I can reproduce this problem with my current kickstart install configuration. It would be nice to know what is causing it so it can be prevented.

For me this turned out to be a cobbler issue - https://github.com/cobbler/cobbler/issues/647

On the flip side of this, what causes a bunch of products to be installed when registering a system with subscription-manager?

I noticed that when registering a default installation of RHEL 6 that 5 or more products will show up and attache channels. This can cause other products to fail to install such as OpenShift.

We had this issue also and resolved it by copying the file from a server where it was installed

Your comment saved the day for me! I copied the file over, and boom! Worked. Thanks!

A common cause of this is systems that are installed from yum repos that do not include the productid in the repo metadata. Various tools for mirroring or creating repos will fail to include the productid in the repo metadata.
Verify the install source has the productid, and that the repomd.xml includes a reference to productid (and the correct checksums). (For example, the cobbler issue referenced above: https://github.com/cobbler/cobbler/issues/647)

I had this issue and pressed support for an answer. They tell me the cert is only included on the ISO and not provided in an update. It's supposed to be provided as part of a package install or you can install the package to get it, but they admitted they currently "don't know" what package includes the file...sounds like a BS answer to me. I had to get them to send them to me. Unfortunately for Premium severity 1 support, they have been surprisingly unresponsive for 10 days.

RH is not very helpful, even when they give the solution elsewhere: https://access.redhat.com/solutions/373533
Quoth the article:
"Product keys specific to the release of each system are provided by the rpm subscription-manager-migration-data, which is an optional package under the @Base group during standard install. It provides all product keys for the release number of the media currently installed under:
/usr/share/rhsm/product/RHEL-6/"

I had to do a bit of searching to find my correct cert, then copied it into the directory listed in this article. Use this to find your proper key:
ls -1 /usr/share/rhsm/product/RHEL-/ | grep 69.pem | grep x86_64 | xargs -l rct cat-cert | less
Of course adjust for 32-bit files in that dir, and the "69" designation is for Server, as per the linked article. For some reason even though this server's version is 5, it has certs for 6, 6-beta, 7, 4AS and 4ES, not sure why.

Getting the right 69.pem-files is one thing, installing them on 100+ servers is not a solution.

I highly recommend this page at Red Hat for getting/replacing those product keys: https://access.redhat.com/labs/rhpc/

"subscription-manager repos --enable=REPO_ID" and "subscription-manager repos" both return the same error: despite following the instructions on https://access.redhat.com/solutions/100423 precisely detail: [root@noise ~]# yum -v repolist Not loading "rhnplugin" plugin, as it is disabled Loading "product-id" plugin Loading "refresh-packagekit" plugin Loading "search-disabled-repos" plugin Loading "security" plugin Loading "subscription-manager" plugin Updating Subscription Management repositories. Unable to read consumer identity This system is not registered with an entitlement server. You can use subscription-manager to register. Config time: 0.113 Yum Version: 3.2.29 Setting up Package Sacks repolist: 0 [root@noise ~]#

Hi, is this system registered? You may want to run the following to confirm:

subscription-manager status subscription-manager identity

Hello,

What about RHEL 7.7 in URL? (https://access.redhat.com/labs/rhpc/)

Its referred to RHEL 7.8