
ファームウェアのアップグレード プロセスでスタックしている NAS を持っている友人がいます。これは Linux ベースで、4 つのディスクでソフトウェア RAID-5 を使用していると思いますmdadm
/dev/md*
。
製品のカスタマーサポートでは、工場出荷時のファームウェアを再インストールする方法を教えてくれましたが、すべてのデータは失われます。
友人はプロの復旧サービスに連絡しましたが、彼らはいくらかのお金を要求しています(安くはありません)。
私は Linux にはかなり自信がありますが (以前は組み込みデバイス用のファームウェアを書いていました)、RAID についてはあまり自信がありません。
ディスクを Debian PC に接続し、RAID を読み取り専用としてマウントしたいと思います。正しく理解していれば、RAID とその構成はカーネルによって (または を使用してmdadm
) 自動的に検出される可能性が高いのですが、ディスクにデータが書き込まれていないことを確認する方法と、RAID をマウントする手順は何ですかro
?
答え1
まずディスクを接続して実行します:
mdadm --examine /dev/sdb1
その後、読み取り可能であると仮定すると、次のコマンドを使用して再アセンブルできるはずです。
mdadm --assemble /dev/md/... /dev/sdxn
本当に心配な場合は、ディスクをホストに配置し、VM を実行しているユーザーがディスクへの読み取りアクセスのみを持つ構成で VM を使用しますが、ディスク上のメタデータを更新する必要があるため、これが機能するかどうかは疑問です。
ただし、別の考えが思い浮かびます。スペースと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/