To people wanting to put Linux on the microSD card while keeping the Windows installation intact:
Don't mess around with various bootloaders. If the BIOS can't read it the bootloader usually won't either. Essentially, you have to put your linux kernel and initramfs somewhere where GRUB can read them outright, preferably on the system drive:
- You could shrink the Windows partition to make about 500 MB of space. Then use your distro installer's Advanced formatting to create an ext4 formatted boot partition in that free space. Then put root (/) partition on the microSD. Alternatively, you can try setting up a partition there manually with fdisk and mkfs.ext4, then force the distro installer to use it as /boot.
- If you don't want to shrink the Windows partition, you can try putting the boot partition in the space currently occupied by Windows OEM or Recovery partition (usually 600-few GB in size). You can backup that partition with dd and restore it later. Also backup GPT partition table using sgdisk!
- If you don't want to do either, you can try to use a small USB as your linux boot partition. GRUB should be able to read it (as long as you have your keyboard attached).
For people wanting to try various linux distributions but not willing to completely discard the preloaded Windows:
- As long as you have a suitably big external media (microSD card, USB drive, external disk) to store the whole image on, you can backup the whole internal eMMC SSD using dd. Use sha1sum to create a hash of your system drive so you can verify it later. Make sure you have at least as much free space as is the size of your eMMC drive. After restoring, retrim ("optimize") the System drive in Windows. I tried this and can confirm my Windows was restored in its entirety!
Good luck, these were just quick tips, if anyone needs more detailed instructions, I can supply. Otherwise, Google is your friend (i.e. "backup GPT partition table sgdisk").