Move bootloader to another disk

Discussion in 'Windows 7 Installation' started by tom poes, Nov 26, 2009.

  1. tom poes

    tom poes Senior Member

    Nov 25, 2009
    Likes Received:

    I recently installed Windows 7 home premium 64-bits. I upgraded it from a Windows vista business 32-bits. That was not trivial, but it worked fine. Problems came when a driver "classpnp.sys" made the system halt. Repair programs did not work until I copied another file over the driver and a repair. So far, so good.

    My system works! I have a multiple boot with Kubuntu 64-bits and Windows 7 64-bits living nicely together! Also I have a Ubuntu which is not upgraded yet. Before I do that I wanted to make a backup of the Windows Image. To my surprise however windows 7 want not only a backup from C-drive, but also from L: :confused: That L-drive is a big data drive with movies. I want to backup that seperately, not together with the windows system drive (C: ) . This here is a listing from bcdedit using powershell (in admin mode)

    Windows Boot Manager
    identifier              {bootmgr}
    device                  partition=L:
    path                    \bootmgr
    description             Windows Boot Manager
    locale                  en-US
    default                 {current}
    displayorder            {current}
    timeout                 30
    Windows Boot Loader
    identifier              {current}
    device                  partition=C:
    path                    \Windows\system32\winload.exe
    description             Windows 7 Home Premium (recovered)
    locale                  en-US
    recoverysequence        {c54b8dee-d786-11de-be76-97969b21e55f}
    recoveryenabled         Yes
    osdevice                partition=C:
    systemroot              \Windows
    resumeobject            {d7f165e9-d9f8-11de-a08b-806e6f6e6963}
    As you can see the bootmgr is on L: while the system is on C. I gather this the reason windows 7 want to backup both disks. The reason is probably that my drives are remapped. Drive letters on the windows repair CD are different from those on a running system. Physically L is the first harddisk as DISKPART shows.

    DISKPART> list volume
      Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
      ----------  ---  -----------  -----  ----------  -------  ---------  --------
      Volume 0     F                       DVD-ROM         0 B  No Media
      Volume 1     G                       DVD-ROM         0 B  No Media
      Volume 2     L   ISOTALO      NTFS   Partition    931 GB  Healthy
      Volume 3     C   WINDOWS7     NTFS   Partition     50 GB  Healthy    System
      Volume 4     D   USER         NTFS   Partition    346 GB  Healthy
      Volume 5     X   XDRIVE       NTFS   Partition    931 GB  Healthy
    C and D are separate partitions on the same disk (there 2 others for Ubuntu there, but that is not relevant now).

    I want to move bootmgr and \Boot directory to C. I can do that physically (in Ubuntu), but windows 7 does not seem to recognize the fact and a seperate backup of C and L remains impossible. Another weird thing. I can give

    bcdedit /enum or 
    bcedit /enum all
    command. But that's all I can do working under windows 7 (even with admin rights).

    HOW can I move the boot loader from L to C???
    #1 tom poes, Nov 26, 2009
    Last edited: Nov 26, 2009
  2. tblount

    tblount New Member

    Sep 27, 2009
    Likes Received:
    The bootmanager files use a guid number to identify a hard drive. So you can't copy the bootmanager files (bcd) to another drive because they will seek out the drive they were copied from. This is why cloning is a thousand times better than a backup or diskcopy. Cloning software such as True Image, fixes the bootmanager so that you can boot into the backup drive.

    Companies who set up a lot of systems use a special migration tool that also does this fix after the standard image is put on the drive. User State Migration Tool | Migrate User Profiles | Windows 7

    I *think* you can make a disk copy... then remove the primary drive so that only the drive with the copy is in the system... then boot to the install disk and run the three bootrec commands to rebuild the boot files and get the guid numbers reset.

    You *may* have an option to edit your drive letter with easybcd, but I have seldom had success using it.
    Here is a section from my website Windows 7 Tweaks, Tricks, Tips, Secrets, Shortcuts, Solutions and Fixes for adding options to the boot menu that may make it more clear.

    It's easy set up a multi-boot menu (only 3 commands) to boot directly into your
    backup drive without the need to modify your bios boot sequence twice (to set
    the boot priority and then reset it back to your primary drive.)

    First this is VERY IMPORTANT: make a backup of your bcd file first on your
    primary hard drive. (That is the file the multi-boot menu options are stored
    in.) (BcdEdit.exe is on your Win 7 install cd - Also if you search your
    windows\winsxs folder you'll find it deep inside and can copy and paste it to
    another folder where it's easier to access. If you can't find BcdEdit.exe then
    you probably shouldn't be doing this anyway.)

    From a command prompt (in the FOLDER where you copied BcdEdit.exe) type and enter:

    BcdEdit /export c:\savedbcd

    If you mess up, you can always undo changes with this command:

    BcdEdit /import c:\savedbcd

    Here are the 3 commands to run from the command prompt set up your multi-
    boot menu to access your backup hard drive. You can copy these commands from
    here and paste them to your command prompt window with a right click / paste.

    BcdEdit /copy {current} /d "Backup Drive"

    You will get this message with DIFFERENT guid numbers

    The entry was successfully copied to {bda1ead3-8577-11de-883c-00226808ae4c}

    Use YOUR guid number (including {} )in the 2 following commands and use YOUR
    backup drive letter, mine is E:

    NOTE! If you install an additional hard drive in
    your system, it may change your backup drive LETTER and your multi-boot menu
    option (to load your backup drive) will not function. You can still modify your
    bios boot sequence to boot into your backup drive or repeat this process using
    the correct drive letter... or when/if you remove the drive you added the multi-
    boot menu will be correct again. It also may be possible to set the priority of
    your 1st 2nd and 3rd hard drive in the bios --under hard drives -- not boot
    sequence. Not all bios-es support this.

    Note: It is easier to right click in your Command Prompt window and select
    "Mark" and highlight YOUR guid number then press ENTER to copy it. Then CTRL + V
    to paste it to the command below where it says "YOUR GUID NUMBER" Then copy and
    paste the entire command - including YOUR drive letter - to your command prompt
    and press enter.

    BcdEdit /set { YOUR GUID NUMBER } osdevice partition=E:

    Use up arrow key and set the description after your guid number:

    BcdEdit /set { YOUR GUID NUMBER } description "Backup Drive"

    That's it! You can run Msconfig and look under "Boot" and see your entry. If you
    make mistakes with the numbers, BcdEdit will complain... and if there is
    something you don't like about the description or you made a mistake with the
    drive letter or it doesn't work when you test it later, you can simply delete
    your entry in Msconfig/boot and try again.


    You can also set up your multi-boot menu to offer the option to boot to a
    command prompt (instead of loading Windows.) Just insert a USB flash drive and
    use it's drive letter in the steps above. (Name it: Command Prompt) You don't
    need any files or folders on the USB and after you run the BcdEdit commands you
    can even remove it.... and windows will go into restore mode when no os is
    found. (You only need a valid drive letter when you run the BcdEdit commands. An
    SD disk will probably work just as well.) When you BOOT into your "Command
    Prompt" from your multi-boot menu, you will enter the repair mode. Cancel System
    Repair and go to Advanced System Restore, click Next and Ok then select Command
    Prompt. (Somewhere in there, Shift + F10 may go directly to the command prompt
    too... I'm getting a headache about now.)

    If you boot to the command prompt (using THIS method) it's faster and much
    easier than going into your bios to configure the boot sequence to boot from
    your dvd, then changing it back. As you know, at this command prompt (rather
    than the one that opens when you are running Windows) you will circumvent the
    protections that Windows applies to lock/hide files (to keep one user from
    viewing another user's data, etc.) When Windows is loaded you'll get at least
    100 file protection errors if you simply try to xcopy the user's profiles to
    another drive. If you boot to a command prompt from the multi-boot menu, (or
    from the install disk) you can copy anything/everything.

    Note: ANOTHER method to create a bootable USB drive is to use the "Backup" tool
    in Win 7 and select "Create a system repair disk" Then make the disk and copy
    all the files (hidden and system) to a USB drive. This USB setup WILL boot to
    the repair mode (on it's on) when the bios priority is set to USB.
  3. tom poes

    tom poes Senior Member

    Nov 25, 2009
    Likes Received:
    Thanks for the extended post. I will try to work it out. When I find a solution I will post it here.

Share This Page