NASサルベージの記録
NASが起動できなくなってしまったので、ディスクからデータをサルベージすることに。
とりあえず手順などを記録として残しておく。
最初にサルベージ作業でのトラブルをまとめておきます。
・管理者でないとできないことがいろいろ。administratorsグループに属しているだけではだめらしい。
→コマンドプロンプト、VBoxとも管理者で実行しましょう。
・VBoxでWindowsと共有するためのの機能が、管理者権限で起動したときにインストールできない
事象発生。
→Win7を再起動して、VBoxをユーザモードで動かして、
追加機能をインストールすることでなんとか解消。
では、サルベージ作業の記録へ。
■準備(今回の作業で使ったもの)
・デスクトップPC
OS:Windows 7 ultimate
VM:Oracle VirtualBox
ゲストOS:Ubuntu 12.04.4 LTS
・NASから取り出したHDD (NASはIOデータのHDL2-A2.0です)
・HDDをデスクトップのSATAに接続するためのSATAケーブル
・HDDに電源共供給するためのケーブル
・HDDに電源共供給するためのACアダプタ
* これはデスクトップPCから取れれば必須ではない
* 今回、当初USB接続できるキットを使う予定だったので、利用してみた。
(補足)
・Oracle VirtualBoxは下記から入手してインストール。
http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html?ssSourceSiteId=otnjp
今回利用したのは、VirtualBox-4.3.12-93733-Win.exe
・Ubuntuは下記から.vhdファイルを入手する。
http://www.ubuntulinux.jp/download/ja-remix-vhd
ubuntu-ja-12.04-desktop-i386-vhd.zip (md5sum: f9a15fba813656f6c2d5719496d7c997)
・デスクトップPCにNASのHDDをSATAケーブルで接続
・Windows7を起動
※環境面の値をまとめておく。
・NAS HDDをWindowsでは「ディスク2」として認識する。
・上記をVBoxからは「linkstationHDD.vmdk」で認識させる。
・NAS HDDのマウント先は「/mnt/nas」
・Windowsの共有フォルダ(NAS HDDのデータをサルベージする先)は「F:\share」
・Windowsの共有フォルダのマウント先は「/mnt/winfolder」
■NASのHDDをUbuntuに認識させる。
(※今回、UbuntuはすでにVirtualBoxに入っていたものを使うので、認識させる作業から)
◆Windowsでの作業
・マイコンピュータを右クリックし管理を選択
・記憶域>ディスク管理でNASのHDDが何番のディスクとして認識されているかを確認。
(今回は「ディスク2」で認識されていました)
VBoxでXFSフォーマットの物理ディスクのマウントできるようにする
・スタート>すべてのプログラム>アクセサリ>コマンドプロンプトを右クリックで、
管理者として実行する。
・Vboxのインストールドライブ・ディレクトリに移動(D:\Program Files\Oracle\VirtualBox)
> D:
> cd D:\Program Files\Oracle\VirtualBox
・下記のコマンド入力
> VBoxManage.exe internalcommands createrawvmdk -filename linkstationHDD.vmdk -rawdisk \\.\PhysicalDrive2
※物理ディスク2をlinkstationHDD.vmdkとう名前でVBoxで認識できるようにするためらしい。
◆VBoxでの作業
・スタート>Oracle VM VirtualBoxを右クリックで、管理者として実行する。。
・VirtualBoxマネージャーで、Ubuntuのディスクへの設定で、登録したHardDiskをSATAで登録する。
(linkstationHDD.vmdkをSATAに追加する)
・Ubuntuを起動する。
・ターミナルを開き、下記にコマンドを実行する
> cat /proc/partitions
※容量等から、NASのHDDが何で認識されているかを確認(今回はsdb6で認識されていた)
(NASのHDD登録前の状態も確認しておくとわかりやすい)
・NAS HDDのマウント場所を作成する。
> sudo mkdir /mnt/nas
・NAS HDDをマウントする。
> sudo mount -t xfs /dev/sdb6 /mnt/nas
・マウントしたディスクの中身を確認してみる。
> ls
AppleDB Program Files dlna dms dropbox remotelink2 share
shareの配下を確認すると、NASで利用していたときのディレクトリ、ファイルが確認できた。
★これで、NAS HDDをubuntuから利用できるようになった★
★次に、サルベージしたファイルの置き場所を作る
・Ubuntuが起動しているVBoxのウィンドウで、
デバイス>共有フォルダの設定を選択
フォルダ名:share
フォルダのパス:j:\share
で設定する。
※最初の時、Guest Additions~といってきた場合は、デバイス>Guest Additions~を先に実行する。
もし、管理者でうまくいかないときは、一度、非管理者でVBoxを実行して同作業を。
・共有フォルダのマウント場所を作成する。
> sudo mkdir /mnt/winfolder
・共有フォルダをマウントする
> sudo mount.vboxsf share /mnt/winfolder
あとは、ひたすらコピー。
> cp -p -r /mnt/nas/ /mnt/winfolder/
(* 実際ここまで大胆にはできませんでしたが・・)
[HDD2]
HDD1と同様の作業を行うだけですが、mountしようとしたとき、
「スーパーブロックが読めません」ときた。
google先生に確認して、
http://pc.casey.jp/archives/153903576 を参考に、
> xfs_check /dev/sdb6
を実行しようとしら、インストールされていなかったので、インストール
> apt-get install xfsprogs
インストール後、、チェックすると、xfs_repair
を実施しろときたので、
> xfs_repair -Lv /dev/sdb6
を実施。その後mountできるようになった。
mount後は、ひたすらコピー。
(といいつつ、HDD1にない部分だけをコピーしました)
ファイル・ディレクトリの数を確認したい時は下記のコマンドを使う。
・サブディレクトリ含めてファイル数のカウント
> ls -laR | grep -c '^-'
・ディレクトリ数
> ls -laR | egrep -c '^d.+[^.]$'
あくまでファイル数であって最新かどうかはわからない。
更新するファイルが含まれているようであれば、最後まで使用していたディスクから
取り出したほうがよいでしょう、
これで無事サルベージは終了しました。
めでたし、めでたし。