我有一个支持ZFS的Ubuntu(13.04)桌面,这要归功于PPA zfs-native/stable 。
一切都很好。 我使用以下命令创build了一个名为inground的RAID-Z1池:
zpool create inground raidz1 sdb sdc sdd sde sdf
后来,在无法访问我创build的挂载点之后,当我在池中看到1个unavailable和2个corrupt vdevs时,我运行了zpool status ,差点从椅子上掉下来。 经过几次深呼吸,我注意到当我最近重新启动系统时,我在我的塔的前端口之一有一个USD拇指驱动器。 这导致了所有的/dev/sd*映射的改变,一切都变得有意义了。 我删除了USB驱动器,重新启动,一切都很好。
我的问题是,今后如何防止这种情况? 在将它们作为vdevs添加到zpool时,是否可以使用不同的,规范的标识符来引用物理驱动器?
在SCSI设备名称可以更改的情况下,您不应该为ZFS池使用/ dev / sdX名称。 请参阅/ dev / disk下的选项…
[root@Davalan /dev/disk]# cd by- by-id/ by-path/ by-uuid/
我通常使用我的Linux zpools的/dev/disk/by-id条目…
# 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
好消息是,您可以通过导出和重新导入池来更改vdevconfigurationscheme。 (来自ZFS Linux文档 )
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