Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I currently have a quad-boot system set up, spanning across two separate but identical hard drives.

 what is currently going on The image illustrates what is currently going on. Disk 0 (NOW disk 01) holds XP (32-bit), Vista (64-bit), a small swap file partition for Ubuntu 10.10, and Ubuntu 10.10 (64-bit). Disk 02 holds a partition called "Empty" and Windows 7 (64-bit). All 4 of these operating systems are spread over 2 250GB Seagate single-platter drives (not raided obviously).

It wasn't ever that hard to set up as I installed them in the above order (starting with XP), and upon boot I get an XP DOS-style menu giving me the 4 choices with XP as the countdown default. The system has been running smoothly for ages (although I regularly back up the MBR using EasyBCD which is installed in Vista).

Here's my problem:

I'm running out of storage and install space on Disk 03 (640GB) and although the first partition on Disk 02 is called "empty" it is not. Disks 1, 2 & 3 are SATA. Hard drive prices being what they are currently; due to (or not) the flooding in Taiwan.. I could only purchase a recertified 320GB hard drive (ATA 133). The drive has a 90 day warranty and although I have NEVER purchased a recertified HD, it installed tonight without a hitch. It formatted in NTFS just fine and then checked out with HD Tune Pro and a surface scan showed no errors. All of the SMART parameters show as OK and HD Sentinel describes the disc as "perfect". The drive is NOW Disk 0 (as it is the first ever PATA HD attached to the mobo I guess).

My stored files, games and utility installs (Misc & Empty) are more important to me than the actual operating system partitions are currently. The size of these 5 partitions (including the Ubuntu swap) comes to about 18 gigs less than Disk 0 (W:). I would simply (or not) like to migrate C, D, X and the two unknown (which are the Linux install) partitions to Disk 0 (W:). I want to free up the space on the two more "tried & tested" hard drives and put the OS'es on W: in order to give IT a good "workout" over the next 90 days. If I somehow, some way lose my operating systems I can always start over again from scratch (They're ALL getting cluttered up with driver overwrites, upgrades, uninstalls/reinstalls anyway).

I understand that:

  1. This would best be done off a ''Live CD'' type utility.

  2. The "pointers" from the XP boot menu to the other OS'es will probably be screwed up since they would all now be on the same, but different, disk (maybe JUST W7).

  3. 5 partitions on one HD (W:) means I can only have 4 primaries (active) and one must be logical extended but that's what they are now (please see picture).

Although I'm kind of learning Linux, I'm not quite ready to use it's utilities/apps or a command line to do this. I am willing to purchase GUI-oriented software or try any freeware that would help me migrate them all, although I DO understand I should probably sub-partition the empty W: drive first and would end up migrating each OS one at a time, starting with XP.

The only thing that gives me any trepidation about this is the fact that I don't quite grasp the concept of what the MBR is, or especially, where it resides; and how one migrates IT to the new HD. I know from the past that when I used Acronis to image a C: drive with just XP on it, the MBR was always asked to be backed up in addition as if it resided OUTSIDE of the XP partition. So I'm kind of sure I could move the 5 partitions over, but may miss the MBR altogether.

Please, I need help and I'm open to all suggestions. I'm beginning to wonder which scenario would be worse, trying to make this work and go smoothly, or simply formatting all the drives, resizing the empty space, and installing all the operating systems fresh again. Thanks to all for your time and attention.

share|improve this question

Confusion over "backing up the MBR"

The Master Boot Record, in the world of the IBM PC/AT compatible, is the first sector (absolute block address #0) of a hard disc. It contains the four primary entries of the old so-called PC/AT (a.k.a. "MBR" or "MS-DOS") partition table (secondary entries being held in other sectors), a disc signature that simply uniquely numbers the disc for your system, and a small bootstrap program that is used on machines with PC/AT-style/PC98-style firmwares. Every hard disc has, of course, an MBR.

The bootstrap program is vital. But it's also fairly generic. Much the same bootstrap program (modulo things like LBA support in firmware) has been used by all IBM and Microsoft operating systems for the past three decades. There is a wide range of utilities that will put a bootstrap program into a blank MBR: most disc partitioning tools have some mechanism for overwriting a corrupted bootstrap program with (their own flavour of) the same bootstrap program. Whatever you have partitioned your disc with has probably already put a bootstrap program its MBR. If you tried booting from that hard disc right now, you'd probably get the message from that bootstrap program that it prints when it cannot find a startable partition.

"Backing up the MBR" is really only necessary to back up the four primary partition table entries and the disc signature.

Further reading

The four primary partition limit

It's not possible to change the four primary partition table limit whilst retaining the old PC/AT partitioning scheme. However, you actually only need one primary partition. That partition is to be your system partition, and it is to be marked startable and only needs to be a couple of hundred MiB. All of the other partitions for your four operating systems are all boot partitions, and all of the operating systems that you have are comfortable with having their boot partitions in secondary partitions (i.e. partitions within a container partition — an "extended" partition).

You actually have a system partition already. In your screenshot, Disc Manager is telling you twice over where it is. ☺ You've combined it with one of your boot partitions. The Windows NT 5.x installer does this on empty discs. The Windows NT 6.x installer does not, and instead creates properly separated system and boot partitions. If you are going to install from scratch, install Windows NT 6.x first with the disc blank, and you'll get a separate system volume. If you are going to install from scratch and want to start with Windows NT 5.1, partition the disc with a partitioning utility before you start, creating a 200MiB primary partition and an extended partition, marking the former as startable and creating one or more secondary partitions in the latter.

If you are not going to install from scratch, partition as above and follow Microsoft's instructions for de-combining your existing system volume and setting up a new system volume on disc #0. (You could even do this anyway, whether you are installing from scratch or imaging.)

Further reading

Microsoft's Boot Manager and the BCD store

You don't have an "XP-style boot menu" at all. The old Windows NT 5.x boot loader doesn't bootstrap Windows NT 6.x. Since you've installed both Windows NT 6.0 and Windows NT 6.1, you'll have been through two processes that update that to Microsoft's Boot Manager, which is separate from the individual boot loaders. Your Windows NT 5.1 boot loader will be an "NTLDR" compatibility entry in MS Boot Manager's configuration database, the BCD store, and what you'll have is Microsoft Boot Manager and its database in your system partition.

This is what you want to retain. In fact it is pretty much the only thing (in your case) that belongs in your system partition. The tricky part is that, as you surmised, the BCD entries point to various things (the boot loader programs for Windows NT 5.1, 6.0, and 6.1, and the VBR for Ubuntu) using disc numbers and partition numbers. You can just image the various boot volumes from disc #1 to disc #0, but you'll have to adjust what is in the BCD to point to the new locations. But you say that you already have EasyBCD, so I presume either that you know how to do that task using EasyBCD, or are fully capable of looking up how in the EasyBCD manual. Or you could simply follow Microsoft's instructions that use the tools that come with the operating systems, as aforementioned.

(One caveat: Neosmart uses non-Microsoft terminology in its documentation. The tasks that you want to do are duplicate your existing system partition on disc #1 onto disc #0, and add new entries to the Boot Manager menu for the new boot partitions of the various operating systems as you image them over. Neosmart, confusingly since your Microsoft tools and the Microsoft instructions for this are all using Microsoft terminology, calls this copying your boot partition from disc #1 to disc #0.)

That aside, there is little else that needs touching if you just image the boot volumes across into secondary partitions and create a separate primary system partition. All of the operating systems will need to be told afresh your preferred assignments of drive letters. But you must already know that every operating system has its own private notions of what letters are assigned to what, given that you've been switching between three different installations of Windows NT. ☺

share|improve this answer

If all you want to do is move all the partitions from one hard drive onto the larger one, just use a disk imaging tool. All the good disk imagers will have an option during restore that lets you adjust the size of each partition that's being restored, so you can reallocate space the way you want to. The MBR and all other boot data will be kept and you shouldn't have a problem rebooting.

I've had really good experiences with Acronis (not free) but there are other disk imaging options available. You may want to look at Hiren's BootCD for a good boot disk with lots of free utilities, including disk imaging.

share|improve this answer
Thank you. I have an older version of Acronis and am beginning to understand that it MIGHT be just that simple. While in Vista, looking at the HDs using Paragon I think it shows the MBR for each OS withIN the partitions, and my C: drive has various dirs and files named with ''boot'' in them so I guess that's where the BCD/menu resides. What about pointing the BCD to the new partitions on the HD? Will it figure them out itself? IIRC.. EasyBCD MAY be able to help me in that regard, should any problems arise. – M. Crewe Jan 1 '12 at 10:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .