TweakHomePC

Dual-booting all versions of Windows and Linux

   Dual-Boot    |    Win 8    |    Win 7    |    Vista    |    Win XP/2K/NT    |    Win9x/Me    |    How to    |    Legacy 9x Tweaks    |    SiteMap   


 

Here: Home > Dual-Boot >


Rescue Boot Disk for Windows XP, 2K, NT

Last reviewed: August 2006

Create a decent Rescue Boot Disk for that time when Windows XP, 2K, or NT refuses to boot.

You can create this bootable floppy yourself to get Windows XP/2K/NT running even if the OS Boot Record (code) or the boot files are a problem. Optionally, you can add some useful boot options to protect yourself against boot path problems. Create this floppy, write-protect it, and keep it safe.

The Rescue Boot Disk will boot your current Windows even if:
• OS Boot Sector (on the system partition) becomes corrupt or is damaged.
• Master Boot Record (MBR) becomes corrupt or is damaged.
• Ntldr or Ntdetect.com become damaged or are missing.
• Boot.ini file has changed or is missing.
• Ntbootdd.sys driver (on SCSI disks only) becomes corrupt or is damaged.
• Virus infection.

The Rescue Boot Disk will not help resolve:
• Incorrect or damaged device drivers (in the System folder),
• Boot problems that occur after you see the Windows startup screen
   (but it can help you resolve those problems).

Creating the Rescue Bootable Disk for XP, 2K, NT

Requirements:

   • One blank floppy.
   • A properly functioning Windows XP, 2K, or NT.

If your installed XP, 2K or NT is not currently booting correctly, please read Microsoft's
"HOW TO: Create a Boot Disk for an NTFS or FAT Partition in Windows XP" (Q305595)
to learn how to create a bootable floppy without using an installed Windows.

In the procedure below, NTLDR and Ntdetect.com (plus Arcldr.exe and Arcsetup.exe for Windows 2000) are copied from the hard disk. It's best to copy them from the i386 folder on the CD for the installed XP/2K/NT (where they remain unused). If you are dual-booted and wish to copy from the CD, you must copy from the CD for the latest version of installed XP/2K/NT (or that latest version will never boot!).

Procedure to Create a Rescue Boot Disk for Windows XP/2K/NT:

  1. Boot to Windows XP, 2K, or NT (the latest version if dual-booted).
     
  2. In Windows Explorer, click Tools, then Folder Options.
        Under the View tab, enable Show hidden files and folders,
        then disable Hide protected OS files, and then click Apply.

    Remain in Windows Explorer and look for Boot.ini and NTLDR in the root of C: drive.
        If not found, check in root of other drive(s) until you find them,
        and then change any occurrence of C: below to correct drive letter.
     
  3. Insert a new blank floppy disk in your floppy drive (A:).
        Click Start, then click Run.
        Type CMD and press [Enter].
        Type format a: and press [Enter] key. Do not use a quick format.
        Type exit and press [Enter] when finished.
     
  4. From Windows Explorer, copy these boot files from root of C: to the floppy:
            Boot.ini
            NTLDR
            Ntdetect.com
            Bootsect.dos (is present only if dual-booted with Win9x/Me).
            Ntbootdd.sys (if present - it's a renamed SCSI controller driver).
            Arcldr.exe (is present only if Windows 2000 is installed).
            Arcsetup.exe (is present only if Windows 2000 is installed).
        The functions of these boot files are explained below.
        It's best to copy NTLDR and Ntdetect.com from the Windows' CD.

    The basic Rescue Boot Disk for Windows XP, 2K, or NT has now been created.
     
  5. If the Recovery Console is already an option in the Boot Loader Menu:
        Copy C:\CMLDR to the floppy.
        Create an A:\Cmdcons folder on the floppy.
        Then copy C:\Cmdcons\Ntdetect.com to A:\Cmdcons\
        and copy C:\Cmdcons\Bootsect.dat to A:\Cmdcons\
        Finally, add this line to the [operating systems] section of A:\Boot.ini
            C:\CMDCONS\BOOTSECT.DAT=" XP Recovery Console " /cmdcons
    You will now be able to initiate the Recover Console from the floppy.
     
  6. Optionally, add some Useful Boot Options (read below).
     
  7. Optionally, create a menu option to boot to Safe Mode (and avoid that F8 key!):
        Copy the line in the [operating systems] section of A:\Boot.ini that boots XP/2K
        and paste it in as a new line under the original (don't alter the original line).
        In the new line, replace the last quote (") and all switched with
          - Safe Mode" /safeboot:minimal /sos /bootlog
    Example: If the original line was:
        multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP Home" /fastdetect
        then the new line will be:
        multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP Home - Safe Mode" /safeboot:minimal /sos /bootlog
        You can now use XP Home - Safe Mode from the floppy to initiate Safe Mode for the selected XP/2K.
     
  8. Test the floppy (if necessary, make sure BIOS is set to boot from floppy drive first).
        Boot up with your new Rescue floppy inserted.
        The PC will boot from the floppy, and Windows will run from its boot partition.
        If not, you need to troubleshoot your procedure!
     
  9. Label the floppy "Rescue Boot Disk for XP, 2K, NT".
        Write-protect and keep it safe.

[top of page]

Is Boot.ini on an NTFS partition?

The MS-DOS, or Win9x, boot disk cannot read an NTFS partition. If you need to edit a Boot.ini that's on an NTFS partition AND cannot boot to an NTFS Windows, then you can be in trouble! You cannot edit Boot.ini from true MS-DOS! You still have the option of using the Bootcfg command from the Recovery Console (run from the CD) but that denies any manual control.

Solution #1:
You can use the Rescue Boot Disk described on this page to boot to an NTFS Windows (or its Safe Mode) and edit Boot.ini from there provided the boot problem is with the Boot Sector or with any boot files. Obviously this will not work if the problem is with that Windows' file(s) but you can still edit Boot.ini if the problem is with a different Windows' file(s).

Solution #2:
Here's another simple solution to this NTFS problem. Put TeraByte's DOS-based utility, EditBINI.zip (75 KB), on a DOS/Win9x boot disk. This freeware utility allows you to edit and save Boot.ini on an NTFS partition even when you are in true MS-DOS.

Read Edit Boot.ini for instructions on EditBINI usage or download EditBINI now.

[top of page]

Useful Boot Options on Rescue Boot Disk

This alteration IS worth doing even if not dual-booted.

You should edit Boot.ini on the floppy and add certain lines. You can, optionally, make a change to one line given below to make it match your current XP, 2K, or NT Windows.

It sometimes happens that the boot path in Boot.ini does not accurately point to the installation folder of the Windows XP, 2K, or NT with the result that Windows cannot run. This relates mostly to the rdisk(?) and/or partition(?) boot paths in Boot.ini

This is know to occur in certain situations - sometimes with two hard disks, sometimes in dual-boots, sometimes when using Cable Select, occasionally the Master/Slave or drive letter orientation changes for no apparent reason!

Alternatively, a user may make a change that has a similar effect.
Also, a user may be unsure which boot path in Boot.ini is correct for user's system.

These extra lines will safely sort that out from the Rescue Boot Disk without resorting to experimental changes to Boot.ini on the hard disk.

Whatever the cause, a decent Rescue Boot Disk should be able to cope with such matters.
It should give the user the opportunity to boot up to Windows, and troubleshoot if/when necessary.

The changes given here are intended for the Boot.ini on the Rescue Boot Disk.

Procedure to add extra lines:

Backup A:\Boot.ini on boot disk.
Right-click A:\Boot.ini. Click Properties. Uncheck Read-only box.
Edit A:\boot.ini in a text editor like Notepad.

First make timeout=30 in the [boot loader] section of A:\Boot.ini.

Now add these eight lines to the [operating systems] section of A:\Boot.ini.
They all refer to the installed Windows XP, 2K, or NT.
The first four lines refer to a first hard disk with up to four partitions.
The last four lines refer to a second hard disk with up to four partitions.
Place the lines after the existing similar lines in the [operating systems] section
but before the final line of C:\="Microsoft Windows 9x" if it exists.

::: Copy the eight lines below this line ::: Be wary of word wrap :::
multi(0)disk(0)rdisk(0)partition(1)\Windows="XP, 1stDisk, partition 1" /sos
multi(0)disk(0)rdisk(0)partition(2)\Windows="XP, 1stDisk, partition 2" /sos
multi(0)disk(0)rdisk(0)partition(3)\Windows="XP, 1stDisk, partition 3" /sos
multi(0)disk(0)rdisk(0)partition(4)\Windows="XP, 1stDisk, partition 4" /sos
multi(0)disk(0)rdisk(1)partition(1)\Windows="XP, 2ndDisk, partition 1" /sos
multi(0)disk(0)rdisk(1)partition(2)\Windows="XP, 2ndDisk, partition 2" /sos
multi(0)disk(0)rdisk(1)partition(3)\Windows="XP, 2ndDisk, partition 3" /sos
multi(0)disk(0)rdisk(1)partition(4)\Windows="XP, 2ndDisk, partition 4" /sos

::: Copy the lines above this line :::

You must change the \Windows to the name of the Windows directory e.g. \WINNT.

The last line will be like C:\="Microsoft Windows 9x" if dual-booted with Win9x.

The above lines are for IDE, EIDE, and ESDI drives (most users have those). You must change every occurrence of multi to scsi for some SCSI drives. However, multi is still used if the system uses a SCSI adapter that does not have a built-in BIOS.

The /sos option prints information about what drivers load as the system boots.
You can change the /sos to /fastdetect for normal appearance (faster) if you prefer.
You can add a /basevideo option to use standard VGA display driver when moving to GUI mode. For example:
multi(0)disk(0)rdisk(0)partition(1)\Windows="XP, 1stDisk, partition 1" /basevideo /sos

Example:

If your original Boot.ini looks something like this:

[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(0)partition(2)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\Windows="Windows XP" /fastdetect
C:\="Previous OS on C:"

your new Boot.ini will look like this:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\Windows="Windows XP" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\Windows="XP, 1stDisk, partition 1" /sos
multi(0)disk(0)rdisk(0)partition(2)\Windows="XP, 1stDisk, partition 2" /sos
multi(0)disk(0)rdisk(0)partition(3)\Windows="XP, 1stDisk, partition 3" /sos
multi(0)disk(0)rdisk(0)partition(4)\Windows="XP, 1stDisk, partition 4" /sos
multi(0)disk(0)rdisk(1)partition(1)\Windows="XP, 2ndDisk, partition 1" /sos
multi(0)disk(0)rdisk(1)partition(2)\Windows="XP, 2ndDisk, partition 2" /sos
multi(0)disk(0)rdisk(1)partition(3)\Windows="XP, 2ndDisk, partition 3" /sos
multi(0)disk(0)rdisk(1)partition(4)\Windows="XP, 2ndDisk, partition 4" /sos

C:\="Previous OS on C:"

The final line, C:\=". . .", will exist if an OS other than XP/2K/NT is installed.

In the above example, Win98SE is on C: which is the only Primary partition (1) on the first hard disk. Windows XP is on D: which is the first Logical partition (2) on the first hard disk. The last four new lines should be redundant if there is no second hard disk.

• Test it (make sure BIOS is set to boot from floppy drive first).
    Boot up with your new Rescue Boot Disk inserted.
    Test your original, and new, boot options.
    If one new option, or any originals, don't work, you need to troubleshoot your procedure!


Explanation of lines in Boot.ini:

Note: The "multi(0)disk( ..." lines do NOT contain a drive letter.

[boot loader] section defines the timeout (in seconds) before the default OS loads.

[operating systems]. Each line specifies an OS to load.

  multi(m)disk(s)rdisk(n)partition(p)\directory="menu text"

  'm' is the number of the IDE channel (counting from 0). A scsi(m) would be for SCSI
  controllers without an enabled BIOS but multi(m) is still used if BIOS is enabled.

  's' is for a SCSI option and identifies which disk on controller contains OS files (count from 0).

  'n' is the disk number on that channel (count from 0)

  'p' is the partition number on that hard disk (count from 1; Primaries first)

  'directory' is the name of the installation directory of that Windows

  'menu text' is the description of what appears in the Boot Loader menu.

  C:\="Microsoft Windows 9x" This line is vital to boot a Win9x. Edit it in if absent.
  (the text between the quotes can be anything if it's different from other entries).

A line like:
C:\cmdcons\bootsect.dat="Microsoft Windows Recovery Console" /cmdcons
is an option to boot into the Recovery Console when it's installed.

[top of page]

Boot Files

Boot.ini
Boot.ini tells the Boot Loader (NTLDR) which options to present to the user.
It also contains the pathways to the OSs in the dual-boot.
Boot.ini is PC-specific, but can be created (easily!), or edited if copied from another PC.

NTLDR
NTLDR is the program that displays the Boot Loader startup menu (it reads OSs from Boot.ini).
NTLDR then passes bootup control to the selected OS's directory files (or to Bootsect.xxx).
NTLDR is not PC-specific and can be copied from any XP/2K/NT CD or PC.
If dual-booted, NTLDR must be from the newest version of XP/2K/NT.

Ntdetect.com
Ntdetect.com is for hardware detection.
Ntdetect.com is not PC-specific and can be copied from any CD or PC.
If dual-booted, Ntdetect.com must be from the newest version of XP/2K/NT.

Arcldr.exe and Arcsetup.exe
These two boot files are used only by Windows 2000. They are essential for 2K booting, and responsible for the splash screen and some initialisation. They are additional to 2K's NTLDR and Ntdetect.com which are also essential.

Bootsect.dos
Bootsect.xxx is present only when dual-booted with an OS other than XP/2K/NT (usually Win9x or Linux).
Bootsect.dos is a file holding an image of the boot sector of an original Win9x when XP, 2K. or NT was then installed, thus allowing a dual-boot to work.
Bootsect.dos is PC-specific, and cannot be copied. Back it up when it is valid!
A Repair of XP/2K/NT should recreate a valid Bootsect.dos but does not always do so.
You can use Btsect25.zip to create a new Bootsect.dos when C: is a boot sector for Win9x, or you are prepared to use Btsect25's SYS C: option to create one first (and later use the Fixboot command from the CD's Recovery Console to repair the XP/2K/NT Boot Sector).

Ntbootdd.sys
Ntbootdd.sys is the device driver for a SCSI controller, renamed to Ntbootdd.sys. It's specific to the SCSI controller for that SCSI hard disk. Ntbootdd.sys can be copied from a PC that uses the same driver. Also, if the driver is identified, it can be copied from the CD and renamed to Ntbootdd.sys.

[top of page]

NOTES

To View File Attributes:
Double-click My Computer on the desktop.
Click Options on the View menu. Now click Show All Files.
To view file name extensions, clear the Hide MS-DOS extensions for file types that are registered check box. Click OK.
Right-click a file in Explorer, and click Properties, to view & alter its Attributes (not System; that must be changed from DOS; so use attrib -r -h -s c:\msdos.sys from DOS of some sort).

To Change File Attributes:
In Windows Explorer, click Folder Options on the View menu.
On the View tab, click Show All Files , and then click OK.
In Explorer, right-click the target file, and then click Properties.
Click to clear the Read-Only and Hidden check boxes if checked, and then click OK.
The System attribute must be changed from DOS (use attrib -r -h -s c:\boot.ini).

To Restore File Attributes (example):
Open a DOS Prompt
Type in (then press Enter):
attrib +r +h +s C:\boot.ini
using only the attributes changed earlier.

[top of page]

Please remember that you alone are responsible for the consequences of any changes you make to your computer hardware or software.

Copyright © LarryM 1998-2013 thpc@mail.com