跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / SUSE Linux Enterprise Server 文档 / RMT 指南 / 从 SMT 迁移到 RMT
适用范围 SUSE Linux Enterprise Server 15 SP4

3 从 SMT 迁移到 RMT

本章说明如何从 SLES 11 或 12 上的 SMT 迁移到 SLES 15 上的 RMT。

3.1 重要注意事项

警告
警告:请仔细阅读本节内容

请仔细阅读本节内容。其中包含有关迁移过程的重要信息。

使用新主机

我们建议您在新安装的 SLES 15 主机上安装 RMT。RMT 并不能完全取代 SMT。RMT 具有不同于 SMT 的工作流程,仅支持注册 SUSE Linux Enterprise Server 12 及以上版本的系统。

软件源元数据和设置

不会导出 SMT 中的临时软件源的设置。将导出已标记为要镜像的软件源。

自定义软件源

只能导出标记为要镜像的软件源。

已失效订阅

RMT 上将不会提供组织订阅中已不再可用的产品。

客户端信息

将导出系统及其激活的产品。将导出 SMT 中的 SMT 客户端作业和补丁状态。

表 3.1︰ 功能对比

功能

SMT

RMT

在 SLES 11 上可用

在 SLES 12 上可用

在 SLES 15 上可用

将产品与 SUSE Customer Center 同步

从软件源镜像 RPM

选择性镜像(指定要镜像的产品)

通过 HTTP 提供 RPM

SLE 15 系统注册

SLE 12 系统注册

SLE 11 系统注册

支持从 SLE 12 迁移到 SLE 15

1

支持从 SLE 15 SPx 迁移到 15 SPx+1

1

临时软件源

2

离线镜像

NTLM 代理支持

自定义软件源

YaST 安装向导

YaST 管理向导

客户端管理

支持 Red Hat 7 和更低版本(扩展支持

支持 Red Hat 8(扩展支持

文件去重

将数据从 SMT 转移到 RMT

将注册数据传输到 SUSE Customer Center

报告

Web 服务器的自定义 TLS 证书

清理软件源中不再使用的数据

Bash 补全

适用于 openSUSE Leap 15

3

作为容器运行的选项

3

简单的开发设置 + 贡献指南

100% 的测试覆盖度

插件功能

Web 服务器

Apache 2

Nginx

平台

Perl

Ruby

1) SMT 仅部分支持将系统迁移到 SLE 15。SLE 15 由多个模块和扩展组成。有些模块只是提供补充性的功能,因此不是必需的。RMT 完全支持迁移到 SLE 15 以及在 SLE 15 内部迁移,因此它只会添加最少量的必需模块。SMT 不完全支持这种迁移,它将在系统上启用所有可用模块。

2) SUSE Manager 提供的功能。

3) 只能通过 self-support 使用。

3.2 导出 SMT 数据

过程 3.1︰ 导出 SMT 数据
  1. 通过运行 zypper up 更新已安装的 SMT 服务器。

  2. 如果您要导出 SSL 证书及其余数据,请运行 smt-data-export。请记得将证书存放在安全位置。

    如果您不想从 SMT 导出 SSL 证书,请运行 smt-data-export --no-ssl-export

  3. 导出的配置现已保存到 smt-data-export.TIMESTAMP.tar.gz。将该文件复制到新 RMT 服务器可访问的位置。

3.3 将 SMT 数据导入到 RMT

  1. 运行 zypper up 以确保所安装的 RMT 为最新版本。

  2. 将导出的 .tar.gz 文件复制到某个空目录,并将其解压缩。然后进入新目录:

    > mkdir EMPTY_DIR
    > cd EMPTY_DIR
    > tar xf /PATH/TO/smt-data-export.TIMESTAMP.tar.gz
    > cd smt-data-export
  3. 如果您之前选择从 SMT 导出 SSL 证书,请将 CA 私用密钥和证书复制到 /etc/rmt/ssl/ 中:

    > sudo cp ssl/cacert.key /etc/rmt/ssl/rmt-ca.key
    > sudo cp ssl/cacert.pem /etc/rmt/ssl/rmt-ca.crt
  4. 第 2.5 节 “使用 YaST 配置 RMT”中所述运行 YaST RMT 配置模块。如果您已导入 SMT CA 证书,请将 SMT 服务器的域添加到新 SSL 证书的常用名。

  5. 运行 RMT 同步功能以从 SUSE Customer Center 获取产品和软件源数据。

    > sudo rmt-cli sync
  6. 导入来自 SMT 服务器的数据。

    > sudo rmt-data-import -d ./
  7. 可选:如果 RMT 服务器的 URL 发生变化,请在 /etc/SUSEConnect 中更改客户端的 URL 参数,以指向新的 RMT 服务器。或者更改 DNS 记录以重新指派 RMT 服务器的主机名。

  8. 可选:将 SMT 中的镜像软件源数据转移到 RMT,并调整所复制数据的所有权。

    > sudo cp -r /var/www/htdocs/repo/* /usr/share/rmt/public/repo/
    > sudo chown -R _rmt:nginx /usr/share/rmt/public/repo
    提示
    提示

    RMT 服务器上自定义软件源数据的储存路径与 SMT 上的储存路径不同。使用 RMT 时,它会将源服务器 URL 的目录结构复制到顶级目录中。例如,如果自定义软件源的 URL 为

    http://download.opensuse.org/debug/distribution/leap/15.4/repo/oss

    则在 RMT 服务器上,其路径将是

    /usr/share/rmt/public/repo/debug/distribution/leap/15.4/repo/oss
  9. SMT 服务器上的自定义软件源默认已禁用。如果您要将其镜像到 RMT,请在镜像之前将其启用。

    1. 通过运行以下命令检查有无自定义软件源:

      > sudo rmt-cli repos custom list

      一个列出所有自定义软件源的表格将会显示:第一列包含每个软件源的 ID,而 Mirror? 列将显示 false

    2. 通过运行以下命令启用您要镜像的每个自定义软件源:

      > sudo rmt-cli repos custom enable ID
  10. 通过启动镜像过程更新软件源中的软件包:

    > sudo rmt-cli mirror