Dual-Booting
For General Users
The idea of having both Windows and Linux installed on a computer and being able to select one at boot time appeals to many who are trying, or migrating to, Linux. Outcome is very dependent on version of Windows
Windows 10
Should not be attempted by General Users
- although viable procedures have been reported for computers having existing Win 10 installations
- Windows 10 does not boot immediately following installation of Linux and requires Getting Technical to rectify
The only viable alternative for General Users appears to be using a live Linux distribution see Evaluation
Windows 8.x
The better known Linux distributions will set this up automatically, during installation to a single hard disk drive in the computer
- generally works reliably
Windows < 8
Although this installation is reliable, as per Windows 8.x above, 'It is likely to cease functioning following the next update of Windows and restoring dual-boot requires Getting Technical
Getting Technical
New Windows 10 Computers
Such computers invariably have UEFI firmware and "secure boot" enabled. The following link provides general guidance on this process
http://www.rodsbooks.com/linux-uefi/
Here are two links to successful procedures for UEFI & BIOS computers. Although oriented to Ubuntu, analogous steps should work with other Linux:
http://www.everydaylinuxuser.com/2015/11/how-to-install-ubuntu-linux-alongside.html
http://www.everydaylinuxuser.com/2015/11/how-to-install-ubuntu-linux-alongside_8.html
Win 10 will probably need to be shrunk:
http://www.everydaylinuxuser.com/2015/11/how-to-shrink-windows-10-to-make-space.html
Linux Mint 18
- invoke UEFI settings and disable "secure boot"
- although the procedure works, for major Linux distributions, without this change, it provides better long-term flexibility - see above link
- boot from Linux Mint USB/DVD
- select (the somewhat confusingly named) installation option 1 "install in boot partition alongside Windows"
- on first reboot, Windows only is bootable
- reboot, invoke UEFI settings again
- amend UEFI boot order to place Windows second (Ubuntu/Mint first)
- subsequent boots should now present a Grub 2 menu
- either Linux or Windows should be able to be selected and boot correctly
- any additional OS need to be included in the grub.cfg file for Mint
YMMV with other Linux distributions. Although installation is generally successful, one OS might not boot:
- invoking firmware level boot menu (often F2 on OEM computers or F11 on generic) should enable either to be booted
- as a last resort, Linux Mint could be installed and then replaced with the preferred Linux.
Upgrades to Windows 10
Computers having UEFI Firmware
typically home computers that came with Windows 8.x or generic mainboards of the same era
- be aware that business-oriented computers of the same hardware era were often installed with Windows 7, but fall into this category
- many are currently (2016) being refurbished and re-sold by major retailers
Upgrade to this category of hardware is proving to be the most troublesome
Be aware that UEFI & BIOS firmware have many similar screens & settings. Check for this hardware as follows:
- invoke UEFI settings, at boot time
- if the opening UEFI page contains reference to a "UEFI version number" then the computer has UEFI firmware and falls into this category
Computers having BIOS Firmware
This upgrade generally proceeds without problems. The following specific combination of factors has been tested:
if existing Windows 7 and firmware is BIOS and partition table(s) are MBR(DOS) Then it is reported that an upgrade to Windows 10 can dual-boot. Examples include:
Desktop running separate HDD for Linux and Windows.
- BIOS normally boots to the Linux HDD, which is running OpenSUSE Leap42.1
- and from which Windows 10 can be booted via GRUB 2
- During Windows upgrades, disconnect Linux HDD and set BIOS to boot to Windows HDD.
Although not tested, it seems likely that the above would also work with the Linux (only) HDD partitioned GPT
Laptops & netbooks running Ubuntu 16.4 (YMMV with derivatives)
- Basic setup is for BIOS to boot to the Windows bootloader.
- GRUB 2, must be installed in the partition containing Linux. (most installers will do that)
- A free utility called EasyBCD is required to modify the Windows bootloader to include entries for other operating systems
- this utility must be rerun following every Windows upgrade.
One of the many videos on this subject is https://www.youtube.com/watch?v=9dwwSSg-kJM
Upgrades to Windows #> 8.1
to be advised
Issues can often be minimised by having additional hard disk(s) in the computer. This is not an expensive option, given current HDD prices.
Upgrades to Windows 7
There is one known issue when Windows is on either a separate HDD or same HDD. This also prevents Linux from booting before the Win 10 upgrade. Different workarounds are given in the link:
USB Drive
Pros
- easily added
- no change to internal HDD
Cons
- Linux relies on the absolute order of storage devices detected by the computer's firmware
- plugging in (say) a uSB memory drive, may upset the booting
- contermporary Linux avert this by allocating a unique UUID to the drive and booting/mounting via that ID
Internal HDD
- ensures permanent order of drives
Installation
- mainstream Linux will allow installation to a second hDD
- the bootloader must also be installed to the second HDD, in this technique
- can require "drilling down" the installation options
Selecting Boot Device
The selection of "drive" and hence OS is done at POST stage and depends on type of firmware in the computer
see Booting from Removable Media