hoge diary - November 23, 2004

[Linux] captive を試してみました

captive という,ntfs.sys 経由で NTFS のパーティションを Linux でマウントするためのツールがあります.

インストールして使ってみました.結論を言えば,私はこれでパーティションを破壊しました.

% sudo mount -t captive-ntfs /dev/sda2 /mnt/windows

日本語のディレクトリが文字化けするものの,読み出しは成功のようです.オプションがサポートされているか不明でしたが.とりあえず iocharset を指定してみます.

% sudo mount -t captive-ntfs -o iocharset=euc-jp /dev/sda2 /mnt/windows

やっぱりサポートされていないようです.文字化けしたままです.

NTFS はファイル名に UTF-8 を使用しているので,試しに screen で "kanji utf8" を指定したところ,一応表示してくれました.UTF-8 のファイル名をそのまま出力しているようです.

ファイル名はさておき,肝心の書き込み動作がどうなっているかを試してみます.

まず,書き込みを有効にしてマウントします.マニュアルによれば,"--rw" と "--sandbox-server" を指定すればいい,とのこと.

% sudo mount -t captive-ntfs -o --rw,--sandbox-server=/usr/sbin/captive-sandbox-server /dev/sda2 /mnt/windows

マウントは成功しました.次に適当なファイルを編集してみます.

% sudo vim /mnt/windows/boot.ini

書き込みに成功したようです.

それではマウントを解除して再起動.

% sudo umount /mnt/windows
% sudo reboot

boot.ini が壊れている,旨のエラーが...! Oh! No!

CD からブートして回復コンソール直行!

C:\WINDOWS>chkdsk

壊れたファイルは found.000 に化けてくれましたが... boot.ini がないのでは起動できません.回復コンソールから boot.ini の再生成を試みます.

C:\WINDOWS>bootcfg /rebuild

ディスクが壊れているので... 云々と言われて愕然.chkdsk を何度実行してもダメなので,止む無く再インストールへ...

ホームディレクトリが丸ごと別パーティションになっているので(かつこのパーティションは captive で触っていないのです),Windows 再インストール後の復旧は楽チンでした.

ディレクトリに記録された所有者の SID と ACL の SID,および NTUSER.DAT に記録された SID を書き換えるだけでいいのです.

もとい,最初は NTUSER.DAT の方に気づかずに NTFS の SID だけを更新して「復旧できん! 何故だ!」と悩んでいましたが... やり方さえ分かってしまえば,復旧は楽でした.

しばらく captive を使うのはやめておきます.

コメント

名前(何でも可):

テキスト(http:// を含む内容は投稿できません):

トラックバック

トラックバック URI: https://www.pakunet.jp/hoge/trackback/2004112301

トラックバックはありません.


Valid XHTML 1.1! Valid CSS!
© 2004-2009 ぱくちゃん.
Last modified: Sun Nov 04 11:59:24 JST 2007