現在オフラインです。再接続するためにインターネットの接続を待っています

Windows NT ExtendOEMPartition の使用時に 4 GB を超えるドライブ上の NTFS が破損する

この記事は、以前は次の ID で公開されていました: JP185773
現象
MS-DOS FAT パーティションから 4 GB を超えるドライブに対して Winnt.exe の無人インストールを実行すると、NTFS が破損することがあります。無人インストールを実行するには、Unattend.txt ファイルで次のようにパラメータを指定します。
   [Unattended]   OemPreinstall = yes   FileSystem = ConvertNTFS   ExtendOemPartition = 1				

Windows NT のインストール完了後初めて起動するときに、存在しないか破損しているファイルがあるために正常に起動できないこと、または次の CHKDSK メッセージが表示されることにより、NTFS の破損がわかります。

   CHKDSK はインデックスを検査しています...   ファイル 100 のインデックス %I30 のエラーを修復します。   ファイル 100 のインデックス %I30 のエラーを修復します。   インデックスの検査を完了しました。   CHKDSK はこのドライブで軽度のデータ矛盾を検出しました。   エラーを検出しました。読み取り専用モードでは CHKDSK を続行できません。				


破損の程度が深刻な場合、セットアップの GUI モード部分でコンピュータが応答を停止 (ハング) することや、その他のさまざまなエラー メッセージが表示されることもあります。表示されるエラー メッセージはコンピュータによって異なりますが、通常は、実際にはシステムに存在しているファイルが破損しているか存在しないことを示すメッセージです。これらのファイルが破損しているか存在しないと報告されるのは、NTFS のインデックスが適切にセットアップされていないためです。
原因
この問題の原因は、ドライブが 4 GB より大きいことです。NTFS ファイル システムへの変換時にはミラー ブート セクタがディスクの最後に書き込まれますが、バイト オフセットの位置が、32 ビットで計算されるため、ハード ディスク領域の 4 GB 以内にマスクされていました。この誤った計算が原因で、NTFS インデックス バッファが上書きされます。
解決方法
この問題を解決するには、Windows NT 4.0 または Windows NT Server 4.0 Terminal Server Edition の最新の Service Pack を入手します。関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
152734 Windows NT 4.0 の最新の Service Pack を入手する方法

: Service Pack 4 に含まれている Fastfat.sys ファイルが必要です。Fastfat.sys ファイル以外にも、最新の Windows NT 4.0 Service Pack (SP4 またはそれ以降) に含まれる以下のファイルを入手する必要があります。インストールする Windows NT と同じ言語の Service Pack を使用する必要があります。

I386 プラットフォームの場合 :
Atapi.sys
Basesrv.dll
Hal.dll
Hal486c.dll
Halapic.dll
Halast.dll
Halcbus.dll
Halcbusm.dll
Halmca.dll
Halmps.dll
Halmpsm.dll
Haloli.dll
Halsp.dll
Halwyse7.dll
Ntdll.dll
Ntoskrnl.exe
Ntkrnlmp.exe
Win32k.sys
User32.dll
Kernel32.dll
Gdi32.dll
Winsrv.dll


Alpha プラットフォームの場合 :
halgammp.dll
halpinna.dll
halrawmp.dll
halsabmp.dll
Ntdll.dll
Ntoskrnl.exe
Ntkrnlmp.exe
Win32k.sys
User32.dll
Kernel32.dll
Gdi32.dll
Winsrv.dll

インストール方法

  1. MS-DOS モードでコンピュータを起動し、通常どおりに Windows NT 無人インストールを行うドライブを準備します。これを行うには、Windows NT CD の .\I386 ディレクトリまたは .\Alpha ディレクトリを C ドライブのインストール ディレクトリにコピーします。
  2. 修正ファイルを一時ディレクトリにコピーします。
  3. 修正プログラム ファイルおよび必要な Service Pack 3 以降の依存ファイルを C ドライブのインストール ディレクトリに適用します。インストールする Windows NT と同じ言語の Service Pack CD を使用する必要があります。Service Pack CD は Windows NT Unicode 形式になっているため、MS-DOS から直接読み取ることはできません。Service Pack CD を読み取ることの可能な Windows NT システムから Service Pack ファイルのコピーを行うか、Enterprise Server CD の \SP3\i386 ディレクトリまたは \SP3\Alpha ディレクトリから Service Pack ファイルを MS-DOS で直接読み取ります。Service Pack の依存ファイルは上記の一覧のとおりです。依存ファイルが DOS で読み取り可能な形式である場合は、OEMSETUP.BAT バッチ ファイルを使用してこの手順を自動的に実行できます。それ以外の場合は、この手順は手動で行う必要があります。

    Intel プラットフォーム : 手順 3. の説明

    バッチ ファイルで行う場合

    一時ディレクトリから OEMSETUP.BAT を実行します。このとき、コピー元となる Service Pack ディレクトリとコピー先となるインストール ディレクトリの両方を指定します。たとえば、Service Pack ディレクトリが D ドライブにあり、インストール ディレクトリが C:\I386 である場合は、以下のように入力します。

    OEMSETUP D:\SP3\I386 C:\I386

    この場合、必要なファイルは、インストール ディレクトリの場所である C ドライブの I386 ディレクトリおよび C:\I386\SYSTEM32 ディレクトリにコピーされます。

    手動で行う場合

    この手順は手動で実行することもできます。まず、修正プログラムの FASTFAT.SYS を、C:\I386 インストール ディレクトリにコピーします。次に、最新の Windows NT 4.0 Service Pack から、以下に記載されているように各ファイルを C:\I386 ディレクトリまたは C:\I386\SYSTEM32 ディレクトリにコピーします。
         Atapi.sys       -> ..\I386     Basesrv.dll     -> ..\I386     Fastfat.sys     -> ..\I386     Hal.dll         -> ..\I386     Hal486c.dll     -> ..\I386     Halapic.dll     -> ..\I386     Halast.dll      -> ..\I386     Halcbus.dll     -> ..\I386     Halcbusm.dll    -> ..\I386     Halmca.dll      -> ..\I386     Halmps.dll      -> ..\I386     Halmpsm.dll     -> ..\I386     Haloli.dll      -> ..\I386     Halsp.dll       -> ..\I386     Halwyse7.dll    -> ..\I386     Ntdll.dll       -> ..\I386 および  -> ..\I386\SYSTEM32     Ntoskrnl.exe    -> ..\I386     Ntkrnlmp.exe    -> ..\I386     Win32k.sys      -> ..\I386     User32.dll      -> ..\I386     Kernel32.dll    -> ..\I386     Gdi32.dll       -> ..\I386     Winsrv.dll      -> ..\I386						

    次に、これらのファイルの圧縮ファイルを C:\I386 ディレクトリおよび C:\I386\SYSTEM32 ディレクトリから削除します。ファイル拡張子の最後の文字がアンダースコア ("_") になっているファイルが圧縮ファイルです。たとえば、FASTFAT.SY_、HAL.DL_、NTDLL.DL_、NTOSKRNL.EX_ などを削除します。

    Alpha プラットフォーム : 手順 3. の説明

    バッチ ファイルで行う場合

    一時ディレクトリから OEMSETUP.BAT を実行します。このとき、コピー元となる Service Pack ディレクトリとコピー先となるインストール ディレクトリの両方を指定します。たとえば、Service Pack ディレクトリが D ドライブにあり、インストール ディレクトリが C:\Alpha である場合は、以下のように入力します。

    OEMSETUP D:\SP3\Alpha C:\Alpha

    この場合、必要なファイルは、インストール ディレクトリの場所である C ドライブの Alpha ディレクトリおよび C:\Alpha\SYSTEM32 ディレクトリにコピーされます。

    手動で行う場合

    この手順は手動で実行することもできます。まず、修正プログラムの FASTFAT.SYS を、C:\Alpha インストール ディレクトリにコピーします。次に、最新の Windows NT 4.0 Service Pack から、以下に記載されているように各ファイルを C:\Alpha ディレクトリまたは C:\Alpha\SYSTEM32 ディレクトリにコピーします。
          Fastfat.sys     -> ..\Alpha      Halgammp.dll    -> ..\Alpha      Halpinna.dll    -> ..\Alpha      Halrawmp.dll    -> ..\Alpha      Halsabmp.dll    -> ..\Alpha      Ntdll.dll       -> ..\Alpha および  -> ..\Alpha\SYSTEM32      Ntoskrnl.exe    -> ..\Alpha      Ntkrnlmp.exe    -> ..\Alpha      Win32k.sys      -> ..\Alpha      User32.dll      -> ..\Alpha      Kernel32.dll    -> ..\Alpha      Gdi32.dll       -> ..\Alpha      Winsrv.dll      -> ..\Alpha						
状況
マイクロソフトでは、この問題を Windows NT 4.0 および Windows NT Server 4.0 Terminal Server Edition の問題として認識しています。この問題は Windows NT 4.0 Service Pack 4.0 および Windows NT Server 4.0 Terminal Server Edition Service Pack 4 で最初に修正されました。
プロパティ

文書番号:185773 - 最終更新日: 03/17/2006 06:38:31 - リビジョン: 2.1

  • Microsoft Windows NT Server 4.0 Terminal Server
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • kbhotfixserver kbqfe kbbug kbfix kbqfe KB185773
フィードバック