2012秋のファイルサーバ復旧 16 HDDからディスクイメージダンプ

インストールが終わったのでddでまるごと吸い出せるかどうかを試してみます。
LiveUSBを作成しなきゃいけないと思ってましたが、Windows上のVirtualBoxでpuppyのISOを起動してやればいいということに気づきました。

VirtualBox を起動して新規に仮想マシンを作成。
puppy用はないのでLinuxの標準。
メモリとかも適当でOK。
後でCentOSにファイル転送するためにNICの設定でブリッジアダプタを追加しておきます。

設定が終わったら、吸いだしたデータを一時的に置くために仮想ディスクを作成します。
2Gのデータを吸いだしておく場所なのでとりあえず適当に8Gで作成します。

そして起動。
何事も無く起動できたら追加した仮想ディスクをフォーマットします。

デスクトップにある「端末」をクリックして色々コマンドを入力します。

# ls /dev | grep sd
isdn0
isdn1
isdnctrl
isdnctrl0
isdnctrl1
sda



とでてきました。
sdaとして仮想ディスクは認識されているようなのでフォーマットします。

# mkfs.ext3 /dev/sda
Proceed anyway? (y,n) y

終わったらマウントします。

# mkdir /root/aaaa
# mount /dev/sda /root/aaaa

準備ができたのでUSBでCentOSのはいっているHDDを接続します。
接続するとデスクトップにUSBメモリっぽいアイコンが2つでてきます。
これはきっと / と /boot なのでしょう。

確認してみます。

# ls /dev | grep sd
isdn0
isdn1
isdnctrl
isdnctrl0
isdnctrl1
sda
sdb
sdb1
sdb2
sdb3

sdbがHDDのようです。
ではddしてみます。

# dd if=/dev/sdb of=/root/aaaa/img.dump

スゴク時間がかかるなあと思って途中で別ウィンドウでダンプファイルを見てみると2.6Gまで行ってました。
ということはこれはパーティションが設定されていないところまでダンプしようとしているということです。

このHDDは320Gもあるので8Gの領域には入りません。ストップです。
コレじゃダメなのでパーティション1つずつやってみます。

# dd if=/dev/sdb1 of=/root/aaaa/sdb1.dump
# dd if=/dev/sdb2 of=/root/aaaa/sdb2.dump
# dd if=/dev/sdb3 of=/root/aaaa/sdb3.dump

ddでdump完了

できました。
できたデータをどうやってWindowsに持っていくかですが、VirtualBoxの共有フォルダはいまいち使い方がわからないので使ってません。
今できるとしたらSambaサーバにファイルを置くこと。
でもPuppyからSambaサーバにつなぐのはなんだかめんどくさそう。
となるとCentOSのサーバにscpでファイルをコピー。

そのためにはHDDを引っこ抜いてCentOSを起動、そしてscpでファイルを転送することになります。
起動し終わったらscpします。

まずpuppyでネットワークに接続する必要があるので黒電話みたいなアイコンの「接続」をクリック、ウィザードに従ってeth1をDHCPで有効にします。
これで192.168.0.5がふられたのでネットワークに入れました。

そしてscpしてみます。

#scp /root/aaaa/sdb1.dump root@192.168.0.30:sdb1.dump

がいつまで待っても反応がありません。
pingをしても帰ってくるし、sshだったらログインできる。
scpだけ弾かれているのかと思ってwindowsからwinscpでscp接続してみるとちゃんとつながりました。
よくわからないのでこの方法は諦めます。

puppyをFTPサーバにしてwindowsから取りに行けば・・・と思っていたら

メニュー > ネットワーク > pnethood samba共有

というのが!!!
これってsambaサーバになるってこと?

が、実行してみるとこれはsambaクライアントでした。


pnethood windows共有を開く

でもこれでもアクセスできるなら、ということでD525MW(CentOSのサーバ)のタブを見てみると3つの共有ディレクトリがでている!!

ユーザ名とパスワードをいれて「接続」を押してみるとなんとつながった!!

ファイルサーバに接続完了

そして「参照」を押すとディレクトリが開いた!!!
ではファイルをコピーしてみます。
ちとファイルがでかいので時間がかかりそうな気がしますが、待ちます。

ファイルサーバにファイル転送中

待つこと10分。
無事転送が完了しました。意外と早かった。

適当につけた名前だったので日付とかつけて移動しておきます。
puppyの中身はもういらないデータしかないのでそのままシャットダウンします。
でも8Gの仮想ディスクは残ったままなので次回消します。

これでpuppyのddでdumpできることがわかったので、次回はpuppyをusbブートにしてファイルサーバ実機で起動、ストレージ用ドライブをマウントしてUSB接続のSSDにdumpしたものを復元、SSDから起動、なんてやってみようと思います。

しかし、この場合ってSSD上にパーティションを切っとかないといけないのか?
その場合のサイズはどうするのか?
など、初心者っぽい疑問が幾つかあるのでその辺も調べならがらやっていきます。

コメント

  1. この手順だけじゃMBRがバックアップ取れてませんでした。
    そのことに気付いた記事はこちら。
    メモ: 2012秋のファイルサーバ復旧 17 puppy linux LiveUSB作成

    返信削除

コメントを投稿