搜索

9.3. 使用导出和导入方法将目录服务器 10 迁移到版本 12

download PDF

使用导出和导入方法迁移大型目录服务器环境。

流程

  1. 在现有目录服务器 10 主机上执行以下步骤:

    1. 停止并禁用 dirsrv 服务:

      # dsctl instance_name stop
      # systemctl disable dirsrv@instance_name
    2. 导出后端。例如,要导出 userRoot 后端并将其存储在 /tmp/userRoot.ldif 文件中:

      # db2ldif -Z instance_name -n userRoot -a /tmp/userRoot.ldif
    3. 将以下文件复制到您要安装 Directory Server 12 的新主机:

      • 您在上一步中导出的 LDIF 文件 userRoot.ldif
      • 如果您使用自定义模式,/etc/dirsrv/slapd-instance_name/schema/99user.ldif 文件。
      • /etc/dirsrv/slapd-instance_name/dse.ldif 配置文件。

        重要

        不要将 Directory Server 12 主机上的 dse.ldif 配置文件替换为 Directory Server 10 主机上的文件,因为 dse.ldif 布局在版本之间有所变化。存储 dse.ldif 文件以备参考。

      • 如果要迁移启用了 TLS 并重复使用目录服务器 12 安装相同的主机名的实例,请复制:

        • /etc/dirsrv/slapd-instance_name/cert8.db
        • /etc/dirsrv/slapd-instance_name/key3.db
        • /etc/dirsrv/slapd-instance_name/pin.txt
    4. 如果要在 Directory Server 12 主机上使用相同的主机名和 IP,请断开旧服务器与网络的连接。
  2. 在新目录服务器 12 主机上执行以下步骤:

    1. 安装目录服务器 12.
    2. 可选:配置 TLS 加密:

      • 如果全新安装使用了与 Directory Server 10 实例不同的主机名,请参阅 保护 Red Hat Directory Server 文档中的启用 TLS 加密连接到 Directory Server 部分。
      • 如果要使用与之前的目录服务器 10 安装相同的主机名:

        1. 停止实例:

          # dsctl instance_name stop
        2. 删除网络安全服务(NSS)数据库和目录服务器的密码文件(如果存在):

          # rm /etc/dirsrv/slapd-instance_name/cert*.db /etc/dirsrv/slapd-instance_name/key*.db /etc/dirsrv/slapd-instance_name/pin.txt
        3. 将从 Directory Server 10 主机复制的 cert8.dbkey3.dbpin.txt 文件移到 /etc/dirsrv/slapd-instance_name/ 目录中。
        4. 为 NSS 数据库和密码文件设置正确的权限:

          # chown dirsrv:root /etc/dirsrv/slapd-instance_name/cert8.db /etc/dirsrv/slapd-instance_name/key3.db /etc/dirsrv/slapd-instance_name/pin.txt
          
          # chmod 600 /etc/dirsrv/slapd-instance_name/cert8.db /etc/dirsrv/slapd-instance_name/key3.db /etc/dirsrv/slapd-instance_name/pin.txt
        5. 启动实例:

          # dsctl instance_name start
    3. 如果您使用了自定义模式,请将 99user.ldif 文件恢复到 /etc/dirsrv/slapd-instance_name/schema/ 目录,并设置适当的权限并重启实例:

      # cp /tmp/99user.ldif /etc/dirsrv/slapd-instance_name/schema/
      
      # chmod 644 /etc/dirsrv/slapd-instance_name/schema/99user.ldif
      
      # chown root:root /etc/dirsrv/slapd-instance_name/schema/99user.ldif
      
      # dsctl instance_name restart
    4. 将您准备在 Directory Server 10 主机上的 /tmp/userRoot.ldif 文件放在 /var/lib/dirsrv/slapd-instance_name/ldif/ 目录中。
    5. 导入 userRoot.ldif 文件,以使用所有条目恢复 userRoot 后端:

      # dsconf -D 'cn=Directory Manager' ldap://server.example.com backend import userRoot /var/lib/dirsrv/slapd-instance_name/ldif/userRoot.ldif

      请注意,Directory Server 12 只能从 /var/lib/dirsrv/slapd-instance_name/ 目录中导入 LDIF 文件。

      重要

      如果您在 Directory Server 10 主机上使用了自定义配置,请不要将 Directory Server 12 主机上的 dse.ldif 配置文件替换为之前版本中的文件。反之,使用 dsconf 工具或 Web 控制台为每个所需的参数和插件手动添加自定义配置。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.