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

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 及更低版本的支持 (Expanded Support)

对 Red Hat 8 的支持 (Expanded Support)

文件去重

将数据从 SMT 转移到 RMT

将注册数据传输到 SUSE Customer Center

报告

Web 服务器的自定义 TLS 证书

清理储存库中不再使用的数据

Bash 补全

openSUSE Leap 15 上提供

3

可以选择 run as container

3

简易开发设置 + contribution guide

100% 测试 coverage

Plugin functionality

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 的目录结构将复制到顶级目录结构中

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

    此 URL 在 RMT 服务器上的路径对应于

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

    1. 通过运行以下命令检查有无自定义储存库:

      > sudo rmt-cli repos custom list

      该命令会显示所有自定义储存库的表。第一列包含每个储存库的 IDMirror? 列显示 false

    2. 通过运行以下命令启用您要镜像的每个自定义储存库:

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

    > sudo rmt-cli mirror