Logical Domains Manager 不允许创建会产生依赖关系循环的域关系。依赖关系循环是指两个或多个域之间的一种关系,其中,从属域可能会依赖于其本身或主域可能会依赖于其从属域之一。
Logical Domains Manager 在添加依赖关系之前确定是否存在依赖关系循环。Logical Domains Manager 自从属域开始沿着主阵列指定的所有路径进行搜索,直到到达路径的终点。沿途所发现的任何依赖关系循环都将被报告为错误。
以下示例说明了如何会产生依赖关系循环。第一个命令创建名为 mohawk 的从属域,该从属域将其主域指定为 primary。因此,在下图所示的依赖关系链中,mohawk 依赖于 primary。
图 16-1 单个域依赖关系
第二个命令创建名为 primary 的从属域,该从属域将其主域指定为 counter。因此,在下图所示的依赖关系链中,mohawk 依赖于 primary,而 primary 又依赖于 counter。
图 16-2 多个域依赖关系
第三个命令将尝试创建 counter 和 mohawk 域之间的依赖关系,这种依赖关系将产生下图所示的依赖关系循环。
图 16-3 域依赖关系循环
ldm set-domain 命令将失败,并显示以下错误消息:
# ldm add-domain master=primary mohawk # ldm set-domain master=counter primary # ldm set-domain master=mohawk counter Dependency cycle detected: LDom "counter" indicates "primary" as its master