
更換主機板後,我的 raidz 效能下降 - 找不到磁碟。遺失的磁碟曾經是/dev/sdh,但現在它被命名為/dev/sdg - 這就是問題的原因。
在降級的 zpool 中,我設法使用其 uid(我使用 zdb 命令找到它)來使丟失的磁碟離線。所以現在退化的池子看起來像這樣:
pool: Media
state: DEGRADED
status: One or more devices has been taken offline by the administrator.
Sufficient replicas exist for the pool to continue functioning in a
degraded state.
action: Online the device using 'zpool online' or replace the device with
'zpool replace'.
scrub: scrub completed after 2h10m with 0 errors on Thu May 1 14:02:43 2014
config:
NAME STATE READ WRITE CKSUM
Media DEGRADED 0 0 0
raidz1-0 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B0_WD-WMAY00171958 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY00424060 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WMAY04082675 ONLINE 0 0 0
raidz1-1 DEGRADED 0 0 0
sde ONLINE 0 0 0
sdf ONLINE 0 0 0
sdh OFFLINE 0 0 0
但是,我沒有成功地將 /dev/sdh 替換為 /dev/sdg:
zpool replace Media 3840188586753206212 /dev/disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609 -f
invalid vdev specification
the following errors must be manually repaired:
/dev/disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609 is part of active pool 'Media'
... 我要怎麼解決這個問題?
答案1
發出命令
sudo blkid
您可能會發現您正在嘗試使用 raidz 1-0 的成員或保留的備用成員來修復 raidz 1-1。 rgardless 你應該確保將來透過 id 而不是 /dev/sdx 組裝你的 raid 陣列
回應有關無視會員資格的評論。這是危險的做法。確保您的備份是最新的且可存取。這不是我最強的套裝但我確實發現:
這顯然已經在這裡被問到並回答了更換 zpool 中的死磁碟
我還在這裡找到了可能相關也可能不相關的資訊:
http://docs.oracle.com/cd/E19253-01/819-5461/gaypw/index.html
刪除 zpool 的成員
zpool remove pool vdev
來源:http://manpages.ubuntu.com/manpages/lucid/man1/zpool.1M.html
答案2
我解決了。雖然不完全確定如何。在這過程中的某個時刻(我認為在導出池並使用不同的名稱再次導入之後),驅動器不是通過其傳統名稱“/dev/sd*”尋址,而是通過其 ID 尋址。我沒有做任何事情來強制使用 ID 尋址方案 - 它只是發生了。
NAME STATE READ WRITE CKSUM
Media ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B0_WD-WMAY00171958 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY00424060 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WMAY04082675 ONLINE 0 0 0
raidz1-1 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY00788302 ONLINE 0 0 0
disk/by-id/ata-WDC_WD2003FYYS-02W0B1_WD-WCAY01088068 ONLINE 0 0 0
disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609 OFFLINE 0 0 0
每當我嘗試用 /dev/sdg 取代上述故障裝置時,電腦都會回傳裝置 /dev/sdg 正忙錯誤。事實證明,由於 ID 尋址的改變,池在一定程度上自我「治癒」了。
當我意識到 zpool 中的條目已經指向我嘗試設定的裝置 /dev/sdg 的 ID 時,我只需將磁碟機置於線上狀態即可
zpool online Media /dev/disk/by-id/ata-WDC_WD20EZRX-00D8PB0_WD-WMC4M1843609
並且礦池開始重新同步。
順便說一句:我還嘗試擦除驅動器 /dev/sdg 中的數據,以清除所有標籤,並使驅動器忘記它已經是活動池的一部分。我不認為它有幫助,但也許它產生了我不知道的效果。 dd 清除在上面提到的線程中進行了描述。
我希望這可以幫助有類似問題的人。感謝所有花時間閱讀我的問題的人。