如何称呼不会改变的 ZFS vdev?

如何称呼不会改变的 ZFS vdev?

感谢 PPA,我拥有一个支持 ZFS 的 Ubuntu (13.04) 桌面zfs-native/stable

一切都运行良好。我inground使用以下命令创建了一个名为 RAID-Z1 的池:

zpool create inground raidz1 sdb sdc sdd sde sdf

后来,在无法访问我创建的挂载点后,我跑了起来,当我看到池中的 1和 2 个vdevzpool status时,我差点从椅子上摔下来。深呼吸几次后,我注意到,当我最近重新启动系统时,我的塔式机箱的前端口之一中有一个 USD 拇指驱动器。这导致所有映射都发生了变化,一切都变得有意义了。我移除了 USB 驱动器,重新启动,一切正常。unavailablecorrupt/dev/sd*

我的问题是,我该如何防止将来发生这种情况?在将物理驱动器作为 vdev 添加到 zpool 时,是否有其他规范的标识符可用于引用物理驱动器?

答案1

在 SCSI 设备名称可以更改的情况下,您不应该将 /dev/sdX 名称用于 ZFS 池。请参阅 /dev/disk 下的选项...

[root@Davalan /dev/disk]# cd by-
by-id/   by-path/ by-uuid/ 

我通常使用这些/dev/disk/by-id条目来表示我的 Linux zpools......

# zpool status
  pool: vol1
 state: ONLINE
  scan: scrub repaired 0 in 1h44m with 0 errors on Sat Jul  6 13:12:06 2013
config:

        NAME                               STATE     READ WRITE CKSUM
        vol1                               ONLINE       0     0     0
          mirror-0                         ONLINE       0     0     0
            scsi-35000c5003af99fa7         ONLINE       0     0     0
            scsi-35000cca0153ec2d0         ONLINE       0     0     0
          mirror-1                         ONLINE       0     0     0
            scsi-35000cca01540e340         ONLINE       0     0     0
            scsi-35000cca01540e298         ONLINE       0     0     0
        cache
          ata-STEC_M8IOPS-50_STM000136649  ONLINE       0     0     0

和...

[root@Davalan /dev/disk/by-id]# ls -1
ata-STEC_M8IOPS-50_STM000136649
ata-STEC_M8IOPS-50_STM000136649-part1
ata-STEC_M8IOPS-50_STM000136649-part9
scsi-35000c5003af99fa7
scsi-35000c5003af99fa7-part1
scsi-35000c5003af99fa7-part9
scsi-35000cca0153ec2d0
scsi-35000cca0153ec2d0-part1
scsi-35000cca0153ec2d0-part9
scsi-35000cca01540e298
scsi-35000cca01540e298-part1
scsi-35000cca01540e298-part9
scsi-35000cca01540e340
scsi-35000cca01540e340-part1
scsi-35000cca01540e340-part9
scsi-SATA_STEC_M8IOPS-50_STM000136649
scsi-SATA_STEC_M8IOPS-50_STM000136649-part1
scsi-SATA_STEC_M8IOPS-50_STM000136649-part9
wwn-0x5000a720300411f7
wwn-0x5000a720300411f7-part1
wwn-0x5000a720300411f7-part9
wwn-0x5000c5003af99fa7
wwn-0x5000c5003af99fa7-part1
wwn-0x5000c5003af99fa7-part9
wwn-0x5000cca0153ec2d0
wwn-0x5000cca0153ec2d0-part1
wwn-0x5000cca0153ec2d0-part9
wwn-0x5000cca01540e298
wwn-0x5000cca01540e298-part1
wwn-0x5000cca01540e298-part9
wwn-0x5000cca01540e340
wwn-0x5000cca01540e340-part1
wwn-0x5000cca01540e340-part9

答案2

好消息是,您可以通过导出并重新导入池来更改 vdev 配置方案。(来自Linux 上的 ZFS 文档

admin@Test-ZFS:~$ sudo zpool status tankz
  pool: tankz
 state: ONLINE
  scan: resilvered 15K in 0h0m with 0 errors on Tue Feb 25 16:36:18 2014
config:

        NAME        STATE     READ WRITE CKSUM
        tankz       ONLINE       0     0     0
          raidz1-0  ONLINE       0     0     0
            sdc     ONLINE       0     0     0
            sde     ONLINE       0     0     0
            sdd     ONLINE       0     0     0

errors: No known data errors

admin@Test-ZFS:~$ sudo zpool export tankz
admin@Test-ZFS:~$ sudo zpool import -d /dev/disk/by-id tankz
admin@Test-ZFS:~$ sudo zpool status tankz
  pool: tankz
 state: ONLINE
  scan: resilvered 15K in 0h0m with 0 errors on Tue Feb 25 16:36:18 2014
config:

        NAME                                       STATE     READ WRITE CKSUM
        tankz                                      ONLINE       0     0     0
          raidz1-0                                 ONLINE       0     0     0
            ata-VBOX_HARDDISK_VB3b2901c3-c7700ec9  ONLINE       0     0     0
            ata-VBOX_HARDDISK_VB4ad696a7-d3e6b542  ONLINE       0     0     0
            ata-VBOX_HARDDISK_VBbed2a908-5ddcaedb  ONLINE       0     0     0

errors: No known data errors

相关内容