6. 系统订阅与注册配置
本章介绍如何完成 RHEL 9 的订阅注册,使系统能够合法访问 Red Hat 官方软件仓库,获取安全更新与技术支持。完成本章后,第 7 章将在此基础上启用具体的软件仓库。
知识点:Simple Content Access(SCA)
自 2022 年起,Red Hat 为所有订阅账户默认启用了 Simple Content Access(SCA)。SCA 模式下,系统注册完成即可访问账户下所有已授权仓库,无需再执行 attach 命令。本章以 SCA 模式为主线,这也是当前所有 Red Hat 账户的默认行为。
6.1 前提条件
- RHEL 9 已完成 SSH 安全配置(第 5 章)。
- 通过 SecureCRT(SSH 端口 2222)以
ops用户、密钥认证方式登录192.168.1.100,执行sudo -i切换至 root 环境。 - 网络可正常访问外网(
ping -c 3 8.8.8.8通畅)。 - 拥有有效的 Red Hat 账户(含有效订阅)。
无企业订阅?
在 Red Hat Developer Program 注册可获得免费的个人开发者订阅,支持最多 16 台物理或虚拟 RHEL 系统,完全满足学习与实验需求。
6.2 检查当前注册状态
subscription-manager status
| 输出结果 | 含义 |
|---|---|
Overall Status: Current |
已注册且有效,无需重新注册 |
Overall Status: Unknown |
未注册,执行注册流程 |
Overall Status: Invalid |
订阅失效,需重新注册或更新 |
若需清理已有注册记录:
subscription-manager unregister
subscription-manager clean
6.3 注册系统
6.3.1 标准注册(SCA 模式,推荐)
SCA 模式下,一条命令完成注册即完成全部授权流程:
subscription-manager register \
--username <your-redhat-account> \
--password <your-password>
注册成功后验证:
subscription-manager status
检查点
SCA 模式下,Overall Status 显示 Disabled 或 Current 均为正常状态,表示系统已获得仓库访问授权。Disabled 并非错误,而是 SCA 模式的正常表现(无需 pool 级别管理)。
6.3.2 Activation Key 注册(推荐企业 / 批量场景)
在 Red Hat Hybrid Cloud Console 创建 Activation Key 后,可实现无密码的批量注册:
subscription-manager register \
--org=<organization-id> \
--activationkey=<activation-key-name>
Activation Key 优势
无需在脚本中暴露账户密码;可预设系统用途(Purpose)与 SLA 等级;适合 Ansible、Kickstart 等自动化部署场景。Org ID 可在 Red Hat Customer Portal → Account 页面找到。
6.3.3 传统 Pool 注册(非 SCA 账户,仅供参考)
若账户未启用 SCA(较旧的企业合同账户),需在注册后手动附加订阅:
# 注册
subscription-manager register \
--username <your-redhat-account> \
--password <your-password>
# 查看可用订阅池
subscription-manager list --available
# 附加指定订阅池
subscription-manager attach --pool=<PoolID>
说明
若账户已启用 SCA,执行 attach 命令会提示不需要手动附加,这是正常行为,不影响使用。
6.4 验证注册信息
# 查看订阅状态
subscription-manager status
# 查看系统身份信息(注册后生成的 UUID 等)
subscription-manager identity
6.5 常见问题与排查
| 问题现象 | 排查步骤 |
|---|---|
Invalid credentials |
确认账户密码正确;确认账户下有有效订阅 |
| 注册超时 | 检查网络:ping subscription.rhsm.redhat.com;检查代理配置 /etc/rhsm/rhsm.conf |
This system is not yet registered |
重新执行 subscription-manager register |
# 测试与 Red Hat 订阅服务的网络连通性
ping -c 3 subscription.rhsm.redhat.com
# 手动刷新订阅信息
subscription-manager refresh
# 查看订阅管理日志
tail -50 /var/log/rhsm/rhsm.log
6.6 实践任务
- 登录
linuxdc(SecureCRT 端口 2222,ops用户,密钥认证,sudo -i切换 root)。 - 检查当前注册状态:
subscription-manager status。 - 使用账户名/密码方式或 Activation Key 方式完成注册。
-
验证注册成功:
subscription-manager status subscription-manager identity -
在 VMware 中创建快照
RHEL9-Subscribed。
6.7 自测问题
Q1:什么是 SCA,它解决了什么问题?
SCA(Simple Content Access)是 Red Hat 的现代订阅模型。注册后系统自动获得账户下所有已授权内容的访问权,无需逐一附加订阅池(Pool)。它大幅简化了注册流程,消除了多系统环境下手动管理订阅池的复杂性。
Q2:企业批量部署 100 台 RHEL 服务器时,最佳注册方式是什么?
使用 Activation Key 结合 Kickstart 或 Ansible(community.general.redhat_subscription 模块)实现全自动注册,无需在任何脚本中硬编码账户密码,安全且可复现。
Q3:注册成功后 dnf repolist 仍为空,原因是什么?
注册(register)只完成身份认证,获得访问授权。具体仓库还需通过 subscription-manager repos --enable 手动启用。第 7 章将完成仓库启用操作。
6.8 章节总结
本章完成了 RHEL 9 的订阅注册。以 SCA 为现代默认模式,注册流程大幅简化;同时介绍了企业批量场景推荐的 Activation Key 方式。注册是获取官方仓库访问权的前提,第 7 章将在此基础上启用具体的软件仓库。