引导储存库
引导储存库包含在引导期间注册 Salt 或传统客户端所需的软件包,以及在客户端上安装 Salt 所需的软件包。同步产品时,会自动在 SUSE Manager 服务器上创建及重新生成引导储存库。
1. 准备创建引导储存库
如果您选择某个产品以进行同步,当所有必需的通道都完全镜像后,会立即自动创建引导储存库。
-
在 SUSE Manager Web UI 中,导航到
,然后选择产品
选项卡。当同步产品时,此对话框会为每个产品显示一个完成栏。 -
或者,您可以导航到
,然后单击与该储存库关联的通道。导航到储存库
选项卡,然后单击同步
并选中同步状态
。
-
在 SUSE Manager 服务器上的命令提示符处,以 root 身份使用
tail
命令检查同步日志文件:tail -f /var/log/rhn/reposync/<channel-label>.log
-
每个子通道在同步过程中都会生成自己的日志。 您需要检查所有基础通道和子通道日志文件,以确保同步已完成。
2. 自动模式的选项
您可以更改自动引导储存库的创建方式。本节介绍了各种相应设置。
- 刷新模式
-
默认只会使用最新软件包更新现有储存库,而您可以将其配置为始终从空储存库开始。要启用此行为,请在
/etc/rhn/rhn.conf
中添加或编辑此值:
server.susemanager.bootstrap_repo_flush = 1
- 自动模式
-
默认会启用引导储存库的自动重新生成功能。要禁用此功能,请在
/etc/rhn/rhn.conf
中添加或编辑此值:
server.susemanager.auto_generate_bootstrap_repo = 0
2.1. 配置引导数据文件
该工具使用包含有关每个发行套件所需软件包的信息的数据文件。该数据文件存储在 /usr/share/ susemanager/mgr_bootstrap_data.py
。SUSE 会定期更新此文件。如果您要更改此文件,请不要直接编辑, 而是应在同一目录中创建一份副本,然后编辑该副本:
cd /usr/share/susemanager/ cp mgr_bootstrap_data.py my_data.py
更改后,将 SUSE Manager 配置为使用这个新文件。在 /etc/rhn/rhn.conf
中添加或编辑此值:
server.susemanager.bootstrap_repo_datamodule = my_data
下次更新时,SUSE 提供的新数据将重写原来的数据文件,而不是这个新文件。您需要在新文件中使用 SUSE 提供的更改覆盖相应内容,以使其保持最新。 |
3. 手动生成引导储存库
默认情况下,每天都会重新生成引导储存库。您可以在命令提示符处手动创建引导储存库。
-
在 SUSE Manager 服务器上的命令提示符处,以 root 身份列出要为其创建引导储存库的可用发行套件:
mgr-create-bootstrap-repo -l
-
创建引导储存库,并使用适当的储存库名称作为产品标签:
mgr-create-bootstrap-repo -c SLE-version-x86_64
-
或者,使用可用发行套件列表中发行套件名称旁边显示的编号。
客户端储存库位于 /srv/www/htdocs/pub/repositories/
中。
如果您镜像了多个产品(例如 SLES 和 SLES for SAP),或者您使用的是自定义通道,在创建引导储存库时将需要指定要使用的父通道。并不是在所有情况下都需要如此。例如,部分 SLES 15 版本使用共同的代码库,因此无需指定父通道。只有您的环境需要时,才需使用此过程。
-
检查您有哪些父通道可用:
mgr-create-bootstrap-repo -c SLE-15-x86_64 找到多个父通道选项。请使用 --with-parent-channel <label> 选项并选择以下其中一个父通道: - sle-product-sles15-pool-x86_64 - sle-product-sles_sap15-pool-x86_64 - sle-product-sled15-pool-x86_64
-
指定适当的父通道:
mgr-create-bootstrap-repo -c SLE-15-x86_64 --with-parent-channel sle-product-sled15-pool-x86_64
3.1. 包含多个体系结构的储存库
如果您要创建包含多个不同体系结构的引导储存库,则需要确保所有体系结构是否都已正确更新。例如,SLE 的 x86-64 和 IBM Z 体系结构使用相同的引导储存库 URL:/srv/www/htdocs/pub/repositories/sle/15/2/bootstrap/
。
如果启用 flush
选项,当您尝试生成多个体系结构的引导储存库时,将仅生成一个体系结构。要避免此问题,请在创建其他体系结构时于命令提示符处使用 --no-flush
选项。例如:
mgr-create-bootstrap-repo -c SLE-15-SP2-x86_64 mgr-create-bootstrap-repo --no-flush -c SLE-15-SP2-s390x
4. 引导和自定义通道
如果您要使用自定义通道,则可以在 mgr-create-bootstrap-repo
命令中使用 --with-custom-channels
选项。在此情况下,您还需要指定要使用的父通道。
如果您使用自定义通道,则自动创建引导储存库可能会失败。在这种情况下,您需要手动创建储存库。
有关自定义通道的详细信息,请参见 自定义通道。