Solaris ZFS:如何导入 2 个具有相同名称的池

我们可能需要管理 2 个具有相同名称的池。
例如,如果我们有一个名为“datapool”的池,而另一个来自其他存储数组的名为“datapool”的池。
我们可能希望将第二个池(具有相同名称)导入系统。
ZFS 不允许系统有 2 个同名的池。
因此,我们必须将池中的一个重命名为其他名称。
导入同名池时有两种情况。

1. One pool is already imported
2. Both pools are exported
www. On IT Road .com

场景 2:两个池都被导出

考虑两个池都没有被导入的情况。
所有 vdev 对操作系统都是可见的。
如果我们尝试导入,zfs 不知道要导入哪个,因此我们会收到如下错误:

# zpool import datapool
cannot import 'datapool': more than one matching pool
import by numeric ID instead

在这种情况下,我们需要通过 ID 导入第一个池。
该池将以原始名称导入。
要获取池 ID,请执行以下操作:

# zpool import
  pool: datapool
    id: 4752417439350054830
 state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:
        datapool    ONLINE
          c1t2d0    ONLINE
  pool: datapool
    id: 10561124909390930773
 state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:
        datapool    ONLINE
          c1t3d0    ONLINE

现在使用池 ID 导入第一个池:

# zpool import -f 4752417439350054830

我们将不得不使用新名称导入第二个数据池。

# zpool import datapool datapool_other

验证 zpool 列表以查看同时导入的 2 个池 datapool 和 datapool_other。

# zpool list
NAME             SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
datapool        1008M  95.5K  1008M     0%  ONLINE  
datapool_other  1008M   356K  1008M     0%  ONLINE

场景一:已经导入了一个池

在这种情况下,一个名为 datapool 的池已经导入,而另一个池尚未导入。

# zpool list
NAME       SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
datapool  1008M   154K  1008M     0%  ONLINE

为了导入另一个数据池,我们必须以其他名称导入它。

# zpool import datapool datapool_other

验证我们是否拥有两个名称不同的池。

# zpool list
NAME             SIZE  ALLOC   FREE    CAP  HEALTH  ALTROOT
datapool        1008M    97K  1008M     0%  ONLINE  
datapool_other  1008M   115K  1008M     0%  ONLINE
日期:2020-09-17 00:15:27 来源:oir作者:oir