How to copy a MBR or rewrite it to another HDD ?

By Antipika ยท 9 replies
Dec 11, 2005
  1. Hi,

    Here's my problem :

    Actually i got 4 SATA HDD :

    0 : Primary HDD (MBR + bootable files + Windows XP SP2) [120 GB]
    1 : Secondary HDD (bootable + Windows XP SP2) [200 GB]

    [The two others one doesn't matter]

    Here a screenshot of PM 8.0, it will be easier to understand :)


    On my 120GB HDD was my old Windows XP SP2 installation, i have bought a NEW 200GB HDD (the second one) cause my first one was damaged (still damaged, work sometime, got some weird noise...).

    I have installed Windows XP SP2 on my new 200GB HDD, by the way my bootfiles (boot.ini / ntldr / ... ) are on my FIRST HDD (the 120GB one which is damaged). My MBR is on that drive too.

    So i need at moment my damaged drive too boot my fresh Windows XP installation (on the new 200GB drive).

    What i want to do is :

    Put the MBR on the 200GB working drive, and boot from that disc directly.
    REMOVE PHYSICALLY my 120GB damaged drive and throw it away.

    But i really don't know how to do that, and maybe i'll have some problem cause letters of my drives will change :< Well i need a kind of step by step tutorial.

    Thanks in advance.

  2. patio

    patio TS Guru Posts: 482

    If i'm not mistaken this will not solve your dilemna for a few reasons...
    An MBR is specific to the drive it is written on as it contains info about that specific drive: heads sectors etc.
    It also holds the volume label for that specific drive as well which again isn't interchangeable.
    If you copy an MBR from one drive to another you could render that drive inoperable.

    Maybe someone else will check in with more info...

    patio. :cool:
  3. Antipika

    Antipika TS Rookie Topic Starter

    Ok, i had already read that on some website before :<

    So it seems that i'll have to backup my files, throw away my old 120GB HDD, and re-install Windows on the new 200GB one (then re-install all my programs/drivers etc...) :(
  4. patio

    patio TS Guru Posts: 482

    Not neccessarily...if the 120 is still bootable i would use the manuf. utilities to just clone it to the new 200 and you should be good to go.
  5. Antipika

    Antipika TS Rookie Topic Starter

    The 200GB is already almost full, and the windows installation on the 120 one is ****ed'up :> So impossible :p
  6. Nodsu

    Nodsu TS Rookie Posts: 5,837   +6

    You can't really do much here.. You can recreate the MBR and make the 200GB drive bootable by using the Windows fixmbr and fixboot utilities. What you cannot do is fix all the drive letter references inside your Windows installation - when you installed the second copy, Windows saw itself installed on D: and that's how everything was set up in the registry.

    What you can try is removing the 120GB drive and then doing a repair install of Windows on top of the existing copy on the 200GB drive. And fix/reinstall any broken applications manually later on. (Ugly)
  7. patio

    patio TS Guru Posts: 482

    Well considering your situation as is right now if it were me i would do the following.
    Take the 200G to someone's house who has a DVD burner and backup all data i would need.
    Do the same for the 120G.
    Use that machine to partition/format and prep the 200G for use.
    Take it home boot to the XP CD and do a clean install and re-install all my apps.

    Sometimes you gotta just bite the bullet and start again.
  8. Antipika

    Antipika TS Rookie Topic Starter

    That's what i'll do :) I'll backup 200G on an external HDD, throw away the 120G, format the 200G, and re-install all apps.
  9. KaiTech13

    KaiTech13 TS Rookie

    There is a way.
    Windows knows which partition is what drive letter.
    Here's what I did in a similar situation. It only works if your system drive is C though.

    1. Take image of partition C.
    2. Disconnect the old drive and connect the new one to the same port.
    3. Install Windows on new drive. This is necessary for the MBR to be created.
    4. Overwrite the new drive partition with the image taken in step 1.
    5. Disconnect all drives except the new one.
    6. Boot into safe mode and then normally so that windows configures the new drive as drive C.
    7. Connect the old drives exactly as they were with the exception of the drive replaced, this one can be connected to a random free port.

    What happens is during the first boot with only one drive connected, windows replaces the drive ID for partition C.
    Once this is done the old partition C gets a new drive letter on the next boot with the other drives connected. The best thing is the other drive letters are untouched. In my case the old drive C came up as drive E.

    voila done...
    GizmoMechanic likes this.
  10. jobeard

    jobeard TS Ambassador Posts: 11,165   +986

    the partitioning looks like a Linux system is available. If so, you can use
    Linux tools to capture, save, and rewrite the MBR.

    the tool is DD (in lower case)

    use man dd to see the parms. (ah heck, see this)
    be sure to set

    count=1 to capture ONLY the first block on the device (ie the MBR)​

    if=FILE should be the /dev/hdx for the drive you wish to capture
    of=FILE would be a place to SAVE the MBR

    If the NEW drive is also available to Linux at the same time, then you can
    install the OLD MBR onto the NEW drive by

    of=/dev/hdy for the new drive
    all other parms are the same as before

    If a dual boot manager is installed (Grub, LILO, Boot magic) then that will
    be captured also which means there will be pointers in the MBR to HD(x) files
    than might not exist on the new drive OR refer to the wrong order of drives.

Topic Status:
Not open for further replies.

Similar Topics

Add your comment to this article

You need to be a member to leave a comment. Join thousands of tech enthusiasts and participate.
TechSpot Account You may also...