以下列出了从 NIS+ 迁移到 LDAP 时可能的迁移方案:
通过一次操作将所有的 NIS+ 客户机转换为使用 LDAP。可以使用 rpc.nisd 守护进程来上载 LDAP 中尚不存在的任何 NIS+ 数据。请参见如何通过一个操作将所有的 NIS+ 数据转换为 LDAP。
从 NIS+ 逐步迁移到 LDAP。 首先将 NIS+ 数据转换为 LDAP(请参见如何通过一个操作将所有的 NIS+ 数据转换为 LDAP)。 可以使 NIS+ 客户机和 LDAP 客户机共享相同的名称服务数据,并使 rpc.nisd 自动保持 NIS+ 数据和 LDAP 数据同步。NIS+ 最初可能是授权的名称服务,LDAP 服务器则维护 NIS+ 数据的副本以便于 LDAP 客户机使用。在适当的时候,可以使 LDAP 成为授权的名称服务,并逐步取消 NIS+ 服务,直到不再有 NIS+ 客户机。
LDAP 已经用作名称服务,因此您需要合并 NIS+ 数据和 LDAP 数据。有三种可能的方法来执行此合并。
将 NIS+ 数据添加到 LDAP 中。将 NIS+ 中存在而 LDAP 中不存在的项添加到 LDAP 中。NIS+ 和 LDAP 中均存在但是具有不同数据的项以保留 NIS+ 数据告终。请参见如何通过一个操作将所有的 NIS+ 数据转换为 LDAP。
使用 LDAP 数据覆写 NIS+ 数据。如果某些项在 NIS+ 中存在,而在 LDAP 中不存在,它们将从 NIS+ 中消失。在 NIS+ 和 LDAP 中均存在的项以保留 LDAP 数据告终。请参见如何通过一步操作将所有的 LDAP 数据转换为 NIS+。
合并 NIS+ 数据和 LDAP 数据并逐一解决冲突。请参见合并 NIS+ 数据和 LDAP 数据。
使用 rpc.nisd 上载 LDAP 中尚不存在的任何 NIS+ 数据。
使用以下命令(假设已在缺省位置 (/var/nis/NIS+LDAPmapping) 建立了所有 NIS+/LDAP 数据映射):
# /usr/sbin/rpc.nisd -D \ -x nisplusLDAPinitialUpdateAction=to_ldap \ -x nisplusLDAPinitialUpdateOnly=yes |
以上命令会使 rpc.nisd 将数据上载到 LDAP,然后退出。NIS+ 数据将不会受到此操作的影响。
请参见 rpc.nisd(4) 的 nisplusLDAPinitialUpdateAction 属性。
使用 rpc.nisd 将所有的 LDAP 数据下载到 NIS+,从而覆写现有的 NIS+ 数据。
使用以下命令(假设已在缺省位置 (/var/nis/NIS+LDAPmapping) 建立了所有 NIS+/LDAP 数据映射):
# /usr/sbin/rpc.nisd -D \ -x nisplusLDAPinitialUpdateAction=from_ldap \ -x nisplusLDAPinitialUpdateOnly=yes |
以上命令会使 rpc.nisd 守护进程从 LDAP 下载数据,然后退出。LDAP 数据将不会受到此操作的影响。
请参见 rpc.nisd(4) 的 nisplusLDAPinitialUpdateAction 属性。