Ok, I have looked around and not seen a dupe of this question. I have also looked online and really have not found a sufficient answer.

I am finishing an associates degree, and am basically needing three separate OS's this semester.

My main OS is Windows 10 Pro, which is installed and fine. I am also needing Kali 2016.2 for a Firewalls/Intrusion Detection course, and Debian 8 for a Unix II course.

Everything is all rainbows and unicorns until I get to setting up grub on the additional installations. How do I do so without wrecking access to Windows?

So far, I have set grub to the windows drive, not overriding the MBR, but when I do a boot override and try and boot the disks with linux on them, all I get is a black screen with a blinking prompt.

Any help would be greatly appreciated.

Also, Kali first or Jessie first?


That kind of question is quite hard to explain, but I can help you with the processes you need to take:

1) Back up your current MBR (first do a backup of the original one with dd if=/dev/sd# of=mbr.bkp bs=512 count=1 Consider # the letter of your main drive with MBR, and will generate a file called mbr.bkp in your current directory.

2) Install grub into your MBR with your 1st Linux, consider it as your "main" one, because it will be responsable of maintaining "grub" configuration. Is a bad idea to have 2 grubs overriding theirselves again and again when you have custom configurations, by default, should be fine.

3) In case your grub doesn't detect your Windows, you will need to evaluate case by case what would be wrong, but the chainload +1 will be enough. If this step fail, you can rollback your mbr with dd if=mbr.bkp of=/dev/sd#

4) Install your second distribution, Linux installers may override your previous grub from step 2. In case everything is fine, you should see both distros and Windows without problem due grub2 scripts for other Linux and Windows.

In case doesn't work and you only see one distribution, you need to check what the command grub-mkconfig shows and check if the scripts are detecting your 2nd distro and Linux correctly. In case of debugging, for grub2 the script 10_linux do a proper analysis of your partitions and copies the grub configuration of that distro alongside your current one, 30_os-prober will detect Windows. Also, if you have real problems, you can create your own configuration at /etc/grub.d/* alongside the other scripts.

Just make sure to NOT be at UEFI because Windows would make some problems trying to make grub working correctly due UEFI sign keys by default (Microsoft ones).

  • Yeah, the reason I had asked this question, was that earlier this semester I was running on an MSI GL62 laptop. Installed Debian 8 on an external, and on accident selected yes to the MBR replacement. Needless to say, did not work well. That laptop only would run Fedora and Debian, likely a skylake issue, so im lugging around an AMD desktop with a Sabertooth 990fx R2 board. I do have secure boot permanently disabled. – NZKshatriya Sep 24 '16 at 23:03
  • That skylake issue is currently solved on latest Linux kernel (I still have other problems) luckily, just in case you have to work under that laptop again, you can add into your grub i915.preliminary_hw_support=1. In case of AMD with Sabertooth I think using any kernel above 4.5 would be fine – WalterCool Sep 24 '16 at 23:10
  • My bad, Sabertooth isn't the last gen of AMD, I saw some support added in previous kernel. For your AMD desktop, is that your problem? forums.gentoo.org/viewtopic-t-972472-start-0.html – WalterCool Sep 24 '16 at 23:13
  • Yeah its the desktop. Was thinking if I went backwards a bit tech wise, less problems right? Now, why is it that after running the installer for Kali 2016.2, when it scans for other OS's prior to installing grub, it does not find Windows 10? Is it only looking on the drive it's installed on and not all drives connected? That's what gets me nervous, when software doesn't see things that should be in plain sight – NZKshatriya Sep 25 '16 at 2:50
  • excuse me while I smack my head into a wall for a minute or two. Maybe making the SSDs GPT and not MBR might change things. – NZKshatriya Sep 25 '16 at 3:42

One alternative solution is to run the Linux distros in virtual machines. For example, you could install Virtualbox and create separate virtual machines for Kali and Debian. Virtualbox puts the guest operating systems behind NAT by default. If this is a problem, choose the bridged adapter in Virtualbox's network settings to get the guests on the same network as the physical machine.

  • I will likely end up doing that for Kali, but the professors for my Unix II and Firewalls/Intrusion Detection courses are so frothing at the mouth anti-anything-other-than-nix, that I'd rather not incur their wrath with virtuals lol. Already drew some ire when I dared install Bash on Ubuntu on Windows as a joke. – NZKshatriya Sep 25 '16 at 7:44
  • This is what I ended up doing: Got Ubuntu 16.04 and Debian 8 working on their own drives: just disconnected all drives except the target and installed, repeated steps for the next drive. Kali will go on a virtual. Sure Im going to have to manually select which drive I boot from during boot, but no bootloaders got messed up. Now that that's solved, I can work on finding my wallet so I can go and get coffee -_- – NZKshatriya Sep 25 '16 at 15:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.