Dual-boot Windows 7 and Kali Linux

This article is a step-by-step guide on how to dual-boot Windows 7 and Kali Linux on a single hard disk drive (HDD). Kali Linux is what used to be BackTrack Linux, a distribution designed for penetration testing and security professionals. It ships with about 300 penetration testing and hacking applications installed.

While BackTrack is based on Ubuntu, Kali Linux is based on Debian, and uses the complete Debian Installer. As a result, the installation process is different from that of BackTrack, which uses Ubuntu’s graphical installation program.

The objective here is to show how to install it on an HDD alongside an existing installation of Windows 7, with the Windows 7 boot manager as the “master” boot loader, so that at the end, when the computer is (re)booted, you will be presented with a boot menu that looks just like the one shown below. Selecting Windows 7 boots the system into Windows 7 and choosing Kali Linux will, by default, take you to the Kali Linux boot menu, which is the same thing as the GRUB 2 menu, the version of GRUB used by Kali Linux.
Windows 7 Dual-boot Menu

To bypass Kali Linux’s boot menu, simply edit the file named /etc/default/grub and change GRUB_TIMEOUT=5 to GRUB_TIMEOUT=0. Then run the update-grub command.
Kali Linux Windows 7 GRUB 2

Now that we know what to do, and what the result will be, let’s get it done. If you have not done so already, download an installation image of Kali Linux from here.

1. Shrink the Windows 7 C Drive: My test system has an existing installation of Windows 7 on a 500 GB HDD, with just two primary partitions. This is how they appear in Windows 7’s partition manager. The task here is to shrink the C drive to create room for installing Kali Linux. To do that, right-click on the C drive and select Shrink Volume.

Note: If you intend to install Windows 7 afresh, this process will be a lot easier if you set aside the free space that will be used for Kali Linux during the installation of Windows 7.
Windows 7 Partitions

If you have enough free space on the C drive, the system will suggest a 50-50 split of the free space. Which is just good enough for this test installation. Shrink.
Windows 7 Shrink Partitions

After the operation has completed, you should see the newly reclaimed space next to the C drive. You may exit the partition manager and reboot the computer. Be sure to have the installation disc of Kali Linux in the optical drive before rebooting.
Windows 7 Partitions

2. Install Kali Linux: The best option to select on Kali Linux’s boot menu is Graphical Install. It gives you a point-and-click installation process. Install works just as well, but the interface is ncurses-based.
Kali Linux Boot Menu

For installing Kali Linux, the following partitions will be created: /boot, /, /home, and Swap. In that order. The /home partition is optional. At the disk partitioning methods step of the installation process, you get a bunch of options. Because none of the guided options will create a separate /boot partition, creating the partitions will have to be done manually. So select “Manual” and click Continue.
Kali Linux Debian Installer

Here you can see the existing Windows 7 partitions, both of which are primary partitions. The free space, reclaimed from Windows 7 in the previous step is what will be used for creating the partitions for Kali Linux. To start creating the partitions, select the free space and click Continue.
Kali Linux Create Partition

Create a new partition. Continue.
Dual-boot Windows 7 and Kali Linux

This shows the total amount of disk space available for Kali Linux. The /boot partition will be created first, so you need to specify the amount of disk space for it.
Kali Linux Create Partition size

For this test system, I assigned 300 MB to it. Continue.
Dual-boot Windows 7 and Kali Linux

Because you still have two primary partitions to use, you can create the boot partition as a primary or logical partition. Either option will work, but the installer prefers creating it as a primary partition, if the boot loader is going to be installed in it. For this test installation, I chose to create it as a logical partition. Continue.
Dual-boot Windows 7 and Kali Linux

Beginning. Continue.
Kali Linux Create Partition size

This step shows the details of the boot partition you just created. The only thing you need to change here is the mount point. Double-clicking on it will open another window where you can specify the correct mount point.
Dual-boot Windows 7 and Kali Linux

Here’s what it should look like after the mount point has been specified. The other option you might want to change here is the Bootable flag.
Kali Linux

There is a good reason it should be enabled, but the system will boot even if it is disabled. It just depends on your BIOS version. For this test installation, it was disabled and the system still worked perfectly.
Dual-boot Windows 7 and Kali Linux

Here’s the final details of the boot partition. Scroll to “Done setting up the partition,” then click Continue. Note that the steps you used to create the boot partition will be repeated for the other partitions.
Kali Linux

Back to the main disk partitioning window, you can see the boot partition you just created, plus the remaining free space. Select, the free space, then click Continue.
Kali Linux

We Recommend These Vendors

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).


  1. I am using a dual boot system, after installing the Kali linux, i was able to use it well that i could access my hard disk which are in three partitions and could access then all. on the third boot on kali linux, i access my file and this is what appears:
    Error mounting /dev/sda6 at /media/root/LIMIT: Command-line `mount -t “ntfs” -o “uhelper=udisks2,nodev,nosuid,uid=0,gid=0,dmask=0077,fmask=0177” “/dev/sda6” “/media/root/LIMIT”‘ exited with non-zero exit status 14: The disk contains an unclean file system (0, 0).
    Metadata kept in Windows cache, refused to mount.
    Failed to mount ‘/dev/sda6’: Operation not permitted
    The NTFS partition is in an unsafe state. Please resume and shutdown
    Windows fully (no hibernation or fast restarting), or mount the volume
    read-only with the ‘ro’ mount option.

    what should i do help me.

    • As the message indicates, that can be caused when windows was in hibernate or suspend state, or when faststarting is enabled before you booted into Linux. So log back into Windows, shut it down correctly and make sure that fastboot is disabled (I think that’s in the BIOS).

Leave a Comment

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