6. Windows95 のパーティションのバックアップ

さて、ここで少し話が変わります。ご存知のように、Linux では Windows95 の パーティションを読めますので、一見 tar や afio を使って Windows95 の バックアップが取れると思うでしょう? これができれば、Windows95 に 付属している役立たずのバックアップツールよりよほど便利なはず。 しかし、実際にやってみると問題が出ます。日本語 Windows95 で頻繁に使われ ている「日本語のファイル名」でひっかかるのです。バックアップを取るときは 一応取れているみたいなのですが、戻すときエラーになります。

くっそー MS め、日本語ファイル名なんか使うなよなー、とぼやいていたところ いいモノを見つけました。 川口 浩さんのページにある「 VFAT を日本語ファイル名に対応させるパッチ」 です。小柳 雅明さんと川口さんが作られたパッチです(多謝!)。 このパッチをあてたカーネルを使うと、上の問題は起きないのですね。 「半角カナを全角カタカナに変換する」する機能は、バックアップの用途では オフにしといたほうがいいようです。

今この文書を書いてるノート PC は先日ディスクの換装を行なったのですが、 そのとき、この方法を試してみました。以下手順です。

  1. Windows95 から Win95 のブートフロッピーを作っておきます。そのフロッピーに fdisk.exe をコピーしておきます。念のため format.comsys.com もコピー。

  2. VFAT パッチをあてた Linux カーネルを立ち上げ、Windows95 のパーティションを afio + gzip でバック アップを取ります。筆者はバックアップ・メディアとして携帯用の PD を使いました。 もちろん Linux のほうも同時に取っておきます。

  3. ディスクを換装する。

  4. Windows95 のパーティションを切る。作っておいた Win95 のブートフロッピーで 立ちあげ、fdisk でパーティションを切り、format.com でフォーマットする... のが普通にやりかたでしょうが、筆者は DOS/Win の fdisk を 信頼していないので、Linux でやってしまいました。ただし、Windows95 で拡張 パーティションを使うときは Windows95 の fdisk で切らないと だめかもしれません。

  5. Linux のほうでパーティションを切るときは、fdiskmkdosfs の入った boot/root フロッピーで立ち上げてから (Linux の) fdisk でパーティションを切ったのち、mkdosfs で FAT のフォーマットをします(これは FAT16 だよね)。

  6. どっちの OS でパーティションを切ったにせよ、バックアップデータをリストア するときは、VFAT パッチをあてたカーネル入りの boot/root フロッピーを使って Linux を起動します。このフロッピーは PCMCIA の SCSI カードや afio を使えるようにしてあります。Windows95 パーティションを vfat でマウントし、afio で PD から Windows95 データを戻します(もちろん Linux のほうも)。

  7. これだけでは Windows95 はブートしないので、作っておいた Win95 の ブートフロッピーで立ち上げ、「fdisk/mbr 」を実行します。

  8. 立ち上げなおすと、こんどは Windows95 がブートします。

立ち上げのとき「 c:\windows\system\ddem.dll が修復される 必要がある」というメッセージが出ますが、無視して OK を押して行くと無事立ち上 がります。 実用上問題ないのですが、このメッセージはときどき出るようになったので、 念のため Windows95 の修復インストールをすると出なくなりました。 この現象が、上記のバックアップの方法によるものなのか、私のノート PC (Let's Note) に固有の問題なのか、知らないうちにディスクのジオメトリを変えられる と Win95 はこうなってしまうものなのかは定かではありません。

もっとも、筆者はこの方法で完全に Windows95 のパーティションのバックアップを 取れるかどうか自信があるわけではありません。今のところ支障なく動いている ように見えますが、なにしろ筆者は Windows95 はあまり使っていないので。 こういうやり方もある程度の話として聞いておいてください。