[PC] FreeNAS on DNRH-002 その後(当面停止!)

Submitted byshin on水, 2009-04-29 14:17
以前書いた様に、我が家では、イオシスの中古パソコン(DNRH-002)を使ってFreeNASで ファイルサーバーを立ち上げて、ここに写真や録画を溜めて共有するようにしていたんだけど、ある時嫁から 「写真が無くなってるよ」の指摘あり。確かに確認するとあるはずの写真群が無い、更に言うとフォルダ一部見えない様子
サーバーのコンソール画面を見ると、
g_vfs_done() .... error = 6
みたいな(記憶)エラーメッセージがあふれてる‥

つまり、コンソールにはエラーメッセージが出るんだけど、ファイルサーバー経由で参照している方にはエラーとしてではなく 単純にファイルやフォルダが見えなくなるという障害が発生しているらしい。更に、定期的にファイルサーバーを バックアップしているんだけど、そちらも見えないファイルやフォルダーでミラーリングしているので、見えなくなったファイル はバックアップ側からも削除さえっる、という最悪の状態が発生していることが判明。
「デジカメデータは1年位DVD-RAMに焼いてないぞ」「息子の"家庭講師ヒットマン"のアニメが消えたのをどう説明しよう」等々、しばしパニック状態。

‥‥‥以降、作業メモです‥‥

■■状況把握


(1)FreeNasコンソールから共有フォルダをアクセスしてみる
ネットワーク側から見えなかったファイルやフォルダーがディスク上には(少なくとも数個は)存在している様子
(2)FreeNasを落としてみる、となんだかんだとエラーが出る
Syncing disks, unodes remaining ... 2 2 2 2 ....... 2 2 timed out
Syncing disks, buffers remaining ... 73 193 2 ....
Giving up on 139 buffers
⇒ディスク自体か、それとも、秋葉原の路店で購入したSATA-USB変換ケーブルかどちらかの故障?

■■ディスクデータの保存


ともかくハードディスクからデータを復旧させていかないといけないんだけど、相手は、普段慣れ親しんでいるWindowsのFAT/NTFSや、linuxのext2/ext3とは違う、FreeBSD特有(?)のufsというファイルシステムなのでオペレーションミスでデータが消えてしまうかもしれない。
まず、通信販売で1Tのディスクを2つ(後から買い足すのが面倒なので余分を見て2つ)購入。
webで検索すると、 Easeus Disk Copy 2.3 というのがフリーで便利そうなのでこれで、新しく購入したディスクにコピー
ちなみに、普段使っているデスクトップ(SATA-IF付き)にハードディスク2台を接続して転送したんだけど、転送速度は1.7Gbyte/min,1Tのコピー完了に9時間かかったんだけど、途中エラーは全くでなかったので、ディスクのエラーではなさそうな感じ。
⇒やっぱりSATA-USB変換ケーブル?

■■ディスクデータのコピー(その1)from UFS to NTFS on windows(ufs2tool)


で、作業用のufsディスクをなんとか、windowsマシンで読み出す必要があるんだけど、まずは、直接windowsで読み出すことを試みる。
webで検索すると、ufs2toolというので出来そうなのだけど、drive/slice/partitionの指定の仕方がちがうのかマウント出来なかったのであきらめ。

■■ディスクデータのコピー(その2)from UFS to EXT2 on Knnopix


次にKnoppixでufsファイルをマウントできるはずなので頑張ってみたんだけど、うまくいかず。
そもそもBSDのパーティションの考え方をきちんと理解していないのに頑張ろうとしているのが問題なので、 BSDで頑張ることに方針変更

■■ディスクデータのコピー(その3)from UFS to FAT32 on FreeBSD(FreeNAS)


普段使っているデスクトップでFreeBSDを立ち上げてUSFを読み出し、 windows標準のFAT32(NTFSはreadしかサポートしていないらしいのであきらめ)に書き込むことを考えた (ネットワーク経由だと遅いので直接コピーしたかった)。
FreeNASのブートメッセージをみると、UFSディスクが /dev/ad4p1、FAT32ディスクが /dev/ad6s1 (なぜ同じパーティションなのに"p"と"s"の違いがあるのか不明)だったので、
mount /dev/ad4p1 /mnt/UFS
mount -t msdos -o large /dev/ad6s1 /mnt/FAT32
とするとマウント、FAT32へのR&Wが可能に。
これで解決?と期待したんだけど、簡単なファイル名(英語だけのファイルや、短い日本語ファイル)はコピーできるのに、 長い日本語ファイル名を持つファイルはエラーが発生してしてしまって駄目。くやしい!
※ブートメッセージ(dmesgコマンドで再確認可能)以外にも、/dev/の下を見ると大体わかる

■■ディスクデータのコピー(その4)from UFS on FreeNAS to NTFS on Windows(嫁のパソコン)


という訳で、ディスクのダイレクト接続はあきらめて、FreeNAS機能を使ってコピーすることに。
我が家のSATA対応機種は、確認に使った私のデスクトップと、(壊れているはずの)SATA-USB変換ケーブルと嫁のデスクトップだけ。
まず、嫁のデスクトップ(iDEQ 210Vにバックアップ側のディスクを接続しようとしたのだけどディスクを認識しない。
いろいろ調べると、昔のVIAチップ(今回はVT8237)はSATAの旧規格(SATA1.0,1.5GB/s)しかサポートしておらず、最近の SATA2(3GB/s)には対応していないらしい。対応させるためには、日立のFeature toolや、SAMSUNG のユーティリティ (前者はメーカを選ばないのに対して後者はSAMSUNG専用。日立偉い!)でスペックダウンさせる方法があるらしいのだけど、 なぜかツールがSATAドライブを認識してくれなかったのであきらめ(もうかなり疲れている)。

■■ディスクデータのコピー(その5)from UFS on FreeNAS to NTFS on Windows w. SATA変換コネクタ via SMB


ってな訳で、SATAが使えるのは私のデスクトップだけになってしまったんだけど、もしかしたら冷やしたら使えるかも? という藁にすがる思いでSATA変換コネクタ経由でハードディスクを繋ぐと‥‥あれ?動く。
どうも,SATA変換コネクタは壊れていなかったみたい。
で、DNRH-002をCD-ROMブートでFreeNASで立ち上げて、私のパソコンにコピーできるかどうか試したら‥‥あれ?動く。
今回のDNRH-002/FreeNASの不調は、FreeNAS本体を格納していたSSDがへたっていたかららしい。
# すごい回り道をしてしまった

ちなみに、FreeNASのconfigファイルをダウンロードするとシステムリセットが必要なので、 CD-ROMブートで過去のconfigファイルを利用することは出来ない。
CD-ROMブートで設定したのは、
-- consoleから --
・Assign Interfaces: fxp0
・Set Lan IP address: 192.168.0.100 / 24 / 192.168.0.1 / 192.168.0.1 / !IPv6
-- webから --
・Disks/Management: UFSディスクを登録(当然フォーマットしない)
・Disks/Moutpoint/Management: 登録したディスクをマウント( EFI_GPT, UFS, sharename, ftp/ftp )
・Disks/Moutpoint/Fsck: 念の為にディスクチェック(umoutoしてからチェック)
・Services/CIFS.SMB/Settings: enable / workgropup / CP932 / UTF-8
・Services/CIFS.SMB/Shares: name, comment, path

■■今後


で、windows-NTFS上に共有ファイルをリストアすることが出来たんだけど、
ufsファイルシステムにデータを置くと大変なことがわかったので、当面はファイルサーバーをあきらめて、将来的には (windowsでマウントできる)ext2ファイルシステムを使ってlinuxでSMBサーバーを立ち上げるつもり。