PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 電腦硬體討論群組 > 儲存媒體討論區
帳戶
密碼
 

回應
 
主題工具
ericshliao
Major Member
 

加入日期: Aug 2004
文章: 136
群暉NAS修復Volume crash的方法

群暉NAS如果碰到Volume crash的狀況, 而硬碟仍可讀取, 但不能寫入, 官方旳建議是把資料全複製到其他硬碟, 把原先的Volume砍了, 再建新的Volume. 官方的建議就到此為止, 其他就沒有了.

我碰到的問題是, Volume crash後, 看得到的檔案只有一部分可以複製, 還有很多無法複製出來. 群暉官方提供的方法對我完全沒用, 於是我開始研究如何解決這個狀況. 其實NAS裡的工具程式可以修復Volume crash, 但群暉官方並沒提供方法, 是靠使用者社群自己試出來的.

首先, 理論上的分析, 會出現Volume crash, 原因不出三種組合, bad sector, file system error, RAID error.

第一種bad sector, 可以用DiskGenius或HDD Regenerator來掃, 然後試著修復. 如果找到bad sector而且修得好, 大概就解決了. DiskGenius掃描速度大概比HDDR快十倍, 我一顆6TB的HDD, 用HDDR要掃100小時, 用DiskGenius大概低於9小時. 我用HDDR修了不少顆HDD. DiskGenius只用來掃, 沒用來修復過.

第二種file system error, 如果file system是用ext4, 可以用fsck程式來檢查並自動修復. 如果是用btrfs格式, 我就不知道了. 我沒用過btrfs.

第三種RAID error, 可以用mdadm程式來修復. 我只試過修復SHR, 其他RAID 0,1... 照理說應該也可以, 但我沒試過.

詳細的教學, 網路上可以找到, 我主要是看這幾篇:
https://serverfault.com/questions/6...ology-with-mdam

https://xpenology.com/forum/topic/2...crashed-volume/

https://blogs.dbcloudsvc.com/life/f...f-synology-nas/

https://ilmvfx.wordpress.com/2020/1...crashed-volume/

我自己的經驗, 碰過兩次Volume crash, 一次是在DSM6.2.3的黑群暉上, 因為檔案還可以全複製出來, 就全複製出來, 砍掉原本的Volume, 再重新建一個, 沒用到上面的方法.
後來又在一台跑DSM5.2的DS1010+上碰到Volume crash, 因為有大量的檔案看得到, 卻複製失敗, 才開始研究修復Volume crash的方法.
先看NAS log, 裡面有一段說found bad sector, 於是我先掃bad sector, 大概掃了百分之四十, 沒找到一個, 我判斷應該不是真的bad sector, 就改走修復file system的路, 用fsck檢查了一遍, 確實有錯誤, 就讓fsck自動修復. 不過, 修復後還是顯示Volume crash, 檔案還是複製不出來, 於是我用mdadm修復SHR. 修復SHR之後Volume就可以正常使用了.

如果當初一開始建Volume時, 只選Basic, 沒用RAID或SHR, 就只是單純的ext4格式, 那用fsck修復file system後就應該OK了.

fsck和mdadm都要配合一堆參數, 每台NAS不一樣, 使用者得自己研究.

如果有用RAID或SHR, 就得用mdadm修復RAID. 程序比較複雜, 有好幾個步驟, 簡單來說:
第一步先進SSH, 並把DSM裡有各種服務, package, docker全關掉.
第二步輸入命令: cat /proc/mdstat, 確認有問題的那顆硬碟的狀態確實是Error. 記好硬碟設備的路徑, 像我的是/dev/md3和/dev/sdb5
第三步輸入命令: mdadm --detail /dev/md3, 找到一行Array UUID : (接著一串數字符號)
第四步輸入命令: mdadm --stop /dev/md3 和 syno_poweroff_task -d (這兩個命令是把所有使用硬碟的程序都關掉, 連WEBUI也不能連, 然後才能對硬碟RAID進行修復)
第五步輸入命令: mdadm -Cf /dev/md3 -e1.2 -n1 -l1 /dev/sdc3 -u(-u後面要填上Array UUID, 不含括號). 當畫面顯示"Continue creating array?" 按y, 然後就會得到"mdadm: array /dev/md3 started." 這樣就修復成功. 重開機後就發現Volume顯示正常, 而非crash, 而原來看得到卻不能複製的檔案也全部可以成功複製.

最後提醒, 這上面提到的方法, 只能修復特定問題的Volume crash, 不是所有的Volume crash都能修, 而且, 一旦用錯了, 會導致本來可用別的方法救回的資料變成救不回來. 所以, 這只能當成最後手段, 不想找資料救援服務, 想自己搞, 才要走這條路, 走了可能就沒法回頭了. 大概也是因為太複雜了, 所以群暉官方的建議不會提這個方法.
     
      
舊 2022-08-24, 03:19 PM #1
回應時引用此文章
ericshliao離線中  
wei0124
Basic Member
 

加入日期: Sep 2003
文章: 16
先記錄一下,希望不要有用到的一天...
 
舊 2022-08-24, 04:58 PM #2
回應時引用此文章
wei0124離線中  
u8526425
Elite Member
 

加入日期: Oct 2002
文章: 4,789
如果有條件
還是建議走定期備份
可以多一條簡單的還原方式
__________________
天之道,損有餘而補不足
人之道則不然,損不足以奉有餘
舊 2022-08-24, 05:00 PM #3
回應時引用此文章
u8526425離線中  
blair
Elite Member
 
blair的大頭照
 

加入日期: Jun 2001
您的住址: 地球
文章: 6,226
NAS外接一顆備份硬碟會更好...
__________________
~愛由一個笑容開始,用一個吻來成長,用一滴眼淚來結束。
當你出生時你一個人在哭,而所有在旁的在笑,因此請活出你的生命,
當你死的時候,圍繞你的人在哭而你便是唯一在笑。~
舊 2022-08-25, 10:55 AM #4
回應時引用此文章
blair離線中  
ericshliao
Major Member
 

加入日期: Aug 2004
文章: 136
其實, 對於資料沒有備份的人, 如果碰上了Volume crash, 問我要不要用上面的方法修復, 我只能說, 有機會修好, 但風險自負.

但如果是資料有備份的人, 碰上Volume crash, 我會強烈強議先用上面的方法修復Volume. 因為跑fsck和mdadm大概不用十分鐘. 而備份的資料要倒回NAS, 一秒傳100MB, 3TB的資料要花30000秒, 約8個多小時. 好處很明顯.
舊 2022-08-26, 05:09 PM #5
回應時引用此文章
ericshliao離線中  
d9166331
Power Member
 
d9166331的大頭照
 

加入日期: Sep 2003
您的住址: 新竹市
文章: 513
真的不知道群暉的機制,很容易發生crash,還是因為是黑的∼
這些教學我都有試過,沒有成功過
不過資料都還可以讀出來,轉移很麻煩
舊 2022-09-06, 10:51 AM #6
回應時引用此文章
d9166331離線中  


回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是09:13 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2024。