Recently when using diskpart.exe to expand a volume on a Windows Server 2000 SP4 machine, we got a warning "Deleting the primary partition has modified the partition number of the partition that contains your Windows 2000 system files. The old partition number was 2; the new partition number is 1."
We changed the boot.ini file from:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Server" /fastdetect
to:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
On rebooting the server, the server refused to boot throwing an NT Kernel not found error.
How to fix it:
If you get this error, before you reboot the server, you first identify the active boot partition – to do this, you need to start diskpart.exe from the command line and run the command ‘list volume’. You should get an output as follows:
DISKPART> list volume
Volume ### Ltr Label Fs Type Size Status Info
———- — ———– —– ———- ——- ——— ——–
Volume 0 D DVD-ROM 0 B
Volume 1 C IBM_PRELOAD NTFS Partition 34 GB Healthy System
Volume 2 E Data NTFS Partition 115 GB Healthy
In the output shown above, the section under ‘Info’ shows ‘System’ for ‘Volume 1’ indicating that the boot partition is on Volume 1 so the boot loader should have the following to correctly boot the OS.
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
Now to ensure that you have a better chance of booting the OS in case something really has gone wrong with the results of ‘list volume’ you can use a boot.ini file as follows:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Server-2" /fastdetect
The benefit of choosing the above mentioned approach is that you get the option of selecting which drive would correctly boot the OS without having to go through a painful recovery mode process of trying to fix the boot record.
Once you know which entry boots the OS, you can edit your boot.ini file to remove the incorrect entry and have the server boot fine for all successive reboots.
Related posts:
#1 by Steve on September 10, 2009 - 12:13 AM
Thanks saved me from mucking about for 30mins trying to fix…