The problem, in short, is that Linux doesn’t know Windows exists – you have to inform it.
1. As Root or someone with Root privileges, create the file:
/etc/grub.d/10_windows7
You can use the touch command to do this. For example: touch /etc/grub.d/10_windows7
To verify, type: ls /etc/grub.d/ and check that 10_windows7 shows up in the list.
Using either VIM or nano, add the following content to the file:
#! /bin/bash
echo "Adding Windows7 entry to grub"
cat << EOF
menuentry "Windows" {
set root=hd0(0,1)
chainloader +1
}
EOF
Note: Adjust hd0(0,1) accordingly. You can use hd0(0,1) if windows is installed on /dev/sda1.
(if there is one hard drive in the computer, Windows is, by default, on /dev/sda1)
2. Make the file you just created executable
Run the command: chmod +x /etc/grub.d/10_windows7
3. Recreate/Remake the grub config to contain the Windows option
Run the command: grub2-mkconfig -o /boot/grub2/grub.cfg
4. Reboot
Note that “Windows” will now appear in the list of bootable OS’s.