Ubuntu
Linux/Ubuntu 上的 ZFS:在 Ubuntu 從 13.04 升級到 13.10 後幫助導入 zpool,設備 ID 已更改
我已將 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 export nestpool
然後嘗試使用以下命令重新導入池:zpool import -m -f -d /dev/disk/by-id nestpool
但導入失敗並顯示消息:無法導入“nestpool”:一個或多個設備目前不可用
這是zpool import的目前輸出
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-part2和ata-Samsung_SSD_840_PRO_Series_S1ATNEAD707066K-part3。並且在導入期間的參數*-m*沒有幫助。
我找不到告訴zpool import為日誌設備使用不同路徑/ID 的方法。任何解決此問題的幫助和想法將不勝感激。我還能做些什麼來恢復這個池?
請嘗試
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