Partition

如何使 zpool 使用可讀字元串引用磁碟?

  • December 12, 2017

系統可以通過多種方式唯一標識磁碟或分區、GUID/UUID、連接方式“usb-…”以及傳統目錄結構“/dev/sda”。zpool 似乎在它們之間隨機選擇。我如何獲得 zpool 狀態以使用目錄結構列出陣列,因為它是其他工具唯一知道的?

更多的資訊:

歷史揭示了池是如何創建的:

zpool history XX
History for 'XX':
YYYY-MM-DD.HH:MM:SS zpool create -f XX -m /XX raidz sda sdb sdc sdd sde

但是狀態現在顯示為:

zpool status XX
pool: XX
...
                                                   STATE     READ WRITE CKSUM
     XX                                                         0     0     0
       raidz1-0                                                 0     0     0
         ata-WDC_WD10EFRX-68PJCN0_WD-XXXXXXXXXXXX  ONLINE       0     0     0
...

建構時使用的名稱與現在列出的名稱不同。然而,該數組在創建後已經移動了很多。

更新和結論:

看起來大多數實用程序都可以使用 ZFS 使用的長名稱來代替短名稱,通過

/dev/disk/by-id/*

smartctl --all /dev/disk/by-id/ata-WDC_...

雖然更麻煩,但我同意它更精確。

zpool使用您在創建池時和修改設備(例如附加磁碟或向池中添加 vdev)時提供的設備名稱。因此,您可以使用您選擇的名稱銷毀/重新創建池,或者一個接一個地分離/附加所有設備(當然,這僅適用於具有足夠冗餘的池佈局)。

這就是它在 Solaris 上的工作方式,在 Linux 或 BSD 等其他系統上可能存在特定的警告。

引用自:https://unix.stackexchange.com/questions/409174