![Linux/Ubuntu 上的 ZFS:Ubuntu 从 13.04 升级到 13.10 后,帮助导入 zpool,设备 ID 已更改](https://linux22.com/image/624019/Linux%2FUbuntu%20%E4%B8%8A%E7%9A%84%20ZFS%EF%BC%9AUbuntu%20%E4%BB%8E%2013.04%20%E5%8D%87%E7%BA%A7%E5%88%B0%2013.10%20%E5%90%8E%EF%BC%8C%E5%B8%AE%E5%8A%A9%E5%AF%BC%E5%85%A5%20zpool%EF%BC%8C%E8%AE%BE%E5%A4%87%20ID%20%E5%B7%B2%E6%9B%B4%E6%94%B9.png)
我已将 Ubuntu 从 13.04 版本更新到 13.10 版本,却发现 SATA 磁盘 ID 已更改,并且我的 ZFS 池现在出现故障。
在新版 Ubuntu 13.10 上,磁盘 ID 现在是 ata-*,而不是 scsi-SATA_*。
这是更新后的池状态:
pool: nestpool
state: UNAVAIL
status: One or more devices could not be used because the label is missing
or invalid. There are insufficient replicas for the pool to continue
functioning.
action: Destroy and re-create the pool from
a backup source.
see: http://zfsonlinux.org/msg/ZFS-8000-5E
scan: none requested
config:
NAME STATE READ WRITE CKSUM
nestpool UNAVAIL 0 0 0 insufficient replicas
raidz2-0 UNAVAIL 0 0 0 insufficient replicas
scsi-SATA_WDC_WD4000F9YZ-_WD-WCC1F0046946 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WCC4A0026423 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WMC1F0011145 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WMC1F0049294 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WMC1F0051143 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WMC1F0051756 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WMC1F0056625 UNAVAIL 0 0 0
scsi-SATA_WDC_WD4000F9YZ-_WD-WMC1F0200560 UNAVAIL 0 0 0
logs
mirror-1 UNAVAIL 0 0 0 insufficient replicas
scsi-SATA_Samsung_SSD_840S1ATNEAD707062H-part2 UNAVAIL 0 0 0
scsi-SATA_Samsung_SSD_840S1ATNEAD707066K-part3 UNAVAIL 0 0 0
在网上进行了很长时间的研究后,我开始按照以下步骤操作:
首先使用以下命令导出池:zpool 导出 nestpool
然后尝试使用以下命令重新导入池:zpool import -m -f -d /dev/disk/by-id nestpool
但导入失败并显示以下消息:无法导入“nestpool”:一个或多个设备当前不可用
这是当前输出zpool 导入
pool: nestpool
id: 3947768928242827823
state: DEGRADED
status: One or more devices contains corrupted data.
action: The pool can be imported despite missing or damaged devices. The
fault tolerance of the pool may be compromised if imported.
see: http://zfsonlinux.org/msg/ZFS-8000-4J
config:
nestpool DEGRADED
raidz2-0 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WCC1F0046946 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WCC4A0026423 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WMC1F0011145 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WMC1F0049294 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WMC1F0051143 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WMC1F0051756 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WMC1F0056625 ONLINE
ata-WDC_WD4000F9YZ-09N20L0_WD-WMC1F0200560 ONLINE
cache
ata-Samsung_SSD_840_PRO_Series_S1ATNEAD707062H-part1
logs
mirror-1 UNAVAIL insufficient replicas
ata-Samsung_SSD_840_PRO_Series_S1ATNEAD707062H UNAVAIL corrupted data
ata-Samsung_SSD_840_PRO_Series_S1ATNEAD707066K UNAVAIL
日志分区未正确识别,应该ata-Samsung_SSD_840_PRO_Series_S1ATNEAD707062H-第 2 部分和ata-三星_SSD_840_PRO_系列_S1ATNEAD707066K-第 3 部分. 争论-m导入期间没有帮助。
我无法找到方法来告诉zpool 导入使用不同的路径/ID 来处理日志设备。任何帮助和解决此问题的想法都将不胜感激。我还能做什么来恢复这个池?
答案1
请尝试zpool list
。这将显示该池是否可供系统使用。
尝试导入。也许zpool import -f nestpool
也许可以尝试通过以下方式删除不可用的日志设备:
zpool remove nestpool mirror-1
从现在开始,使用整个设备进行 L2ARC 和 ZIL...
编辑:
/dev/disk/by-id
最简单的解决方法是临时创建导入池所需的符号链接。示例来自运行当前 ZFS 的 RHEL 系统。
[root@Davalan /dev/disk/by-id]# ll
total 0
lrwxrwxrwx 1 root root 9 Oct 27 05:29 ata-STEC_M8IOPS-50_STM000136649 -> ../../sdc
lrwxrwxrwx 1 root root 10 Oct 27 05:29 ata-STEC_M8IOPS-50_STM000136649-part1 -> ../../sdc1
lrwxrwxrwx 1 root root 10 Oct 27 05:29 ata-STEC_M8IOPS-50_STM000136649-part9 -> ../../sdc9
lrwxrwxrwx 1 root root 9 Oct 27 05:29 scsi-35000c5003af99fa7 -> ../../sdd
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000c5003af99fa7-part1 -> ../../sdd1
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000c5003af99fa7-part9 -> ../../sdd9
lrwxrwxrwx 1 root root 9 Oct 27 05:29 scsi-35000cca0153ec2d0 -> ../../sdb
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000cca0153ec2d0-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000cca0153ec2d0-part9 -> ../../sdb9
lrwxrwxrwx 1 root root 9 Oct 27 05:29 scsi-35000cca01540e298 -> ../../sdf
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000cca01540e298-part1 -> ../../sdf1
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000cca01540e298-part9 -> ../../sdf9
lrwxrwxrwx 1 root root 9 Oct 27 05:29 scsi-35000cca01540e340 -> ../../sde
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000cca01540e340-part1 -> ../../sde1
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-35000cca01540e340-part9 -> ../../sde9
lrwxrwxrwx 1 root root 9 Oct 27 05:29 scsi-SATA_STEC_M8IOPS-50_STM000136649 -> ../../sdc
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-SATA_STEC_M8IOPS-50_STM000136649-part1 -> ../../sdc1
lrwxrwxrwx 1 root root 10 Oct 27 05:29 scsi-SATA_STEC_M8IOPS-50_STM000136649-part9 -> ../../sdc9