Changing the boot partition

K

Ken

I recently bought a computer with Windows 7 64bit, and since it had a
restoration partition like most do, I thought I would investigate how to
change the boot partition should I one day decide to delete the
restoration partition and go with a clone of the OS partition. In
Windows XP you could edit the Boot.ini file once the restoration
partition was deleted so that the OS would be the first partition and
not the second as when a restoration partition exists.

I found that Boot.ini no longer exists for Windows 7, but is replaced
the boot configuration data store, accessed by the command BCDEDIT. Has
anyone edited the data in that file and changed the boot partition? It
would be nice to see what the data looks like, if someone could paste
such a file in their answer.

I find the restoration partition useful before all the programs are
installed by a user, but a clone of the OS partition to another HD is a
more practical way of getting back once software has been installed.
Appreciate any insight you have on this topic.
 
S

Stan Brown

I found that Boot.ini no longer exists for Windows 7, but is replaced
the boot configuration data store, accessed by the command BCDEDIT. Has
anyone edited the data in that file and changed the boot partition?
I haven't, but I found the "Boot" tab in the MSCONFIG program was
adequate for the simple edits I needed to do.
 
K

Ken

Stan said:
I haven't, but I found the "Boot" tab in the MSCONFIG program was
adequate for the simple edits I needed to do.
I have not looked at this tab yet, but let me set up a scenario then
ask you a question.

I generally clone my hard drive to another hard drive so that if I have
a crash I can rapidly be back to operating by switching hard drives.
Since it takes so long to load all the software a user wants and tweak
the settings for everything, I generally like to delete the restoration
partition. (No one wants to go back to the way the computer was when
first purchased.)

For Windows XP, you could edit the boot.ini file without booting into
XP to correct for the fact a partition had been deleted. As you know,
the restoration partition is normally partition 1, and the boot
partition is partition 2 when a restoration partition exists. You would
need to make the boot partition 1 instead of 2 otherwise it would not boot.

My question is: Would you need to boot to the Win 7 cloned drive, edit
the partition number to 1, shut down and then delete the restoration
partition so it could boot? Or is there a way of booting into Win 7
even though the partition number was still set at 2?? I hope you
understand what I am trying to say.
 
J

John

Ken said:
I have not looked at this tab yet, but let me set up a scenario then ask
you a question.

I generally clone my hard drive to another hard drive so that if I have
a crash I can rapidly be back to operating by switching hard drives.
Since it takes so long to load all the software a user wants and tweak
the settings for everything, I generally like to delete the restoration
partition. (No one wants to go back to the way the computer was when
first purchased.)

For Windows XP, you could edit the boot.ini file without booting into XP
to correct for the fact a partition had been deleted. As you know, the
restoration partition is normally partition 1, and the boot partition is
partition 2 when a restoration partition exists. You would need to make
the boot partition 1 instead of 2 otherwise it would not boot.

My question is: Would you need to boot to the Win 7 cloned drive, edit
the partition number to 1, shut down and then delete the restoration
partition so it could boot? Or is there a way of booting into Win 7 even
though the partition number was still set at 2?? I hope you understand
what I am trying to say.

Be careful, if the partition in question has a drive letter assigned to
it by the host OS you could be in for a major surprise if it is removed.
XP's registry still has hard coded drive lettering in 2011, particularly
M$ software. Just redirecting boot.ini to the proper partition or drive
only gets you a boot, not necessarily an operating system.

I haven't tried Win7 so can't say for sure in that case, but I have my
doubts there has been major improvements in that area. M$ simply doesn't
cater to people who want to do what you have in mind.

John
 
R

R. C. White

Hi, Ken.

Sorry I'm late to this thread, but you need to study some terminology,
especially the definitions of "boot partition" and "system partition". The
definitions are counterintuitive, exactly reverse from most users'
understanding. As Ed Bott in the Windows Inside Out series (and other
writers) have said, "While those unsophisticated in such matters might think
it strange, we BOOT from the SYSTEM partition and keep the operating SYSTEM
files in the BOOT partition."

For years I pointed users to KB 314470, "Definitions for system volume and
boot volume" ( http://support.microsoft.com/kb/314470/EN-US/ ). Caution:
This was written for WinXP, and some details have changed for Vista and
Win7. But the core definitions remain the same.

The "boot volume" of any recent Windows installation is the partition (or
logical drive in an extended partition) that holds the \Windows folder tree
(called the "boot folder" for that installation). This can be any volume on
any HDD in the computer. Windows doesn't care at all if it is the 3rd
logical drive in the extended partition on the second HDD - and it doesn't
matter if it is called Drive C: or Drive D: or Drive X:. But, once the
letter is assigned by Setup during installation, it can't be changed - in
that installation - except by running Setup again; in other words, by
re-installing that Windows installation.

The "System Partition", on the other hand, MUST be a primary partition on
the HDD currently designated in the BIOS as the boot device, and that
partition must be marked "Active" (bootable). (Each HDD can have up to 4
partitions, but only one - at a time - can be marked Active.) The System
Partition need not be on the first HDD; it can be the 3rd partition on the
second HDD, but the BIOS must be set to boot from that HDD, and its
partition table must code that partition as Active. We seldom see such an
arrangement and almost all computers have the first physical partition on
the first physical HDD as the System Partition - but that is not a
requirement.

WinNT, Win2K and WinXP all used NTLDR and NTDETECT.COM to load Windows, with
Boot.ini showing the way to the Boot Partition and the Boot Folder. Those 3
files had to be in the Root of the System Partition because, at the point in
the startup process when those files were needed, the system did not yet
know how to deal with partitions or even folders. In Boot.ini, physical
disks were numbered starting with Disk 0; partitions were numbered starting
with 1 on each disk; the second partition on the second physical disk would
be Disk 1, Partition 2. (Vista and Win7 no longer use those files, but if
we want to dual-boot to Win2K/XP, they must be in the System Partition so
that the BCD system can find them and turn over control to let them load
NTLDR.)

Win2K introduced the more complex Boot Configuration Data store, or BCD. It
replaced NTLDR, etc., with Bootmgr (no extension) and the \Boot folder (an
unfortunately confusing choice of name!), which holds the BCD files.
Bootmgr and the Boot folder, of course, must be in the System Partition;
these point the way to Win2K's boot volume. Win7 continued this new startup
process, with only minor variations, except that when Win7 is installed on a
virgin system that does not already have a System Partition, it creates a
small partition before the traditional "Drive C:". This small partition -
which might not be assigned a drive letter at all - becomes the System
Partition and holds those few startup files. Many computer
manufacturers/vendors also create a partition, such as the "restoration
partition" that you mentioned, to hold the factory-default configuration of
their version of Win7; this partition also might not be assigned a drive
letter.

You asked about BCDEDIT, "Has anyone edited the data in that file and
changed the boot partition? It would be nice to see what the data looks
like, if someone could paste such a file in their answer." BCDEdit.exe is
the program that lists the contents of the BCD. For a multi-boot system,
this can get quite long, but my own system is not currently dual-boot, so my
BCD is much shorter. Here's a paste of the output of BCDEdit:

D:\>bcdedit

Windows Boot Manager
--------------------
identifier {bootmgr}
device partition=D:
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {current}
resumeobject {d1998322-82e6-11de-ae1c-9ae7b6accfed}
displayorder {ntldr}
{current}
toolsdisplayorder {memdiag}
timeout 5

Windows Legacy OS Loader
------------------------
identifier {ntldr}
device partition=D:
path \ntldr
description Earlier Version of Windows

Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.exe
description Microsoft Windows 7 Ultimate x64 (C:)
locale en-US
inherit {bootloadersettings}
recoverysequence {d1998324-82e6-11de-ae1c-9ae7b6accfed}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {d1998322-82e6-11de-ae1c-9ae7b6accfed}
nx OptIn


As you can see, it's more complex than Boot.ini, and BCDEdit.exe is not easy
to work with, which is why apps like EasyBCD are popular.

With Disk Management (in every Windows version since Win2K), we can change
the letter of any volume - except the Boot and System volumes (and Disk
Management tells us which volume(s) these are for the installation currently
running). Left to its own devices, Win7's Setup.exe will assign C: to its
own Boot Volume (see above), then assign other letters. If we want to
control the boot volume letter, then we must boot into an existing Windows
installation, assign the letter we want to the partition of our choice, and
then run Setup from that existing desktop, rather than booting from the Win7
DVD to run Setup. As you can see from my BCD above, my System Partition is
D:, which is the first partition on Disk 0, and my Boot Volume is C:, which
is the first logical drive in the extended partition on that same Disk 0.
But I've often had Vista in Drive V: and currently have another Win7 on
Drive G: (which was installed later and does not show up in this BCD - part
of a recent reorganization, which is a whole 'nother story).

Just remember that each Windows installation has its own Boot Volume,
including its own Registry, and its own list of "drive" letter assignments.
In a dual-boot system, WinXP has no idea which letter Win7 has assigned to
any partition, and vice versa. So be sure to give each partition a NAME (a
label), which will be written to the disk and will not change when you boot
to the other OS. (At one point during the Vista beta, I had as many as 8
WinXP/Vista installations at once, including betas, both x86 and x64, and
believe me, it got very confusing! Put names on your partitions!)

Sorry for such a long sermon, Ken, and sorry to be late. (I was working on
my own aforementioned disk reorganization.) You probably already have your
problem under control, but maybe this will add to your understanding of the
system, and it may help other readers.

RC
--
R. C. White, CPA
San Marcos, TX
(e-mail address removed)
Microsoft Windows MVP (2002-9/30/10)
Windows Live Mail Version 2011 (Build 15.4.3508.1109) in Win7 Ultimate x64
SP1


"Ken" wrote in message
I recently bought a computer with Windows 7 64bit, and since it had a
restoration partition like most do, I thought I would investigate how to
change the boot partition should I one day decide to delete the
restoration partition and go with a clone of the OS partition. In
Windows XP you could edit the Boot.ini file once the restoration
partition was deleted so that the OS would be the first partition and
not the second as when a restoration partition exists.

I found that Boot.ini no longer exists for Windows 7, but is replaced
the boot configuration data store, accessed by the command BCDEDIT. Has
anyone edited the data in that file and changed the boot partition? It
would be nice to see what the data looks like, if someone could paste
such a file in their answer.

I find the restoration partition useful before all the programs are
installed by a user, but a clone of the OS partition to another HD is a
more practical way of getting back once software has been installed.
Appreciate any insight you have on this topic.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top