Windowsの起動ドライブをコピーするには
 
Q: Windows95/98を使用しており、これまでの環境をそのままに、より大容量のハードディスクなど別のドライブに中身を移し替えたい。良い方法はないものでしょうか?

A: MS-DOSでなくWindows95/98にあるXcopy(Xcopy32)であれば長い名前に対応しているため、Windows95/98を起動してからのコピーなら問題ありません。
 

1 新しいHDDをハード的に正しく接続して下さい。  
 IDEでスレーブやセカンダリに接続するならそのようにジャンパピンなどをセットします。今までのHDDはそのままにしておきます。そしてWindows95/98を起動します。SCSIのI/Fも入れてSCSIのドライブを増設した場合には、ここで  そのドライバが自動でインストールされるか、ドライバのディスクを要求されることがあるでしょう。ここではこれ以上のハード固有の説明は省きます。

2 新しいHDDには初期化や領域確保(FDISK)が必要です。  
 Windows95/98を「コマンドプロンプト起動」してから適宜FDISKコマンドを走らせて、必要な大きさの区画(パーティション)を設定  して下さい(*註1)。 新しいドライブが増えることになりますので、Windows95/98を終了し、再起動て下さい。なお、PC-98では初めて使用するディスクドライブの場合には、FDISKの前に必ずDISKINITコマンドで先に初期化を行って下さい(この項はAT互換機は関係ない)。そうしないと正しくWindows95のディスクドライバが認識しないことがあります。 Windows98で大容量HDDをFDISKする際には、下記の情報も参照して下さい。

3 再起動したら、新しく増えたドライブをFORMATします。  
 今までWindows95/98の入っているドライブは、Aドライブと仮定します。新しいドライブは x:として話を進めますが、お使いの環境にあわせて該当するドライブ名と差し替えて読んでください、くれぐれもドライブ名を  間違わないように、マイコンピュータなどでよく確認して下さい。MS-DOSプロンプトから、  FORMAT  x: /s  と打って下さい。システム転送のオプションを付けておきます。それが了したら、またWindows95/98を再起動して下さい(再起動しなくても いいのだが、この時点ではMS-DOS互換ドライブなので遅い)。 SCSIで大容量のディスクを使用する際は、下記の情報も参照して下さい。

4 XCOPYでファイルをコピーします。 または拙作ソフト、DRVCPYを使用します。 
 DOSプロンプトから(*註2)、   Xcopy A:\  x:\  /c/e/f/h/i/k/r/s/y  というオプションつきでコピーすれば、長い名前もOKです。 なお、これより先に、    Xcopy /s/e/t/q としておくと、先に空のディクトリツリー構造をコピーしますので、直前に現時刻を設定しておけばお気に入りのタイムスタンプで揃ったりします。また、先にディレクトリを作ることで、若干検索が速くなるメリットがあります。コピーが終わったことを確認したら、Windows95/98を終了して電源を切ります。
 以前のドライブと「クラスタサイズ」が等しいところにコピーする場合には、拙作ソフトDRVCPYを使用したほうが便利です。この場合は、MS-DOSをコマンドプロンプト起動します。通常の起動をする必要はありません。あとはDRVCPYの説明書に従って下さい。

5  新しいドライブからWindows95/98を起動させます。
 新しいドライブを最も起動が優先されるドライブとなるようにハードの接続を変更します(IDEならプライマリマスターにします)。  古いドライブは、取り外すか、新しいドライブ以降の起動優先順位  となるようにハードの接続を変えて下さい(IDEならスレーブなど)。  そうすれば新しいHDDからWindows95/98がこれまでと同じ環境で起動するはずです。  

*註1   コマンドプロンプト起動は、起動時にファンクションキー8を押して出現するメニューの5番目または6番目にあるはずです。

*註2   いわゆるDOS窓、DOS互換BOXからのコマンド実行のことです。「MS-DOSモード」「Safeモード」起動ではダメです。フロッピ起動のWindows95/98は、MS-DOSモードです。また、[MS-DOSプロンプトのプロパティ]の[詳細設定]で、[MS-DOSプログラムにWindowsを検出させない]にチェック印が入っていると、XCOPYもMS-DOSモード下と同様の動作しかせず、長い名前のコピーができません。

 

FDISKの不具合情報
 たくさんの領域を1つのディスクに確保してある場合、再度FDISKを起動しようとすると、すでに領域があるにも関わらず、まったく領域未使用であると表示されるバグが、FDISKには存在しています。これは、Windowsの config.sysのbuffers=の量が少ない場合に発生するとを確認しています。領域の数が少ない場合は異常は発生しないようです。なお、あるはずの領域が、未使用と表示された場合は、即座にFDISKを終了させて下さい。そうしないで、セクタチェックを開始してしまうと、先頭領域のブートセクタを破壊してしまいます(要注意)。

64GB(65536MB)を超えるハードディスクの領域確保をしようとすると、容量の表示が正しくなくなります。16bit整数表示にオーバーフローが発生するためと見られます。 

 
FORMATの不具合情報
 SCSI 接続のHDDで、8191MB(8.45ギガバイト)を超えるハードディスクで、FAT32として確保した領域(ドライブ名)に対して、Windows95-OSR2で FORMAT x: を実行すると、エラーになってしまうことが確認されています。Windows98であれば大丈夫です。しかしマイコンピュータの右ボタンのフォーマット(M)では、Windows98でもエラーとなります。これはOS内部の問題と考えられます。なおFAT16の領域であればとくに問題ありません。

さらにより大きな容量になると、Win98のFORMATでも常に不具合が発生します。フォーマットの最後の段階で、ブートセクタに書き込めませんという表示でエラーとなります。これには他のフォーマッタを使う以外に回避する手がありません。


 

Q:WindowsNTFATで使用しており、これまでの環境をそのままに、より大容量のハードディスクなど別のドライブに中身を移し替えたい。良い方法はないものでしょうか?

A: WindowsNTの場合は、Windows95/98やMS-DOSのようなSYSコマンドもありませんし、FORMAT /Sコマンドもありませんので、システムの転送並びにブートセクタの作成が できません。したがってファイルをコピーしただけではNTが起動できるようにはなり ません。そこで、ファイルだけはWindows95/98の力を借りるか、またはNTが動作しているときにXCOPYの完全オプションを使ってコピーをしておき、ブートセクタのほうは、別途MS-DOSを立ち上げてから「DRVCPY」のオプション/B を使ってコピーしておくという手があります。DRVCPYはこのようにブートセクタのみのコピーツールとしても使用できます。おそらくはOS/2についてもこの方法でOKだと思いますが、未確認です。 NTFSやHPFSの場合は、MS-DOSから認識できませんのでDRVCPYの使用も対象外です。 
 
 

おきまりの…
 なお、この文を参考にして運用された場合、何が起ころうとも責任は負いかねます。ご自身の責任にて行なって下さい。 また、ハードディスクの中身の移転、バックアップ以外の目的、すなわち Windows95/98の使用許諾に触れるような不正なコピーは行なわないで下さい。