Aug 28, 2012

Restoring the Windows 7 Boot Choice After Installing Windows 8 on a Second Drive

So, installed Windows 8 yet? Maybe you’ve got a fancy MSDN subscription, or maybe you’re a TechNet chap. Or maybe you’re still running the Release Preview. How are you liking it so far? Personally, I’m quite pleased with it.

Did you install Windows 8 on a new/second drive separate from your original Windows 7 installation? Maybe you were like me, hoping to keep it as a backup, just in case. I know especially during those older releases like the Developer Preview last year I wanted some insurance, and wasn’t ready to switch fully. Even now, I have some programs I still run on Windows 7 that I haven’t moved over yet. So, I installed the RTM version of Windows 8 on a second drive.

Everything installed great and I’m loving it so far. Except I don’t get a choice during boot-up to choose my OS!

Windows 8, like past versions, has a boot loader program that starts first. We need to inform it of our second OS so that it knows to give us the choice. This is done with the BCDEdit.exe command line utility. Let’s get started!

Before we start, I need to give the Standard Disclaimer. I am not responsible for you messing up your computer. These steps worked on my machine, that is all I can guarantee. Modifying your boot settings incorrectly can make your computer unusable (temporarily!) so make sure everything looks right afterwards before you reboot and then can’t get back into your OS. That said, if you follow my directions it is unlikely that you’ll be unable to boot or anything, maybe just that the Windows 7 choice won’t work.

Here are the steps we’ll be performing. Power users may be fine with just reading these!

  1. Start an administrator command prompt
  2. bcdedit /copy {current} /d “Windows 7”
  3. bcdedit /set {unique_id_given_in_step2} device partition=D: (replace D with letter of your other drive)
  4. bcdedit /set {unique_id_given_in_step2} osdevice partition=D: (same, replace with correct drive letter)

Got that? No? That’s okay, we’ll go through them a bit more slowly and with more details.

  1. Start an administrator command prompt (Start –> type “cmd” –> hold Ctrl+Shift and press Enter or right-click on cmd.exe and choose “Run as administrator”)
  2. At the prompt, type “bcdedit” and hit enter. You’ll get a listing of your current boot configuration options. You probably only have one entry for Windows 8. It’ll list both the manager settings and the loader’s settings. Once we get the second entry added, you’ll see that it lists two loader settings, one for each OS.
  3. We want to make a COPY of the current settings, rather than start from scratch. Fortunately, Windows 7 is similar enough that we likely won’t need to change much aside from the path. Execute the following command: bcdedit /copy {current} /d “Windows 7”
  4. You should get a “successfully copied” message along with a big mess of letters and numbers. This is the unique identifier, and we’ll need it as a reference. I recommend you copy the entire thing, including the curly braces {}, by right-clicking and using the Mark command. Highlight the text and right-click again to copy. I know, it’s a little awkward. Also, remember you’ll need to right-click and click Paste, as the Ctrl+V shortcut won’t work in the command prompt.
  5. We need to change the path to point to our other drive or partition. Typically, the Windows 8 entry will be pointing to C and we need it to point to D for Windows 7. You can find out by looking in Explorer now and seeing which letter is assigned to your other drive, the one with Windows 7 on it still. Once you know the drive letter, remember it for the next step.
  6. Execute the following command: bcdedit /set {UNIQUE_ID_HERE} device partition=D: but replace the D after partition with whatever letter you determined above on step 5. I don’t know if it is required or not, but I also ran the same command a second time but using “osdevice” in place of “device”.

And that should be it! Restart your machine and you should now get a bright-blue screen to choose an OS. You can even use your mouse!

You can change other settings, like the number of seconds it waits and such, more easily through the standard Windows dialogs. Open your System Properties (Start->Control Panel->System) and click “Advanced system settings” on the left to bring up the old System Properties dialog. On the Advanced tab under Startup and Recovery, click Settings… and you should see all of the boot options there.

Hopefully everything went okay. Enjoy dual-booting!

No comments:

Post a Comment