So, you've copied a windows 2000
partition to another drive (with partition magic
, for instance), and now you want to make it bootable...
NT always boots from the first partition on the drive, which can be either a FAT
partition (possibly with windows 9x
on it), or an NTFS
partition with windows 2000.
If 2000 is your only operating system, make the partition primary
, so that the BIOS can boot from its boot sector1
. If this isn't possible, reinstalling from the CD, and then copying the image over again when it first reboots will enable it to boot off the partition even if it is an extended
If you're moving the partition to the same location (controller/drive/partition) as last time, you're in business. If not (if a message saying NTLDR is missing appears, for instance), boot from the install CD, and enter the recovery console (it will prompt you for the root
password). Type MAP to discover where the partition is mounted now, and write this down.
The next task is to edit the file boot.ini, in the root of the boot partition. This is much easier for a fat partition, as a dos
boot disk with edit
can be used. If it's NTFS, either a linux boot disk, or a working windows 2000
installation is necessary to edit the file. (I'm not sure if you can even edit a file using the rescue console using copy con
Your boot.ini will look something like this:
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
C:\ = "Microsoft Windows"
Line 5 (begining "multi(0)"...) is the one that needs to be changed to match the output MAP produced earlier. The meaning of the fields are as follows:
*multi/scsi - Controller id of controller the boot device is attached to.
*disk - The SCSI id
of the drive. (On IDE systems, 0=master
rdisk - Logical disk in multi-disk devices (such as CD changers?). 0 on almost any system.
*partition - Logical partition number on the disk.
Fields marked with a * are shown in the output of map
The first entry in the line may also be 'signature(hhhhhhhh)', where hhhhhhhh is an MBR
signature on a some drive attached to the boot controller. Note that disk must still be set correctly even if the signature is that of the boot drive. If signiature is in use, then the file ntbootdd.sys
on the same partition as boot.ini must be an NT driver
for the controller that the operating system is to be booted off. This should normally take care of itself, unless the scsi/ide card has been changed.
Set the values, save the file, and the machine will boot... Hopefully :)
1 - If this doesn't work (the machine just sits there, for instance), boot to the recovery console, and run fixboot, fixmbr.