Multibooting confusion (Updated - skip to post #5)
I love ATI as a backup program, but I really purchased it for creating images that can be re-deployed on new multi-boot configurations. At first, I thought this should be fairly simple. I finally got the hang of properly configuring boot.ini on the right partition just in time for vista to come out with BCD which threw me for a loop; I got it working but still don't really know how. I tried adding Linux with GRUB to the mix with no success.
Basically, after all the headaches I've come to one conclusion: I just don't understand correct partitioning and boot configurations. Is there some master resource that can get me up to speed on how to do this successfully?
Here are some of the problems I've run into / skills I need to develop:
1). Partition types and correct layout - I just today learned that I have a logical partition (XP) inside an extended partition. There's free space inside the extended partition that I cannot create a new partition on without being booted into the XP partition inside the extended partition... huh? Why the extended partition and what's the correct way to manage it and boot into it?
2). Drive letter assignments - who determines them? The OS? The volume label? Once, when installing a fresh XP as a dual boot, it decided that the system drive for the new install was D:. When restoring that new install to another partition, for some reason it labels itself C:, and it manages to boot, but nothing works until I enter regedit and change the mounted devices drive letter assignment back to D:. Now I have a Windows 7 installation that calls the system drive I: and I'm afraid to ever restore that partition anywhere else.
3). Boot loaders - So BCD must run first to load boot.ini. GRUB can load BCD, which can then load boot.ini... theoretically. Is there really no "one loader boots all" solution? Where do the configuration files for each bootloader live, so I can image them with the correct operating system partitions?
4). Offline recovery tools - So my Win 7 disk doesn't seem to come with a bootable recovery console and FIXMBR command like XP did. The Win 7 automated boot recovery does nothing for my XP partitions... doesn't even seem to recognize windows 7 partitions at times... How do I fix all the flubs?
5). Partition numbering - how do I know, and is it absolute? What are the partition numbers inside an extended partition? IE just because diskpart in Win 7 says my XP drive inside the extended partition is #3, does that necessarily mean the boot.ini file should point to partition 3?
6). Support limits - only 4 primary partitions? Do the ones in the extended partition count? Can I downgrade partitions from primary without formatting?
Anyway... I'm certainly not expecting anyone here to answer all my questions and make me magically 'get it'. But I am hoping that someone here knows of a resource that can. Or am I just crazy to think that because I have ATI that I can create, move, resize, and otherwise complicate my partitions at will?

- Log in to post comments

Gary has provided some answers and some good links to read. I'll try to expand a bit in regards to TI and DD.
1. TI and DD don't care about the Extended Partition Container. In fact, they ignore it. This can cause some serious problems if you "mix" Primary and Logical partitions and aren't aware of it. (Windows will not let you create "mixed" Primary and Logical partitions.) It would be helpful to see a screenshot of what Disk Management shows. What you describe isn't clear. Is XP on a Logical partition?
"Mixing" Primary and Logical partitions means that one or more Primary partitions on the drive are surrounded by Logical partitions. For example: [Primary][Logical][Logical][Primary][Logical]. The second Primary partition is "mixed" with the Logical partitions. Disk Management will often not display this correctly and will show unallocated space where none exists. The drive size is also usually displayed incorrectly (larger than it really is).
2. As Gary said, drive letter assignments are made by the OS (Windows). They are stored in the registry. The assigned value is created from the Disk Signature and the partition's offset. If you duplicate an installed OS to another partition, these values get copied with it. When the copy boots, the same drive letters get assigned to the same partitions.
To avoid this, you must manually change the assignments (as you've done in the past) or configure the multi-boot system so that Windows is forced to reassign the letters how you want. In most cases, it's best to have the booted Windows partition assigned C:.
Windows 7 will usually assign itself C: (as will Vista). Since yours is I:, it may help if you posted a screenshot of what Disk Management shows.
3. Most third-party boot managers will chainload the OS. They boot first and then call the loader of the OS to take over the booting of the OS. If you install isolated operating systems, each partition will be self-contained (each will contain the booting files for its OS). For example: If you install XP to an Active partition, that partition will contain the booting files for XP. The problem comes when you get your booting files mixed up. If you install Vista or Windows 7 and another partition is Active (XP, for example), the new Windows OS will take over the booting of the old Windows OS (all booting files will remain on the XP partition).
To avoid this, make sure that when you install or repair a Windows OS in a multi-boot setup that the partition needing the repair is Active and any other Windows partitions are hidden.
Understand that when you multi-boot, there is always going to be some amount of tweaking necessary. It's best to learn it understand it so it's not a problem. Repairs are not difficult if the system is setup correctly.
4. The Windows 7 DVD has a lot of programs available (much, much more than XP's Recovery Console). You can access the Command Prompt and then run just about anything (Notepad, Regedit, etc.). FIXMBR and FIXBOOT (from XP) have been replaced with bootrec /fixmbr and bootrec /fixboot.
Depending on the problem, the automatic repair may require several runs to fix everything (usually not more than three). Also, if the correct partition isn't Active you can end up with a scenario that it can't repair. In that case, a manual repair is necessary.
For doing repairs to XP, you're probably better off using an XP CD. However, this depends on the nature of the problem.
5. Partition numbering is tricky. Windows uses a detection method that doesn't change (as far as I know), but the results can change if anything else has (disk order change, partition changes, etc.). Primary partitions are assigned first and then Logical partitions.
6. You can use a program like DD to convert a Primary to a Logical. Just be aware that this may change booting setups or require booting repairs. It can also result in "mixed" partitions. (It's strongly recommended to create an Entire Disk Image backup before making partitioning changes.)
- Log in to post comments

Phillip:
You have the right idea. The more you can read about the topic the less confusing it will become. In addition to Gary's and Paul's comments above, here are two places to go to find out more:
1. http://www.multibooters.co.uk/index.html - start here and read everything on the site to understand the quirks of Microsoft operating systems.
2. If you need to understand low-level topics like how disks are partitioned, what is contained in the Master Boot Record (MBR), how a PC boots, etc., then this is a good site: http://thestarman.pcministry.com/asm/mbr/index.html
- Log in to post comments

WOW! THANK YOU, THANK YOU, AND THANK YOU!
I am hugely impressed at and thankful for the detailed help you have each given me. As I've read around the links you've provided, I keep seeing the same names patiently helping others through this potential nightmare. You guys are saints!
I am not finished, and will continue reading your links. I'm sure I'll be back with a few detailed questions. For now, just a huge THANK YOU!
- Log in to post comments

So I did my research and thought I was well on my way to becomming a multiboot expert... 'till I actually attacked my harddrive and attempted to DO it. So, the time has come to ask a few more detailed questions.
First a little about my setup:
-Two 500GB HDDs in RAID 0 (striped) via my motherboard Asus P7P55D Pro (Intel chip)
-Tools used:
-Acronis TI Workstation 9
-UBCD 5.02 on CD
-ptedit.exe
-Win 7 Home, Vista Home Premium installation disks
-(XP installation disk, only useable with slipstreamed RAID drivers - cannot enter recovery console)
-Desired Partitions:
+1) Primary NTFS - Windows 7 Main
+2) Primary NTFS - Windows 7 Test
+3) Primary NTFS - BLANK (for installing temporary or experimental OSes)
+ ) Extended
++4) Logical NTFS - XP Pro "Pro Tools"
++5) Logical NTFS - XP Games OR Ubuntu (depending on my mood that day)
++6)Logical NTFS - DATA
++7)Logical FAT16 - XOSL
Accomplished so far:
-Created all partitions
-Installed Win 7 on Partition 1, generalized BCD, cleared Mounted Devices, Cloned onto Partition 2.
-Installed XP Pro on Partition 3
-Installed GAG to MBR and sucessfully booted into each partition, verified isolation.
Problems and questions so far:
1) I had decided to use XOSL as my boot manager - seemed the most functional. I cannot seem to install it.
a) Running from UBCD, I get an installation error "DISK FULL".
b) Tried creating a FAT32 partition and copying XOSL installation files to it so I could run from there - same error.
c) Installed UBCD to USB flash drive using RMPrepUSB as instructed in UBCD Wiki. My BIOS for some reason would not boot it as "Removeable Disk". I had to set the USB as the first HDD in boot sequence. Running XOSL from that USB drive worked great - except that it seems to have replaced the IPL on my Flash drive, so that without it my system wouldn't boot.
d) Each of these situations involved installation to my 32MB FAT16 logical partition at the end of the disk. This was originally created with Ranish Partition Manager. I tried reformatting it from Windows. Any possibility the problem is with my XOSL partition itself?
d) Gave up and installed GAG instead.
2) RAID support - runing Partition Manager on UBCD both in standard (from Memory) and live (from CD) modes, GParted displays my individual 500GB drives rather than my RAID 0 array, and thus finds no partition table. Everything says GParted support hard and soft RAID - am I doing something wrong?
3) Moving XP to Logical - I could use a good guide on the correct way to do this. It sounds like the boot files (ntldr, boot.ini, etc) MUST be on a Primary partition? But then maybe not after SP2?
a) I imaged from working primary & restored to logical - Fixed hidden sectors in boot sector using PTedit.exe, directed Boot.ini (on the logical partition with the new XP) to correct partition. Starts the XP logo, boots to blue screen and cursor. No love.
b) Tried with GAG option to Hide Primary Partitions checked and unchecked.
c) Though I don't think it should matter since both the original and new installations should see themselves as C:, I tried clearing Mounted Devices just in case. Still no love.
I think if I can figure out that XP on a logical drive, I'll be homefree for a while. I won't have to stress until I decide to try linux again...
Thank you so much for even having the patience to read to the end of this post.
- Log in to post comments

1. I haven't used GAG or XOSL so I can't help much there. However, it sounds like XOSL may be having problems properly seeing/accessing the RAID 0 drive.
2. Most likely, Parted Magic (GParted) doesn't have the correct Linux RAID drivers for your board. This results in what you're seeing -- separate drives. You might try version 4.11 or 5.0rc1.
3. XP can boot fine from a Logical partition. Verify that everything is configured properly. This includes the Hidden Sectors value, boot sector code, and boot.ini.
The best success is generally when C: is already correctly assigned in the Registry. This means that C: is pointing to the Logical partition before you try to boot XP. Otherwise, clear MountedDevices and make sure every other partition is hidden when you boot so that (hopefully) C: gets assigned to the XP partition.
---
I would not recommend "swapping" partition 5 between Windows and Linux. In my opinion, it's not worth the hassle. Linux takes such little space that it's easier to just give it 10-15GB. Also, remember it needs a swap partition.
- Log in to post comments

Thank you for your response!
What boot manager do you personally recommend?
What should I look for in the boot sector code?
Thanks!
- Log in to post comments

I use Grub4DOS, BootIt NG, and OSS. However, if Windows is starting to load, I don't think there's anything wrong with your setup (unless you can't properly hide partitions).
For the boot sector, it was more just part of checking that everything is correct. Again, if Windows starts loading, it's okay.
- Log in to post comments