救出状況 -VMWare 仮想マシンとしてインストールした Fedora Core 1 で USB 接続の HD(NTFS)からのデータ救出-

 
 つことで、knoppix で救出を試みたところストールっつうか OS ごとフリーズされまくって話にならんかったので方法を変更。
 
 VMware 上で Fedora Core を立ち上げ、そこで USB デバイスを認識させてコピることに。
 ただ、Fedora はそのままでは NTFS を認識しないので、ドライバをぶちこんでやる必要がある。
 ドライバはここからカーネルバージョンに合うものを GET する。
 入れっぱなしのテスト用 Fedora だったので、kernel-ntfs-2.4.22-1.2115.nptl.i686.rpm を使うのだ。kernel-ntfs-2.4.22-1 までがファイルのバージョン番号で、2115.nptl がカーネルのバージョンと一致したものを選択しやう。i686 とかのは CPU のバージョンにあわせて。Pentium II 以降なら i686 で OK。
 rpm なので、「rpm -ivh kernel-ntfs-2.4.22-1.2115.nptl.i686.rpm」でインスコしてやれば OK。
 
 ホットプラグに対応させんのどうやるんだっけかとか調べるのは本筋じゃないのであっさりリブート。VM の設定で、USB が「フォアグラウンドの時は云々」にチェックされてるのを確認してデバイスを接続。起動シーケンス中に「New HardWare 云々」出てりゃたぶん大丈夫。
 ホットプラグのできるみたい。lsusb とかでデバイスが認識されているのを確認できればそのまま使える。
 
 んでもって、USB 経由のハードディスクは SCSI で認識されるんで、sd?X な感じで認識。VMWare仮想マシン構成で SCSI ドライブを作ってインスコしたシステムなので、外付けドライブは順に sdb1 と sdc1 に。もしそれぞれパーティション分けしていたら、さらに sdb2、sdb3・・・となりますな。
 それぞれマウントしてやるにはふつうにやるとファイル名が文字化けかましやがるんで、「mount -t ntfs -o iocharset=utf8 /dev/sdb1 /mnt/sdb1」みたいな感じで。あらかじめ /mnt/ 以下にマウントポイントになるようなディレクトリは掘っておくのは当然ですな。
 もうちょい便利なのは「mount -t ntfs -o iocharset=utf8,users /dev/sdb1 /mnt/sdb1」で合ってるかな。いちいち root でなくても扱える。
 「mount -t ntfs -o iocharset=utf8,uid=500 /dev/sdb1 /mnt/sdb1」みたいに uid 指定すると、指定された uid 持ってるアカウントでも扱える。
 
 てな具合で。参考にしたのは「WindowsのNTFSでフォーマットされたドライブを参照する方法」(WindowsNT/2000 と Linux の共存)ですた。