Ubuntu – Installing Windows 10 without USB with ubuntu 18.04: this is not a bootable disk error

bootdual-bootgrub2partitioning

I've found on google a way to install Windows 10 without an USB/DVD by copying the installer to a second partition and make it bootable. I've managed to do that and update my grub but when I'm trying to boot into the new partition this error comes up: This is not a bootable disk please insert a bootable floppy.

Is there any way to install Windows 10 using this way or I should give up? Notice that I can't buy an USB at the moment.

Here's my grub menu-entry for the windows setup:

menuentry 'Windows Recovery Environment (on /dev/sda4)' --class windows --class os $menuentry_id_option 'osprober-chain-592C85254E2CD0B7' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos4'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos4 --hint-efi=hd0,msdos4 --hint-baremetal=ahci0,msdos4  592C85254E2CD0B7
    else
      search --no-floppy --fs-uuid --set=root 592C85254E2CD0B7
    fi
    parttool ${root} hidden-
    drivemap -s (hd0) ${root}
    chainloader +1
}

Best Answer

  • Installing Windows 10 without USB using Ubuntu, Step by Step

    This step by step has been created from information provided by the OP, @Marcel Alexandru.

    • Backup the Target drive.

    • Create a 6GB NTFS partition on the hard drive and extract the Windows ISO to it.

    • Create a 20GB, or larger, NTFS partition on the hard drive for the Windows Installation.

    • Open Disks, (Gnome-Disks), and note Device, (/dev/sdx), and UUID of the Windows ISO extract partition.

    • For msdos partition table, copy the menuentry given in this question to /etc/grub.d/40-custom/*

    • Add ntldr /bootmgr as a line below chainloader +1

    • Edit menuentry, changing sda4 to sdax, msdos4 to msdosx (4 places), and 592C85254E2CD0B7 to UUID, (3 places), to suit step 4 above.

    • Run sudo update grub confirm that ntldr /bootmgr appears in grub.cfg.

    • Boot the computer into the newly created menuentry and install Windows into it's new partition.

    • Reinstall Ubuntu if desired, the GRUB bootloader will have been replaced with the Windows bootloader.

    *Note from the OP: You don't have to reinstall Ubuntu to fix the grub loader. You can boot in the Ubuntu Live USB, open a terminal and open Boot Repair using the boot-repair command. If it's not available you can install it using the following commands:

    sudo add-apt-repository ppa:yannubuntu/boot-repair
    sudo apt-get update
    sudo apt-get install -y boot-repair && boot-repair
    

    For more information about repairing your Grub follow this link: https://help.ubuntu.com/community/Boot-Repair.

    *For gpt partition table, copy the following menuentry to /etc/grub.d/40-custom/:

    menuentry 'Windows Recovery Environment (on /dev/sdc1)' --class windows --class os $menuentry_id_option 'osprober-chain-5642BC722509341F' {
        insmod part_gpt
        insmod ntfs
        set root='hd0,gpt1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  5642BC722509341F
        else
          search --no-floppy --fs-uuid --set=root 5642BC722509341F
        fi
        drivemap -s (hd0) ${root}
        chainloader +1
        ntldr /bootmgr
    }
    

    This method can also be adjusted to make a Windows installer USB or to add a Windows installer to a multiboot USB.