Documentation survey

注册 Raspberry Pi OS 客户端

本节包含有关注册运行 Raspberry Pi OS 操作系统的客户端的信息。

可以通过引导 Raspberry Pi OS 客户端来执行初始状态的运行以及配置文件的更新。

  • Raspberry Pi OS repository URLs are available from SUSE Customer Center.

  • Packages and metadata are provided by Raspberry Pi OS, not by SUSE.

  • For supported products, see the support table and the release notes.

1. 准备注册

需要完成一些准备工作,然后才能将 Raspberry Pi OS 客户端注册到 SUSE Multi-Linux Manager 服务器:

  • 确保 DNS 配置正确并提供客户端对应的项。或者,您也可以配置 SUSE Multi-Linux Manager 服务器和客户端上的 /etc/hosts 文件,在其中添加相应的项。

  • 注册前,客户端的日期和时间必须已与 SUSE Multi-Linux Manager 服务器同步。

2. 添加软件通道

将 Raspberry Pi OS 客户端注册到 SUSE Multi-Linux Manager 服务器之前,需要添加并同步所需的软件通道。

The architecture currently supported is arm64.

For example, when working with arm64 architecture, you need:

Table 1. Raspberry Pi OS - WebUI
OS Version Product Name

Raspberry Pi OS 12

Raspberry Pi OS 12 (Tech Preview)

过程:添加软件通道
  1. 在 SUSE Multi-Linux Manager Web UI 中,导航到管理  安装向导  产品

  2. 使用搜索栏找到适用于您的客户端操作系统和体系结构的产品,然后选中相应产品。这样会自动选中所有必需的通道。此外,建议的所有通道也将选中,并且包括建议项开关会打开。单击箭头以查看相关产品的完整列表,确保您需要的所有额外产品都已选中。

  3. 单击 添加产品 并等待产品完成同步。

Alternatively, you can add channels at the command prompt.

此过程所需的通道包括:

Table 2. Raspberry Pi OS 通道 - CLI
OS Version Base Channel

Raspberry Pi OS 12

raspberrypios-12-pool-arm64

过程:在命令提示符处添加软件通道
  1. 在 SUSE Multi-Linux Manager 容器主机的命令提示符处,以 root 身份命令添加相应的通道:

    mgrctl exec -ti -- spacewalk-common-channels \
    <base_channel_label> \
    <child_channel_label_1> \
    <child_channel_label_2> \
    ... <child_channel_label_n>

    要列出所有可用储存库,请执行以下命令:

    mgrctl exec -ti -- spacewalk-common-channels -l
  2. 如果 自动同步 处于关闭状态,请同步通道:

    mgrctl exec -ti -- spacewalk-repo-sync -p <base_channel_label>
  3. 确保同步已完成,然后再继续操作。

spacewalk-common-channels 提供的客户端工具通道来自 Uyuni 而非 SUSE。

在引导任何 Raspberry Pi OS 客户端之前,需要完全同步所有新通道。

3. 检查同步状态

过程:通过 Web UI 检查同步进度
  1. 在 SUSE Multi-Linux Manager Web UI 中,导航到管理  安装向导,然后选择产品选项卡。当同步产品时,此对话框会为每个产品显示一个完成栏。

  2. 或者,您可以导航到软件  管理  通道,然后单击与该储存库关联的通道。导航到储存库选项卡,然后单击同步并选中同步状态

过程:通过命令提示符检查同步进度
  1. To list available logs before tailing, run the following command:

    mgrctl exec -ti -- ls /var/log/rhn/reposync/
  2. At the command prompt on the SUSE Multi-Linux Manager container host, as root, check the synchronization of a channel log file:

    mgrctl exec -ti -- tail -f /var/log/rhn/reposync/<channel-label>.log
  3. 每个子通道在同步过程中会生成自身的日志。您需要检查所有基础通道和子通道日志文件,以确保同步完成。

Raspberry Pi OS 通道可能非常大。同步所需的时间可能长达数小时。

4. 创建激活密钥

需要创建与您的 Raspberry Pi OS 通道关联的激活密钥。

有关激活密钥的详细信息,请参见 激活密钥

5. 管理 GPG 密钥

安装软件包之前,客户端会使用 GPG 密钥检查这些软件包的真实性。只有可信软件才能安装在客户端上。

信任 GPG 密钥对于客户端的安全非常重要。由管理员来决定需要哪些密钥,可以信任哪些密钥。这是因为如果不信任 GPG 密钥,便无法使用软件通道,是否将通道指派给客户端取决于是否信任密钥。

有关 GPG 密钥的详细信息,请参见 GPG 密钥

Raspberry Pi OS 客户端可能需要安装多个 GPG 密钥。

同步第三方 Raspberry Pi OS 储存库时,需要在服务器上导入相应的 GPG 密钥。如果缺少 GPG 密钥,同步将会失败。

使用 Raspberry Pi OS 储存库时,系统只会对元数据签名。因此不需要导入软件通道的 GPG 密钥。SUSE Multi-Linux Manager 将不会对软件包重新签名。

要查看已导入 SUSE Multi-Linux Manager 服务器的 GPG 密钥,请运行以下命令:

mgrctl exec -- gpg --homedir /var/lib/spacewalk/gpgdir --list-keys

要导入新的 GPG 密钥,请运行以下命令:

mgradm gpg add <文件名>.gpg

6. Root 访问权限

默认会为 Raspberry Pi OS 上的 root 用户禁用 SSH 访问权限。

要想能够使用普通用户进行初始配置,您需要编辑 sudoers 文件。

过程:授予 Root 用户访问权限
  1. 在客户端上,编辑 sudoers 文件:

    sudo visudo

    sudoers 文件末尾添加下面一行,以向用户授予 sudo 访问权限。以在 Web UI 中引导客户端的用户的名称替换 <user>

    <user>  ALL=NOPASSWD: /usr/bin/python, /usr/bin/python2, /usr/bin/python3, /var/tmp/venv-salt-minion/bin/python

此过程无需口令便可授予 root 访问权限,而注册客户端需要提供口令。客户端成功安装后会以 root 特权运行,因此将不再需要该访问权限。客户端成功安装之后,建议您从 sudoers 文件中去除该行。

7. 注册客户端

要注册您的客户端,需要有引导储存库。系统默认会自动创建引导储存库,并且每天会为所有同步的产品重新生成该储存库。您可以在容器主机的命令提示符处手动创建引导储存库:

mgrctl exec -ti mgr-create-bootstrap-repo

有关注册客户端的详细信息,请参见 客户端注册