29.13. 删除过时的 RUV 记录
如果您在没有正确删除其复制协议的情况下从 IdM 拓扑中删除服务器,则过时的副本更新向量(RUV)记录将保留在拓扑中的一个或多个剩余服务器上。例如,由于自动化,可能会发生这种情况。这些服务器随后预期从现在删除的服务器接收更新。在这种情况下,您需要从剩余的服务器清理过时的 RUV 记录。
先决条件
- 您有 IdM 管理员凭证。
- 您知道哪些副本已损坏或已被错误地删除。
步骤
使用
ipa-replica-manage list-ruv
命令列出 RUVs 的详细信息。命令显示副本 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