Dual-Booting

From Info Wiki
Jump to navigationJump to search

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

It might be unwise to simply delete/overwrite Windows. Some manufacturers provide no alternate mechanism for upgrading firmware (UEFI - which is "work in progress")

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/

Key preliminary steps are:

  1. from Windows
    • disable "Fastboot"
    • disable "Virtual Memory"
      • delete swapper.dat or equiv
  2. (optionally) shrink Windows 10 main partition - see below for link to procedure
    • some Linux (openSUSE) will do same as part of their standard install procedure
  3. enter UEFI setup (usually F2 early in the boot process) and
    • disable "Secure Boot" - it will be mandatory to add a password to UEFI setup
      • write this password down, in clear text and store in several locations - having the manufacturer reset it could be expensive
    • ensure that boot mode is "UEFI"
      • do not change to "Legacy/BIOS" mode
      • as a reliable confirmation that the machine is booting in UEFI mode:
        1. download the "rEFInd" dotISO or dot.IMG file from the above site and make CD or USB media from it
        2. boot from this CD/USB - invoking F12 at early stage boot/reboot should ensure this
        3. display of rEFInd's distinctive series of icons confirms that the machine is in UEFI boot mode
        4. failure to boot the CD/USB at all confirms that the machine is in Legacy/BIOS boot mode - and must be reconfigured
  4. do a trial boot of your preferred Linux installation medium
    • if it fails to boot, then it is probably configured for Legacy/BIOS mode only and is unsuitable
    • as of 2016, mainstream Linux and many smaller distro configure their dotISO to work in either UEFI or Legacy/BIOS boot.

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

A procedure that might work for openSUSE users is the latter's "instlux" routine. The key to this routine is that it firstly disables the Windows boot manager, that does not accommodate Linux. See:

https://en.opensuse.org/SDB:Instlux

Linux Mint 18

  1. 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
  2. boot from Linux Mint USB/DVD
  3. select (the somewhat confusingly named) installation option 1 "install in boot partition alongside Windows"
  4. on first reboot, Windows only is bootable
  5. reboot, invoke UEFI settings again
  6. 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:

  1. invoke UEFI settings, at boot time
  2. 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:

http://answers.microsoft.com/en-us/windows/forum/all/kb3033929-does-not-install-multi-boot-win7-linux/8f35f8f8-c0b2-461a-a8aa-4bbf16c49920?auth=1

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

Strictly for Geeks