2 RMT 安装和配置 #
SUSE Linux Enterprise Server 15 及以上版本中包含 RMT。可以在安装 SUSE Linux Enterprise Server 的过程中直接安装 RMT,或在运行中系统上安装 RMT。安装好软件包后,请使用 YaST 执行初始配置。
将一台服务器配置为 RMT 服务器时,会安装并配置监听端口为 80 的 NGINX Web 服务器。
而在将一台计算机配置为安装服务器时,会自动安装 Apache Web 服务器并将其配置为监听端口 80。
请勿尝试在同一台服务器上启用这两项功能。一台服务器无法同时托管 Apache Web 服务器和 NGINX Web 服务器。
2.1 储存要求 #
下载的软件包储存在 /usr/share/rmt/public/repo
中,其为 /var/lib/rmt/public/repo/
的符号链接。
RMT 服务器所需的储存空间取决于以下可变因素:您镜像的储存库和体系结构的数量以及启用的产品数量。一般来说,将储存空间设为所有已启用储存库总大小的 1.5 倍应当就已足够。其中,每个 SUSE Linux Enterprise 版本(包括所有扩展)大约 200 GB。
2.2 在系统安装期间安装 #
要在系统安装期间安装 RMT,请选择 rmt-server 软件包。您可在安装期间的安装设置步骤中进行软件选择时选择该软件包。
我们建议您在使用 zypper patch
命令安装 SUSE Linux Enterprise Server 后,立即检查是否有可用的 RMT 更新。SUSE 会不断发布 RMT 的维护更新,因此可能会有更新的软件包。
2.3 在现有系统上安装 #
要在运行中的 SUSE Linux Enterprise Server 系统上安装 RMT,请使用 zypper
:
tux >
sudo
zypper in rmt-server
2.4 使用 YaST 配置 RMT #
按以下过程所述使用 YaST 配置 RMT。假设在新安装的系统上执行此过程。
使用
rmt
模块启动 YaST。tux >
sudo
yast2 rmt
或者,您也可以启动 YaST,然后选择
› 。输入您的组织身份凭证。要获取您的身份凭证,请参见第 4.1 节 “镜像身份凭证”。
输入新 MariaDB 用户和数据库名称的身份凭证。系统即会创建此用户。然后选择
。如果已设置 MariaDB
root
用户的口令,您需要输入该口令。如果未设置root
的口令,系统会要求您输入一个新口令。输入 SSL 证书的常用名。该常用名通常应为服务器的完全限定域名 (FQDN)。输入您要用来作为其他常用名连接 RMT 服务器的所有域名和 IP 地址。
输入所有常用名后,选择
。提示:RMT 的证书位置/etc/rmt/ssl/rmt-ca.crt
此为
yast2 rmt
用来验证 RMT 服务器证书的 CA 证书束。仅当此文件不存在时,yast2 rmt
才会创建该文件。/etc/rmt/ssl/rmt-server.crt
和/etc/rmt/ssl/rmt-server.key
仅当服务器证书和私用密钥不存在时,
yast2 rmt
才会生成新的服务器证书和私用密钥。要重新生成此证书,请参见第 8.1 节 “重新生成 HTTPS 证书”。
如果此系统上启用了
firewalld
,请选中相应复选框打开必需的端口。图 2.2︰ 在firewalld
中启用端口 #如果现在尚未启用
firewalld
而您打算稍后启用它,可始终通过运行yast2 rmt
模块来打开相应端口。提示:微调firewalld
设置单击
,可仅打开特定网络接口的相应端口。按
继续。要查看摘要,请单击
。单击 关闭 YaST。YaST 即会启用并启动所有systemd
服务和计时器。
2.5 启用 SLP 声明 #
RMT 包含 SLP 服务说明文件 /etc/slp.reg.d/rmt-server.reg
。要启用 RMT 服务的 SLP 声明,请执行以下步骤:
如果
firewalld
正在运行,请打开相应端口并重新装载firewalld
配置:tux >
sudo
firewall-cmd --permanent --add-port=427/tcp successtux >
sudo
firewall-cmd --permanent --add-port=427/udp successtux >
sudo
firewall-cmd --reload校验是否安装了 SLP 服务器,如果可能,安装该服务器:
tux >
sudo
zypper install openslp-server启用并启动 SLP 服务:
tux >
sudo
systemctl enable slpd.servicetux >
sudo
systemctl restart slpd.service