Kali Linux, Tutorials/Tips

How to dual-boot Kali Linux 1.0.9 and Windows 7/8 on a PC with UEFI firmware

Editor: For a more recent version of this article, using the latest edition of Kali Linux and Windows 10, see Dual-boot Kali Linux Rolling 2016.2, Windows 10 on a PC with UEFI firmware.

The last dual-boot tutorial on Kali Linux I wrote was back in March 2013 (see Dual-boot Windows 7 and Kali Linux), and that was on a computer with Legacy BIOS. That means it’s not a very useful guide if you wish to dual-boot a recent edition of Kali Linux and Windows 7 or Windows 8 on a computer with UEFI firmware.

So, following an exchange with a recent visitor to this site, I decided to make an attempt to dual-boot the latest edition of Kali Linux and Windows 7 on a computer with UEFI firmware. And since Windows 7 and Windows 8 share the same installer, it can also be used as a guide if Windows 8 is your choice of a Microsoft operating system.

The first attempt failed, but I quickly figured out why. So for the benefit of those who might want to do the same, this tutorial provides a step-by-step guide on how to get it done. If you are new to Linux and have never installed any distribution or attempted to dual-boot a Windows operating system and a Linux distribution, this guide gives you all you need to dual-boot Windows 7 or Windows 8 and the latest edition of Kali Linux on a computer with UEFI firmware. It will, however, help if you read A beginner’s guide to disks and disk partitions in Linux before attempting it.

By the time you’re through with this guide, you should have a computer with Kali Linux installed alongside Windows 7 or Windows 8 on the same hard drive, so that when you attempt to reboot into Kali Linux, the GRUB menu should look like the one shown in Figure 1.

Kali Linux Windows boot manager
Figure 1: GRUB menu of Kali Linux 1.0.9 showing entries for Kali Linux and Windows 7.

For that to happen, you’ll first have to download the latest edition of Kali Linux from https://www.kali.org/downloads/. The edition used for this tutorial is Kali Linux 1.0.9a, which has support for UEFI booting. After downloading it, transfer it to a USB stick (recommended) or a blank DVD. See this forum post for how to transfer it to a USB stick in Linux.

You’ll also, of course, need a computer with Windows 7 or Windows 8 installed. The computer could be an OEM unit (store bought) or custom-built. Then you’ll have to shrink the C drive to create enough disk space that Kali Linux will be installed on. For this tutorial, I used a custom-built unit and installed Windows 7 on it. The hard drive is a 500 GB piece, so I recovered about 200 GB from it to use for Kali Linux. Figure 2 shows the partitions on the system as seen from the Windows 7 partition manager.

Windows 7 partitions
Figure 2: Windows 7 partitions as seen from the Windows partition manager. The C drive is highlighted.

And this is what it looks like after shrinking the C drive. See this forum post for help on how to shrink a Windows 7 or Windows 8 C drive. That Unallocated space will be used for Kali Linux. Note that on a store-bought computer, there’ll likely be more partitions than shown here. But that does not have an impact here because the only partitions that come into play are the C drive and the EFI System Partition. In Figure 3, that partition is the 100 MB partition.

Free space on Windows 7
Figure 3: Windows 7 partition manager showing the free recovered from the C drive.

Once you have all you need in place, insert the installation media (USB stick or DVD) into the appropriate place and reboot the computer. It should boot into the installation media if it was configured to boot from it. Otherwise, access the computers boot menu and select the entry that points to the UEFI-aware version of the installer. Figure 4 shows the entries on the boot menu of the computer used for this tutorial. The PNY entries are for the UEFI- and non-UEFI versions of the installer.

UEFI boot menu
Figure 4: Entries on the boot menu of the test computer used for this tutorial.

After selecting the UEFI-aware version of the installer, you should be presented with the Kali Linux installer’s menu. Pressing ENTER should cause it to boot into the Live desktop. From there, launch the installer by accessing it from Applications > System Tools > Install Kali Linux.

Kali Linux install menu
Figure 5: Entries in the Kali Linux 1.0.9a install menu.

After the installer starts, click through the first few steps until you get to the step shown in Figure 6. All the entries sown here are the partition methods. The installation will fail if you select any automatic partitioning method, so select Manual and click Continue.

Kali Linux partition methods
Figure 6: Partition methods of the Kali Linux installer.

You should now see a window with the disks connected to the system listed, along with their partitions. In Figure 7, the first three partitions are the Windows 7 partitions. Partition #1 is the EFI system partition, while partition #3 is the C drive. Below that is the Unallocated space that was recovered from the C drive. I’ll address the EFI system partition later, but for now, let’s install Kali Linux on that free space. To do that, double click on it.

Kali Linux installer free space
Figure 7: Kali Linux install showing free space derived from the C drive.

You should be presented with the entries shown in Figure 8. Select Automatically partition the free space, then click Continue. Or just double click it.

Kali Linux partition options
Figure 8: Kali Linux free space partition methods.

The next step lets you decide how many partitions the installer should create. The first option will cause the installer to create just two partitions – the root partition and another partition for Swap space. That’s recommended for new users, but if you want your home directory on a separate partition, select the next option. Whichever option you select, click Continue afterwards.

Kali Linux home partition
Figure 9: Kali Linux option to create a partition for /home.

Figure 10 shows the result of the last operation. Partitions #4, #5 and #6 are the newly created partitions. The partition number might not match with yours, but that’s not important. What’s now important is that you have to make a slight change to partition #1, the EFI system partition. To do that, double-click it.

Kali Linux EFI partition
Figure 10: Kali Linux system boot EFI partition

You need to change its Use as entry to something else, so double-click the Use as line and select EFI boot partition from the list of options you’re presented with.

Kali Linux set EFI partition
Figure 11: The EFI partition is unset in Kali Linux Debian Installer.

If completed correctly, you should have a Use as line that looks exactly like the one shown in Figure 12. Click Done setting up the partition, then Continue.

Kali Linux EFI boot partition
Figure 12: The EFI partition must be set for installation to succeed.

If you neglected to complete the task in the previous step, the installation of GRUB will fail and the installer will show you the message just like the one in Figure 13.

Kali Linux install fail
Figure 13: The result of a failed GRUB installation attempt of Kali Linux.

This is the installer letting you know what its about to do. Select Yes, then click Continue.

Kali Linux partitions
Figure 14: Partitions to be created and formatted by the Kali Linux installer.

If installation completes successfully, you should get a message just like the oen shown in Figure 15. You may reboot the computer at this point.

Kali Linux install success
Figure 15: The result of a successful installation of Kali Linux 1.0.9.

And be sure to remove the installation media else the computer will boot into the installer again.

Kali Linux reboot
Figure 16: Rebooting the Live system after a successful installation of Kali Linux 1.0.9.

If you access the computer’s boot menu (via the F11 or F12 key) before it boots into the default OS, you should see entries for Windows Boot Manager (boots into Windows 7 or Windows 8) debian (boots into Kali Linux).

Kali Linux boot menu
Figure 17: Entries in the computer’s boot menu after installing Kali Linux on the same drive as Windows 7.

If you attempt to boot into Kali Linux, you’ll see the GRUB menu. However, it will not have an entry for Windows as it should.

Kali Linux GRUB menu
Figure 18: GRUB menu after installing Kali Linux alongside Windows 7 on the same hard drive.

You can fix that by booting into Kali, launch a terminal and type the following command:

Related Post:  Install Godot game engine on Fedora or Ubuntu
update-grub. The output of that command should be just like that in this code block:

Related Post:  How to enable two-factor authentication on Dropbox

Finally, when you log into Windows, you may launch the partition manager to see how the number of partitions has changed.
Figure 19 shows the Windows 7 and Kali Linux partitions as seen from the Windows partition manager of the test system. In this screenshot, D is the root partition, E is the home partition of Kali Linux. In between is the Swap partition. If at any time you wish to “uninstall” Kali Linux, just log into Windows and delete its partitions from the Windows partition manager.

Windows 7 Kali Linux partitions
Figure 19: Windows 7 and Kali Linux partitions as seem from the Windows partition manager.

JOIN OUR NEWSLETTER
Enjoying the article you're reading? Subscribe to our newsletter to receive updates and new articles as soon as they are published - right in your Inbox
We hate spam. Your email address will not be sold or shared with anyone else.
Please share:

We Recommend These Vendors and Free Offers

Launch an SSD VPS in Europe, USA, Asia & Australia on Vultr's KVM-based Cloud platform starting at $5:00/month (15 GB SSD, 768 MB of RAM).

Deploy an SSD Cloud server in 55 seconds on DigitalOcean. Built for developers and starting at $5:00/month (20 GB SSD, 512 MB of RAM).

Want to become an expert ethical hacker and penetration tester? Request your free video training course of Online Penetration Testing and Ethical Hacking

Whether you're new to Linux or are a Linux guru, you can learn a lot more about the Linux kernel by requesting your free ebook of Linux Kernel In A Nutshell.


78 Comments

  1. Kalil 2.0 yet no option for user as EFI boot. Any ideas?
    Going to try what Rubab mentioned.

  2. I tried to follow this guide but during “Use as line and select EFI boot partition from the list of options you’re presented with.” I didn’t find any option named “EFI boot partition ” after I double-clicked “Use as”.

    So, I continued the installation without installing any bootloader and restarted the PC and booted in Windows 7. I downloaded the 64 bit ISO of “Boot-Repair-Disk” from here http://sourceforge.net/p/boot-repair-cd/home/Home/” and then used “Rufus” from http://rufus.akeo.ie/?locale=en to make a bootable USB selecting “GPT partition scheme for UEFI” option before creating the USB.

    After that I booted using Boot-Repair-Disk and selected “Recommended Repair” and followed the instruction given by Boot-Repair-Disk and removed and reinstalled Grub-EFI.

    Everything is working correctly now and I can boot into Windows or Kali Linux whenever I want.

  3. for package like Aircrack-ng, I should have saparate kali installation to use or I can use them on virtual machines like Vmware-Workstation and get full functionality?

  4. I fallowed those steps and its almost perfect no problem with kali linux but on windows 8.1 can’t load. i think it was on grub i need information to fix this pls help me thanks

  5. cambriovw

    Followed the steps but cant see the use as “uefi boot partition” option, is there any other way to fix/see it?

  6. Hi, i’m having problems with this.
    When setting the “Do not use” partition to EFIboot it gives me a message “The attempt to mount a file system with type vfat at /boot/efi failed”
    “Do you want to resume partitioning?”
    Thanks

  7. GasGeverij

    hello sir first of all thank you for this tutorial.
    i seem to be having a problem whenever i try booting kali linux from cd or usb it won’t work i’m using a acer travelmate P253-M and i am booting the drive in uefi mode but whenever i try to boot it gives me a black screen. however i can boot in legacy mode will this have the same effect and will i adventually be able to boot windows 8 and kali linux?

  8. I have one HDD and multiple partions thre (Windows 7 running) so if I install linux, it will erase whole HDD ??? or just that partition on which I’m installing.

    • Find a partition that’s not used by Windows 7, then install Linux on partition. Provided you install Linux on that partition only, it will not affect the others.

  9. gracious dude

    thanks a lot. This was so much clearer than most other sites and the method worked without a hitch.

  10. Hello,

    I can see the UEFI bootscreen , when i klik on the Kali Linux then windows 8.1 starts up and nog the Kali Linux install. Can you help me ?

  11. I did the same that write here but the hard disk is empty is not busy by any windows. what can i do? please i need help . sorry for my bad English 🙂

  12. Sir , how to access the windows boot manager ? sir when i install my kali linux os to other partition the only one problem is that grub installation failed and i just ignored it and continue to install linux and now my problem is how to boot on linux .. hope you can reply thanks 🙂

    • Well, a little bit more info about the computer and the setup will help in helping you.

      • pre-installed windows 8 single language , i just followed your tutorial , i enable the hotkey f12 to open boot menu but i cant i open the boot menu.. i don’t know how to boot into kali linux when i start my laptop its like nothing happens, it boot directly to default os..

  13. i tried F2 and Del but i didnt get any uefi setup utility.

  14. its bios

  15. my usb stick didnt give me two options , it has only normal boot menu , there is no uefi boot menu in usb

    • Then use that one.

      • I do not have an option “efi boot partition” while selecting efi system partition as efi boot partition

        • I have also had situation that I could not get a UEFI-aware version of the installer, but after several reboots, I was able to.

          But it’s also likely an indication that the computer is set to Legacy BIOS, not EFI Compatible ROM. Can you verify that it’s set to EFI Compatible ROM.

          On the other hand, how did you transfer the ISO image to the USB stick?

          • i used universal usb installer , how to check if its legacy bios or efi?

          • its bios.. i dont understand , i tried previous method it didnt work i checked from windows it said its uefi now i checked using kali live it says bios

          • That’s why you’re only seeing one option in the computer’s boot menu. To verify, access the UEFI setup utility and make sure that the boot ROM is set to EFI Compatible ROM. That will require pressing either the Del or F2 key before the computer boots into the default OS.

          • i tried F2 and Del but i didnt get any uefi setup utility.

          • there was no option to make boot rom uefi compatible

          • It should be under the menu called Boot. Or just google how to configure it on that particular computer model.

          • its not possible with my model , there is no such option

          • I find that almost impossible to believe!

            If ypu can see an EFI partition in Windows, then it surely must have a UEFI firmware. That also means that it must have a UEFI setup utility that you can use to enable/disable EFI mode.

            Call the support line of the vendor and ask if they can help you change the ROM mode. Don’t tell them you’re trying to install Linux, because that will give them an excuse to not assist you.

          • is der any other way of installing kali as dual boot?

          • If you can’t install directly on the hard drive, you can install it in a virtual environment inside Windows. That will allow you to run Windows and Kali at the same time, which should be good enough for using Kali for pentesting purposes.

            If you’re interested in that, I can offer some guidance.

Leave a Comment

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

*