How to Dual Boot?
In this post, we will discuss how to dual boot your PC and Laptops. I am assuming you already have windows installed in your system. Steps described here are general and are meant for devices from all manufacturers. Devices from different manufacturers have different BIOS menus. So, you may have to search for the required settings.
Which Linux Distro should I install?
It’s totally up to you. If you want a ready to go OS, go for Ubuntu. If you want to try something new and have a lot of time in your hands, go for Arch. You can always choose Fedora, Debian, Kali Linux and the list goes on. List of Linux Distributions For this tutorial, we will be installing Ubuntu 19.04. I recommend Ubuntu 19.04 instead of Ubuntu 18.04 because 19.04 have Wifi Drivers for some of the Realtek Wifi Hardware(RTL8723 series) out of the box.
Making a Bootable Pendrive
- You will need a pen drive with at least 8GB capacity.
- Store the contents of the pen drive somewhere safe.
- Download Ubuntu 19.04 Image.
- Download Rufus for Windows.
- Open Rufus and attach the Pendrive.
- Select your pen drive from the Device Dropdown menu and in Boot selection select the Ubuntu 19.04 iso file which we downloaded in step 3.
- Press Start and the process should complete without any errors.
Making your system ready for dual boot
How much space should I allocate for my second OS
Linux can work on devices with very low hardware capabilities. If you are planning to run your system for hours without shutdown, then the log and temporary files can take a lot of space. I recommend a minimum of 80 GBs.
Warning: Don’t hesitate to allocate more space to your second OS. It is very difficult(in some cases impossible) to increase the size of partition once the OS is installed. You will have to reinstall the second OS. For this tutorial, I am allocating 100GBs of space.
Allocating Space for the second OS.
- Open Search box and search for Create and format hard disk partitions.
- Now you have to free up some space for your second OS.
- Choose a Hard Disk Partition(not an SSD partition) with at least 100 GBs of free space. Right-Click that Partition and choose Shrink Volume. In the amount to shrink field enter n GB1024(ex. for 100GB - 102400)* and shink the volume.
Turn off Fast Boot
- Go to Control Panel -> Power Options. You may have to change the view of icons to view All Control Panel Icons.
- Go to Choose what the power button does -> Change settings that are currently unavailable
- Untick Turn on fast startup
- Save Changes.
Turn off Secure Boot
- Search for Advanced Startup.
- Under the Advanced Startup, click on Restart Now.
- Go to Troubleshoot -> Advanced options -> UEFI Firmware Settings. (The sequence may vary based on your Windows build version)
- The computer will restart and your BIOS menu will open.
- Depending on the Manufacturer of your PC/Laptop, BIOS menu will be different.
- Search for Secure Boot and turn it off. You may have to set an administrator password before BIOS lets you turn off Secure Boot.
- Save and Exit.
- Plug in the Bootable Pendrive.
- Start Windows and go to advanced startup and restart again.
- This time choose Boot From Device option and choose the Pendrive.
- Now, simply follow the instructions given on the screen.
- At one point the setup will ask for the Partition to install the OS. Don’t change the default values and simply continue.
For detailed steps, go through this tutorial by linuxtechi.
OS setup hangs during installation or the OS hangs after installation
This problem is common when installing Linux on Gaming Laptops(with Nvidia GTX GPUs). You will have to add nomodeset kernel flag. Search - set nomodeset grub.
Wifi Not Working in Linux
This problem is very common in HP devices with Realtek wifi drivers. Linux kernel older than 4.8 should not face this problem. If you facing this problem, try installing kernel mods from this repository - GitHub.
Some other Problem
Search - OS NAME + OS VERSION + PROBLEM KEYWORDS Example - Ubuntu 19.10 apt update segmentation fault. Please read the entire thread before trying any commands.
Still have some doubts or problems
Contact anyone from the Programming Club.