
我有一個朋友的 NAS 陷入了韌體升級過程,它是基於 Linux 的,我相信它在 4 個磁碟上使用軟體 raid-5,使用mdadm
/dev/md*
.
產品客戶支援只是告訴如何重新安裝工廠固件,但所有資料都會遺失。
這位朋友已經聯繫了專業的恢復服務,但他們要求一些錢(不便宜)。
我對 Linux 很有信心(過去用來為嵌入式裝置編寫韌體),但對 raid 不太有信心。
我想將磁碟連接到 Debian 電腦並將 raid 掛載為唯讀,如果我理解正確的話,raid 及其配置很可能會被核心自動檢測到(或使用mdadm
),但是如何確保沒有資料寫入磁碟,安裝raid 的步驟是什麼ro
?
答案1
首先插入磁碟並運行:
mdadm --examine /dev/sdb1
之後,假設它們是可讀的,您應該能夠使用以下命令重新組裝:
mdadm --assemble /dev/md/... /dev/sdxn
如果您真的很擔心,請將磁碟放在主機上,然後在運行虛擬機的用戶只能讀取磁碟的配置中使用虛擬機,但我懷疑這是否可行,因為磁碟上的元資料需要更新。
不過,我想到了另一個想法,如果您有空間、dd
本地磁碟並可以播放這些文件,或者執行以下操作來保存:
dd if=/dev/sdxN | gzip > /content/sdxN.gz
答案2
我必須做的事情比預期要少得多。
在連接磁碟之前,我已經安裝了mdadm
軟體包並用於dpkg-reconfigure mdadm
在任何 raid 上停用任何自動功能。
連接磁碟後,Debian 核心 (3.16.0-4-amd64) 在啟動時偵測到 raid。
/proc/mdstat
:
Personalities : [raid6] [raid5] [raid4] [raid1]
md126 : active (auto-read-only) raid1 sdb1[0] sdd1[3] sde1[2]
20955008 blocks super 1.2 [4/3] [U_UU]
md127 : active (auto-read-only) raid5 sdb2[0] sdd2[3] sde2[2] sdc2[1]
5797132800 blocks super 1.1 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
unused devices: <none>
我不知道什麼md126
是,正確的是md127
。
我嘗試掛載/dev/md127
到臨時目錄但失敗並出現錯誤:mount: unknown filesystem type 'LVM2_member'
我已經安裝了lvm2
軟體包並使用lvmdiskscan
命令lvdisplay
來顯示有趣的捲。
# lvmdiskscan
/dev/14b46bb0_vg/lv53a3800a [ 5,40 TiB]
...
# lvdisplay
--- Logical volume ---
LV Path /dev/14b46bb0_vg/lv53a3800a
...
LV Size 5,40 TiB
...
然後只要安裝就可以了。
mount -o ro /dev/14b46bb0_vg/lv53a3800a /tmp/raid/