23.8. 删除过时的 RUV 记录
如果您在没有正确删除其复制协议的情况下从 IdM 拓扑中删除服务器,则过时的副本更新向量(RUV)记录将保留在拓扑中的一个或多个剩余的服务器上。例如,这种情况可能会由于自动化而发生。然后这些服务器预期会从现在删除的服务器中接收更新。在这种情况下,您需要从剩余的服务器中清理过时的 RUV 记录。
先决条件
- 您有 IdM 管理员凭证。
- 您知道哪些副本已损坏或已被错误地删除。
步骤
使用
ipa-replica-manage list-ruv
命令列出有关 RUV 的详细信息。命令显示副本 ID:$ ipa-replica-manage list-ruv server1.example.com:389: 6 server2.example.com:389: 5 server3.example.com:389: 4 server4.example.com:389: 12
重要ipa-replica-manage list-ruv
命令列出拓扑中的所有副本,而不仅仅是列出有问题或被错误删除了的副本。使用
ipa-replica-manage clean-ruv
命令删除与指定副本关联的过时的 RUV。对带有过时 RUV 的每个副本 ID 重复此命令。例如,如果您知道server1.example.com
和server2.example.com
是有问题或者被错误删除了的副本:ipa-replica-manage clean-ruv 6 ipa-replica-manage clean-ruv 5
使用 ipa-replica-manage clean-ruv
时要非常小心。针对有效的副本 ID 运行命令将破坏与复制数据库中该副本关联的所有数据。
如果发生这种情况,请使用 $ ipa-replica-manage re-initialize --from server1.example.com
从另一个副本重新初始化副本。
验证
-
再次运行
ipa-replica-manage list-ruv
。如果命令不再显示任何损坏的 RUV,则记录已被成功清理。 如果命令仍然显示损坏的 RUV,则使用此任务手动清除它们:
dn: cn=clean replica_ID, cn=cleanallruv, cn=tasks, cn=config objectclass: extensibleObject replica-base-dn: dc=example,dc=com replica-id: replica_ID replica-force-cleaning: no cn: clean replica_ID