There are multiple operating systems available, Windows XP, Vista and Linux are a few of the most used. To install multiple operating systems, many users create a multiboot system with (for example) both Windows XP and Vista. But a system with two Windows installations of the same version is one of the possibilities as well! For example, when Windows is installed twice, one of them can be used for office applications while the other is optimized for gaming or testing. When there are troubles in the Windows used for testing, the other Windows installation can still be used.
ATTENTION: Please first read the page about setting up a multiboot system with extended information about the booting process and the differences between the Windows bootmanager and an alternative bootmanager.
Generally, there are two methods to create a multiboot system. The first method uses the Master Boot Record (MBR) of the hard disk to store the bootmanager. The MBR is placed in the first sector at the beginning of the hard disk (also used to store the partition table with information about the layout of the partitions and which partition to boot). When the bootmanager is stored in the MBR, the partition of the chosen operating system could be made active while the other primary partition could be labeled hidden. As a result, the Windows partition is always the active partition and therefore always the C: partition. Because the available space in the MBR is limited, the options to use a graphical interface for the bootmanager are limited (but can be improved by using some additional space elsewhere on the hard disk).
The other method doesn't store the bootmanager in the MBR but on the active primary partition (the partition which is normally labeled C:). After the operating system has been chosen from the boot menu, the bootmanager boot the operating system from its own partition. All primary partitions will stay visible and keep their disk letter. This method is used by the Windows bootmanager. Because there is only one operating system which can be installed on the partition labeled C:, this method frequently results in problems. The partitions of the other operating systems receive a disk letter as well and are always visible within all installed operating systems. For this reason, it is not possible to prevent programs or the user himself to make changes to files on the primary partitions of the other operating systems. This would not be the case when the bootmanager is stored in the MBR.
|
Actually, creating a multiboot-system is not that difficult. First you need multiple (bootable) primary partitions (with the file system NTFS or FAT32) for each operating system to be installed. These primary partitions can be created with partioning software like Parted Magic. Next, a bootmanager needs to be installed to be able to chose between the installed operating systems. In case of the second method this bootmanager is installed automatically during the setup of Windows (always install the oldest Windows version first because ever Windows version only recognizes the previous Windows versions).
However, using the bootmanager of Windows makes it impossible to create a multiboot system where the different partitions are hidden depending on the booted operating system. For this purpose, an alternative bootmanager is needed which can be stored in the MBR according to first method. MasterBooter <this tool is not available anymore> is one of those bootmanagers which can be used for this purpose. MasterBooter is graphically an old fashion bootmanager, which can be explained by the limited space available in the MBR. The download file contains the free partitioning tool EFDISK as well, which can be used to (re)partition the hard disk but it is also very useful for changing the active primary partition and to hide the other primary partitions.
To use MasterBooter and EFDISK, the executable files MRBOOTER.EXE and EFDISK.EXE must be copied to a bootable MS-DOS disk or bootable MS-DOS CD-ROM. These tools can be started in the MS-DOS environment (not in Windows!) with the commands MRBOOTER and EFDISK.
The picture below of the EFDISK window shows the different primary partitions. The hard disk is partitioned into four partitions: the first partition is a primary partition with the first operating system installed on. This partition is the active partition which will be booted when the computer is turned on (activating a partitions is done with the space bar). The two following partitions are primary partitions to install a second and third operating system. Both are hidden (which is done with the H key), this makes them invisible when the first operating system is booted. The last partition is an extended partition (which contains multiple logical disks).
Preceding the installation of an operating system, it is necessary to label the reserved partition as the active partition, to hide the other primary partitions and to reboot the computer from the Windows installation disk. By following this procedure, Windows will be installed on a partition which will be labeled with C:. These changes to the partition table could be done manually with EFDISK (the space bar for activating a primary partition and the H key to hide the other partitions). These changes could be done automatically with a bootmanager, but the manual change is easier because installing a bootmanager takes some time while the MBR (the bootmanager included) will be overwritten during the Windows setup.
After the different primary partitions are created and on every primary partition an operating system is installed, it is time to configure the MasterBooter boot menu. Run the MasterBooter tool with the command MRBOOTER and select the different bootable primary partitions which have to be shown in the boot menu. Select the most used operating system first because this will be the default operating system to boot when there is no user input. The picture below shows in the area Selected partitions that all three available primary partitions are selected for the boot menu.
Press F10 to continue. It is important to hide the other primary partitions which won't be used by the booted operating system. This is done by using the number 1 (the numbers 011 of the first row tells that the first partition must be visible while the two partitions of the other operating system will be hidden). After pressing F10, the other booting variables can be changed as well.
After these settings are stored, a boot menu with the selected operating systems is shown. The primary partitions are made active and hidden, depending on the chosen primary partition to boot. Before installing Windows on one of the partitions (if not already done...), make sure the partition is active and the others are hidden. Take into account that the Windows setup will overwrite the boot sector and remove the installed boot manager: you need to install MrBooter again, each time you install Windows. To remove the boot manager, use the following command: FDISK /MBR
It is also possible to copy an already installed Windows (lets say OS1) to one of the other primary partitions (OS2). This procedure saves a lot of time because Windows only has to be installed and optimized once! This can be done by restoring an earlier created back-up of the operating system OS1 to the partition for OS2 or by copying the operating system directly from one partition to the other using imaging software like Partition Saving (download: www.partition-saving.com). Attention: this procedure can only be applied when the bootmanager is installed in the MBR, the Windows bootmanager is not suitable for this job!
But don't forget to change the boot information of OS2 stored in the BOOT.INI (XP)/BCD (Vista)! When the BOOT.INI/BCD is not changed, it will result in irreversible problems in both OS1 and OS2 as soon as critical changes are made to one of the Windows installations. In the beginning all seems to work fine, as long as there are no critical changes... This is what happens: registry changes in OS2 (like a change in the Windows XP-services/Windows Vista-services) are applied in the registry files stored on the partition of OS1, even when the partition of OS1 is hidden for OS2! So, registry changes of both OS1 and OS2 take place in the registry files belonging to OS1, while the changes in the (system) files belonging to these registry changes are stored on or removed from the partition of the active Windows installation of that moment. which makes them invisible for the other Windows (if the partition would not be hidden, the files aren't accessible by their original drive letter as well). Such a situation would result in big problems for sure! This situation is identified easily by making some changes in the registry and notice what happens in the other operating system (like moving a shortcut on the desktop of OS1 and to verify if this is the case in OS2 as well). If they still use the same registry, then the BOOT.INI/BCD of the copied partition (OS2) needs to be changed to make sure it points to the right partition.
Making changes to the BOOT.INI (Windows XP)
Windows XP has a file called BOOT.INI to store the boot configuration
which is saved in the root of the primary partition. After an image of OS1 is
created and restored to the primary partition reserved for OS2, the file
BOOT.INI of OS2 must be changed as quickly as possible to make sure it
points to the primary partition the Windows is booted from. Editing this file is
done by the sub System in the Control Panel, tab Advanced, button
Settings at the area Startup
and Recovery,
button Edit (editing the BOOT.INI file can be done after booting from
Bart's PE or
VistaPE as well). The BOOT.INI for OS1 has the following content:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP
.......
You will have to replace partition(1) with partition(2), partition(3) or partition(4), depending on what partition the new Windows XP is installed. Use the tool EFDISK or Windows Disk Manager (Control Panel, Administrative Tools, Computer Management, Disk Management) to find out which partition number to use.
Making changes to the BCD (Windows Vista)
Windows Vista will notice the changed partition immediately after OS2 is booted
and will show an error message with the request to boot the computer from the Windows Vista
installation DVD and to chose for repairing your computer. This will repair the
booting configuration stored in the
Boot Configuration
Data Store. This is necessary, because the
BCD points to the previously used partition of OS1 which is no longer the C:
partition. The next window shows the partition of OS1 and asks whether to repair
the boot process. After the BCD has been repaired, reboot the computer and the
boot menu will show both the original and the repaired boot menu entry. Probably
it is a bit confusing, but we now temporarily have two different bootmanagers:
one in the MBR (MasterBooter) and one in the primary partition of OS2 (the
Windows bootmanager).
For this reason, it is necessary to make some changes to the BCD. Start the Command prompt (Start Menu, All programs, Accessories) with additional administrator rights by right clicking the shortcut and to chose for Run as administrator. Enter the command BCDEDIT to view the boot configuration data (BCD). The first thing to do is to set the repaired entry as the default operating system to boot (in stead of the no longer working entry). The bootmanager also has to know that the OS2 has to be booted from the currently active primary partition (partition=C:) and no longer from the (at this moment) hidden partition containing the original OS1 (partition=\Device\HarddiskVolume1). The next step is to delete the no longer working entry, for this purpose the long GUID-code is needed (which is shown with the command BCDEDIT). If needed, the description could be changed as well, to remove the added 'repaired' text at the end of the description. All these changes are applied by the following commands:
BCDEDIT /default {current}
BCDEDIT /set {bootmgr} device partition=C:
BCDEDIT /delete {GUID of the failing boot menu item}
BCDEDIT /set {current} desription "Windows Vista (TM) Ultimate"
After a restart, OS1 shows an error message which can be solved by starting Windows the normal way. When manually changing the BCD is to complicated, one can also use the free tool EasyBCD (download: www.neosmart.net/dl.php?id=1).
© 2001-2022 - Menno Schoone - SchoonePC - Rotterdam - The Netherlands