USB boot and MBR how-to’s

When setting up a dual-boot computer or even simply a new Windows computer:
1. Have a Linux Live CD/DVD/USB handy. It’s almost guaranteed that you will need it even if you’re only installing windows.

2. Save the MBR (“Master Boot Record”): Boot your Live linux and in the terminal type:
sudo dd if=/dev/sda of=/some/path/your-mbr-backup-file bs=512 count=1

An excellent article on MBR and it’s internal structure can be found here:, the gist of it being that MBR consists of: 512 bytes total = 446 bytes (the Bootstrap loader code) + 64 bytes (Partition table) + 2 bytes (Signature).
So if you only want to copy the bootstrap loader, not overwriting the PT and signature you will need to adjust the bs param of the dd command to copy just 446 bytes, not the entire 512 byte block.

3. BIOS – Disable UEFI boot or you won’t be able to dual-boot.

4. Install Windows first. Why? Coz it’s dumb (AND evil!). If you put anything on the MBR the windows installer will not work, telling you that there is no drive found, that you need to load drivers for the drive, etc. In reality it simply didn’t find it’s beloved MBR in the firs sector, the drive is fine.

Should this somehow happen – use your your-mbr-backup-file which you create earlier to restore the MBR:
sudo dd of=/dev/sda if=/some/path/your-mbr-backup-file bs=512 count=1

Creating a bootable USB from an ISO which contains a boot image is as simple as:
sudo dd if=xubuntu-14.04.3-desktop-amd64.iso of=/dev/sdb bs=8M

5. If after installing Windows you have problems with the HDD in the Linux installer, e.g. installer or gparted sees the disk as one big empty space, even though there is at least 2 NTFS partitions… or complains about presence of both MBR and GPT:
$ gdisk /dev/sda
If gdisk asks about presence of both MBR and GPT and which one to use select MBR. Then type ‘x’ to enter the ‘experts’ menu. Then ‘z’ to zap the GPT data. On the next 2 prompts confirm destruction of GPT (‘y’), do not wipe out MBR (‘n’)

Leave a Reply

Your email address will not be published. Required fields are marked *