( 2021.10.24. 更新 )
● 基本 ● |
1 | ( 内蔵ストレージに ) OS 「 Ubuntu 」 + アプリ 「 mdadm 」 をインストしたPC ( = USB3.0以上推奨 ) に、対象のRAID 1ディスク ( × 1個 ) を外付け接続 |
マウント後、別の外付けストレージに データをコピーする |
2 | 持ち歩くノートを ストレージ交換しやすいものにし、Ubuntuをインストした別の内蔵ストレージを持ち歩けば ( 出先で ) 障害対応しやすい |
3 | Windows 用アプリ 「 復旧天使 Standard RAID 」 ( = RAID 0 のデータを抜くには 強力なツール ) でも、RAID 1 のデータ抜きは可能 |
↑ ただし、DISK 1 + DISK 2 の両方が正常動作している必要があるため、障害対応に向かない |
↑ DISK 1 + DISK 2 が無傷であり、筐体だけが死亡するなんてケース 逆にレアだ |
↓ くわえて 復旧天使で 以下のケースもあった |
現場 = PO光学 様 : TB市 |
状況 = 赤ランプがついているし、アクセスも不安定 |
症状 = 外づけに2台を接続して 普通にデータは抜けたが、データが 1か月以上 古い |
原因 = DISK 1 が 1か月以上 前に止まっていて、復旧天使が抜いたのは DISK 1 のデータだった |
↑ 逆に ユーザが ( 無意識に ) アクセスしてデータ更新していたのは、DISK 2 だった |
処置 = DISK 2 をUbuntuで処理したら、普通に最新データが抜けた |
備考 = HDD × 2台とも Regeneでヒットなし |
● 下準備 ● |
0 | まっ先に 対象 HDD を dd クローン し、クローン 先 で 作業する ( = SSD 推奨 ) |
↑ 対象 HDD が ( たとえ Regene で ノーヒット でも )、データ 抜き 操作を すると 微妙に 不調で、一部の データが 抜けなかった ケース あり |
↑ その ケース では クローン 先 で 同じ処置をしたら、普通に 全 データ が 抜けた |
ちなみに dd クローン で エラー が 出たら Regene する 価値はあるが、障害 HDD に Regene ( = 書込み操作 ) を するのは リスク あり ( = 不調 HDD に、とどめを刺す 可能性 あり ) |
↑ 一部 エラー が 出ても、まずは dd クローン ストレージ を 作成する |
1 | USB3.0のPCに Ubuntuをインスト |
↑ 現場では 18.04を使用 |
2 | 充分にOSアップデートしてから、アプリ 「 mdadm 」 をインストする |
↓ 「 Ubuntuソフトウェアセンター 」 で アプリ 「 Linux MD アレイ ( ソフトウェア Raid ) 管理ツール 」 がヒットすれば、それが 「 mdadm 」 と同じものだが、( OSアップデートもふくめ ) 以下のコマンドで行ったほうが、確実 |
3 | ↓ 以下が、OS アップデート + アプリ 「 mdadm 」 を インストする コマンド |
[1]. アプリ [ 端末 ] ( = グノーム・ターミナル ) を、起動する |
↑ Alt + F2 → gnome-terminal |
[2]. sudo (スペース) apt (スペース) update |
[3]. sudo (スペース) apt (スペース) upgrade |
[4]. sudo (スペース) apt (スペース) install (スペース) mdadm |
● データを 抜く 手順 ● |
1 | 対象のHDD × 1個を、USB接続する ( = USB3.0以上を推奨 ) |
2 | アプリ 「 端末 」 ( = グノーム・ターミナル ) を起動する |
↑ Alt + F2 → gnome-terminal |
3 | dmesgで、対象HDDのデバイス名を予想する |
↑ 普通は 「 sdb 」 |
Shift + Ctrl + F で、窓 [ 検索 ] を開いて、「 sdb 」 を検索したほうが早い |
↑ 容量が確認の手がかり |
4 | ↓ partedで、データのあるパーティション ( = 容量が最大のパーティション ) を確認する |
sudo (スペース) parted (スペース) -s (スペース) /dev/sdb (スペース) print |
↑ ある現場では 「 6 」 ( = sdb6 ) だった |
正常HDDならほぼ一瞬で処理されるが、ある障害HDDは妙に時間がかかった |
↑ その障害HDDは、そのまま進めても結局 データが見えなかった |
↑ やはり前処理で 「 Regene + 別の正常ストレージへ ddクローン 」 は必須だ |
5 | ↓ mkdirで、一時的に使用するフォルダを作成する ( 例 = 初期からあるディレクトリ 「 media 」 の下部に ) |
sudo (スペース) mkdir (スペース) /media/itiji |
↑ 結果 「 〜 ファイルが存在します 」 が表示した場合は、以前に作成したフォルダが残っているので 「 sudo rm -rf /media/itiji 」 で削除してから |
6 | ↓ chmodで、一時フォルダを読み書き自由にする |
sudo (スペース) chmod (スペース) 777 (スペース) /media/itiji |
7 | ↓ mdadmで、すべてのRAIDアレイを停止する |
sudo (スペース) mdadm (スペース) --stop (スペース) --scan |
8 | ↓ mdadmで、一時的なRAIDアレイを構築する |
sudo (スペース) mdadm (スペース) --assemble (スペース) /dev/md0 (スペース) /dev/sdb6 |
↑ ここで、結果 「 /dev/md0 has been started with 1 drive ( out of 2 ). 」 が表示すれば、先に進められる |
↑ 逆に、結果 「 /dev/md0 assembled from 1 drive - need all 2 to start it ( use --run to insist ). 」 が表示した場合、先に進められないので中断し、先に ↓ 以下の処置を行う |
→ ● 結果 「 〜 need all 2 〜 」 が表示した場合 ● |
9 | ↓ mdadmで、RAIDアレイ ( = 一時利用の ) を有効にする |
sudo (スペース) mdadm (スペース) --run (スペース) /dev/md0 |
10 | ↓ mountで、RAIDアレイ ( = 一時利用の ) にマウントする |
sudo (スペース) mount (スペース) /dev/md0 (スペース) /media/itiji |
11 | ( 成功すると、デスクトップ画面に、対象HDDが表示される ) |
12 | 別ストレージ ( = Windowsで 普通に認識されるフォーマットがされた ) をUSB接続し、データをコピーする |
● 応急処置 の 例 ● |
1 | 外付けHDDに、全データをコピー |
2 | 現場PCに接続して、NASの共有フォルダと同じ共有設定にする |
↑ 例 = 共有フォルダの共有名を 「 share 」 に |
3 | そのPCのIPをNASと同じに変更したら、他PCでは設定変更が不要だった |
↑ 初回アクセス時のみ、30秒ほどかかったが |
↑ NASに名前アクセスしていたら もうひと手間かかったが、IPアクセスだったのが幸いした |
● 備考 ● |
1 | 別の話だが、HDD上にOSを乗せる仕様は怖すぎる |
OSがROMに乗っているなら、連続停電もあまり怖くない |
しかしHDD上に乗っていると、連続停電ぐらいで 「 OS破損 + 起動不能 」 になっても不思議はない |
↑ ハード故障がないのに、ソフトが破損しても不思議はない |
2 | 「 サーバとNASぐらい、UPSから電源を取れ 」 という話ではあるが、SOHOはそこまで備えていない現場のほうが多い |
3 | ↓ Synology ( = シノロジー ) のNASキット ( = ストレージ別売り ) などは、OSが基板に乗っている |
その他 >さ 行 >低頻度 >Synology > |
● 結果 「 〜 need all 2 〜 」 が、表示した 場合 ● |
● 基本 |
1 | ↓ コマンド 「 mdadm 」 で一時的なRAIDアレイを作成するさい、結果が2つに分かれる |
[ A ] = 「 /dev/md0 has been started with 1 drive ( out of 2 ). 」 = 先に進められる |
[ B ] = 「 /dev/md0 assembled from 1 drive - need all 2 to start it ( use --run to insist ). 」 = 先に進められない |
↑ 結果 [ B ] の場合 --run しても、「 /dev/sdb6 is bussy - skipping 」 で 進められない |
2 | ちなみに、DISK 1 + DISK 2 が正常に RAID 1 動作した状態で、正常に電源を切った DISK 1 でも 結果 [ B ] になる = 進められない |
そこで DISK 2 を抜き、DISK 1 のみの状態でNAS起動すると 「 デーグレード モード 」 に切り替わり、その後は 結果 [ A ] に切り替わる = 進められる |
( たとえば DISK 1 が死亡しているなら )、DISK 2 ( のみ ) をスロット 1に入れても ( NAS動作はするし )、結果 [ A ] になる = 進められる |
↑ 当面は この手順 ( = 物理的な処置で デグレード モードに切り替える ) で しのぐ |
3 | Ubuntuのコマンドでデグレードできれば スタイリッシュなので、今後の宿題 |
↑ ( コマンドが確立しないと ) もし筐体が死亡したら、わざわざ同型筐体を入手しなければならないので 面倒 |
● 備考 |
1 | 「 ● 基本 ● 」 にある PO光学 様は、紛らわしかった |
↑ DISK 1 は1か月前に止まっていて、DISK 2のみデータ更新されていた |
↑ Ubuntu処理すると DISK 1 は結果 [ B ] で、先に進められなかった ( = データ更新されていないくせに、デグレードにも切り替わっていない ) |
↑ 逆に、最新データのあるDISK 2 は結果 [ A ] で ラッキーだったが |
一方、そのDISK 1 も 「 復旧天使 Standard RAID 」 なら、普通にデータが抜けた |
↑ ただし、DISK 2 とセットで処置しても、抜けたデータは ( 1か月 古い ) DISK 1 のデータのみなので 用は足りなかったが |