第 3 章 Red Hat Satellite Proxy 信息


本小节论述了如何在 Red Hat Network Package Manager 中使用 Red Hat Satellite Proxy
Red Hat Network Package Manager 是一个命令行工具,可允许机构通过 Red Hat Network Proxy 服务器提供与专用 RHN 频道关联的本地软件包。如果只要为 Red Hat Network Proxy 服务器更新官方红帽软件包,则不要安装 Red Hat Network Package Manager。
要使用 Red Hat Network Package Manager,需要安装 spacewalk-proxy-package-manager 及其相依软件包。
只有软件包的标头信息会被上传到红帽网络服务器。红帽网络需要标头信息来为客户端系统解决依赖性问题。实际的软件包文件(*.rpm)被保存在红帽网络 Proxy 服务器中。
Red Hat Network Package Manager 和 Proxy 使用相同的设置,这些设置在 /etc/rhn/rhn.conf 配置文件中定义。
以下是 Red Hat Network Package Manager rhn_package_manager 所有命令行选项的小结:
Expand
表 3.1. rhn_package_manager 选项
选项 描述
-v, --verbose 输出详细信息。
-dDIR, --dir=DIR 从目录 DIR 中获得软件包。
-cCHANNEL, --channel=CHANNEL 管理这个频道 - 可以指定多个频道。
-nNUMBER, --count=NUMBER 每次调用只处理这里指定的数量的头信息 - 默认值是 32。
-l, --list 列出指定频道中的每个软件包的软件包名、版本号、发行版本和体系结构。
-s, --sync 检查本地目录是否与服务器同步。
-p, --printconf 打印当前的配置并退出。
-XPATTERN, --exclude=PATTERN 不包括满足这个表达式条件的文件 - 可以包括多个表达式。
--newest 对于指定频道,只 push 那些比已经推到服务器上的软件包新的软件包。
--stdin 从 stdin 中读取软件包名。
--nosig Push 没有签注的软件包。默认情况下,Red Hat Network Package Manager 只 push 签注的软件包。
--username=USERNAME 指定您的红帽网络用户名。如果您在这个选项中没有提供用户名,会提示您输入。
--password=PASSWORD 指定您的红帽网络密码。如果您在这个选项中没有提供用户名,会提示您输入。
--source 上传源码软件包标头。
--dontcopy 在上传后的处理步骤中,不会将软件包复制到它们在软件包树中的最终位置上。
--test 只显示被 push 的软件包。
--no-ssl 不推荐使用 - 关闭 SSL。
-?, --usage 对选项的简单描述。
--copyonly 将在参数中列出的文件复制到指定的频道。当一个代理服务器缺少了一个软件包,而您又不想重新输入这个频道中所有软件包时,这个选项非常有用。例如,rhn_package_manager -cCHANNEL--copyonly /PATH/TO/MISSING/FILE
-h--help 显示有选项列表的帮助屏幕。

注意

这些命令行选项的描述也可以在 rhn_package_manager 的 man page 中找到:man rhn_package_manager
要让 Red Hat Network Package Manager 可以提供本地软件包,则需要执行以下步骤:
  1. 创建一个专用频道
  2. 将本地软件包上传到该频道。
下一节中将进一步讨论这些步骤。

3.1.1. 创建专用频道

在通过 Red Hat Network Proxy 服务器提供本地软件包前,需要将其保存在专用频道中。请执行以下步骤来创建专用频道:
  1. 登录到红帽网络网站界面 https://rhn.redhat.com,或者登录网络中的 Red Hat Satellite 服务器。
  2. 点击上部浏览条中的「频道」标签。如果「管理频道」选项没有出现在左侧导航栏中,请确认这个用户有编辑频道的授权设定。您可以通过上面导航条中的「用户」类别来设置需要的权限。
  3. 点击左面浏览条中的「管理软件频道」,然后点击本页右上角的「创建新频道」按钮。
  4. 选择一个上级频道和基本频道结构,然后输入新专用频道的频道名、频道标签、总览和描述。频道标签必须最少由 6 个字符组成,以一个字母开始并只能包括小写字母、数字、破折号(-))点(.)。输入这个频道的 GPG 密钥的 URL。虽然这个项不是必需的,但为了增加安全性,我们推荐使用它。有关生成 GPG 密钥的方法,请参阅《红帽网络频道管理指南》
  5. 点击「创建频道」

3.1.2. 上传软件包

注意

要向专用红帽网络频道上传软件包,您必须是一个机构管理员。脚本会要求您输入您的红帽网络用户名和密码。
在创建专用软件频道后,将您的二进制和源 RPM 的标头上传到红帽网络服务器,并将软件包复制到红帽网络 Proxy Broker 服务器。要为二进制 RPM 上传软件包标头,请在命令行中输入:
 rhn_package_manager -c "label_of_private_channel" pkg-list rhn_package_manager -c "label_of_private_channel" pkg-list
Copy to Clipboard Toggle word wrap
这个命令会将软件包的标头上传到指定名称的频道,而将软件包本身上传到 /var/spool/rhn-proxy/rhn
pkg-list 是要上传的软件包列表。另外,您还可以使用 -d 选项来指定要加入到这个频道的软件包所在的本地目录。请确定指定的目录只包括要上传的软件包,而不包括其它文件。Red Hat Network Package Manager 也可以从标准输入中(使用 --stdin)读取软件包列表。
为源 RPM 上传软件包标头:
 rhn_package_manager -c "label_of_private_channel" --source pkg-list rhn_package_manager -c "label_of_private_channel" --source pkg-list
Copy to Clipboard Toggle word wrap
如果您指定了多于一个的频道(使用 -c--channel),会将上传的软件包标头链接到所有列出的频道。

注意

如果您没有指定频道名,软件包将不会加入到任何频道。软件包可以通过红帽网络网站界面来加入到一个频道。这个界面也可以被用来修改现有的专用频道。
在上传软件包后,您可以通过红帽网络网站界面马上验证它们。点击顶部导航条中的「频道」,在左侧导航栏中选择选定「管理软件频道」,然后点「软件包」子标签页。此时应列出所有 RPM。
您还可以在命令行中检查本地目录是否与红帽网络服务器中的这个频道的映像同步:
 rhn_package_manager -s -c "label_of_private_channel"  rhn_package_manager -s -c "label_of_private_channel"  rhn_package_manager -s -c "label_of_private_channel" 
Copy to Clipboard Toggle word wrap
使用 -s 选项会列出所有缺失的软件包(即上传到红帽网络服务器而没有出现在本地目录中的软件包)。您必须是机构管理员方可使用这个命令。该脚本将提示您输入红帽网络用户名和密码。
如果您正在使用 Red Hat Network Package Manager 更新本地软件包,您必须访问红帽网络网站来将此系统订阅到专用频道。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat