0

I have two disk drives. On the first disk drive, I have Windows 10 (UEFI) installed and on the second one, I want to install Ubuntu (Legacy). Why Ubuntu (Legacy) ? So, I tried to install Ubuntu in UEFI. The problem is, that audio and internet doesnt work at all, the hardware is right and supported. I tried also to install the drivers manually, it doesnt work aswell, after a restart, it stops working. Maybe it is a bug, anyway its crazy. So, in Ubuntu (Legacy) its working like a charm without manually drivers installation.

It would be nice if, when I need Ubuntu, that I boot from my second disk drive in the Boot-Menu, If not, then my coumputer should boot automatically Windows, when I start my PC.

Now, how can I install Ubuntu (Legacy) without killing my Windows 10 (UEFI) ? (Not the first time I killed my Windows :D)

  • I dont want the Grub2-Bootmenu with Windows listed

  • I dont want to add Ubuntu to the Windows-Bootloader

TYD
  • 11
  • 1
    If you install in Legacy, then the only way you can dual boot is from UEFI boot menu, not from grub. UEFI & BIOS write info to drive for booting differently so you cannot change once started. I would still add an ESP as well as required bios_grub and use gpt. Then if later you can resolve issues you can convert to UEFI without totally partitioning. You do need to partition in advance, boot installer in BIOS mode, and then use Something. Just be sure to install grub boot loader to MBR of Ubuntu drive. http://askubuntu.com/questions/743095/how-to-prepare-a-disk-on-an-efi-based-pc-for-ubuntu – oldfred Sep 14 '16 at 21:46
  • @oldfred (long time no see), wouldn't your comment be better as an answer? There could be more commentary and links perhaps. I have a shiny new up vote waiting if you post it :) – WinEunuuchs2Unix Sep 14 '16 at 23:03
  • 1
    Would have been good to know it is a GA-970 in first post. Those all have unique IOMMU requirements. GIGABYTE GA-970A-DS3 motherboard not working with 64 bit kernel - IOMMU change in UEFI and then use GRUB_CMDLINE_LINUX="iommu=soft" http://ubuntuforums.org/showthread.php?t=2111223&page=5 http://ubuntuforums.org/showthread.php?t=2292025 and: http://ubuntuforums.org/showthread.php?t=2242023 – oldfred Sep 15 '16 at 19:45
  • So will this fix my bugs with Ubuntu (UEFI) ? – TYD Sep 15 '16 at 20:05

3 Answers3

1

If you install in Legacy, then the only way you can dual boot is from UEFI boot menu, not from grub. UEFI & BIOS write info to drive for booting differently so you cannot change once started.

Still use gpt on Ubuntu drive. Ubuntu can boot from gpt partitioned drives with either UEFI or BIOS. I would still add an ESP - efi system partition (FAT32 300 to 500MB with boot flag) as well as required bios_grub (1 or 2MB with bios_grub flag). Grub than can be installed for either UEFI or BIOS boot.

UEFI/gpt partitioning in Advance (only missing bios_grub partition):

How to prepare a disk on an EFI based PC for Ubuntu?

Then if later you can resolve issues you can convert to UEFI without totally partitioning. You do need to partition in advance, boot installer in BIOS mode, and then use Something Else install option. Just be sure to install grub boot loader to MBR of Ubuntu drive.

Only real difference between UEFI & BIOS is grub. UEFI uses grub-efi-amd64 and BIOS uses grub-pc. So probably something between UEFI/BIOS write of data to drive and drivers in UEFI. You can later reinstall grub in UEFI mode with no changes to system if you have ESP.

Do you have latest UEFI from vendor? That often can be an issue. Or you may just need a boot parameter. What brand/model system?

oldfred
  • 12,100
  • Yes, I know that I have to boot Ubuntu from UEFI boot menu. This is what I want. My System: Mainboard: GIGABYTE GA-970A-UD3 CPU: AMD FX 8320 RAM: Kingston HyperX FURY (16GB) GPU: HIS Radeon HD 7870 GHz Edition (2GB GDDR5) HDD: 500GB HGST – TYD Sep 15 '16 at 10:52
1

In theory, Ubuntu should work with all your hardware in either BIOS/CSM/legacy mode or in EFI/UEFI mode. In practice, there are sometimes incompatibilities with one boot mode or the other, but those are pretty rare. Sometimes you can work around them by passing particular kernel options, but you'll need to research the specific hardware and problems to track down such details. You don't specify what version of Ubuntu you're trying to install, so if you're trying something old (like Ubuntu 14.04 GA), you might try something more recent (like 14.04.5, 16.04.1, or even the 16.10 testing version). The newer kernels in the latest releases might fix the problems you're having.

Switching between two OSes that are installed in different boot modes (BIOS vs. EFI) is possible, but I know of only two ways to manage this:

  • The computer's built-in boot manager -- Most EFI-based computers have a built-in boot manager that can handle this task. Details vary from one computer to another, though. Typically, you access it by hitting Esc, Enter, or a function key at startup (what key varies from one computer to another). In your scenario, the computer will probably show options for Windows, one or both of your hard disk, and perhaps other things. You'd pick the Windows option to boot Windows in EFI mode, of course, and the option for the disk on which Ubuntu is installed to boot Ubuntu.
  • My rEFInd boot manager -- AFAIK, this is the only add-on boot manager that can launch BIOS-mode boot loaders on an EFI-based PC that's booted initially in EFI mode. (Booting an EFI-mode boot loader from BIOS mode is possible with the help of UEFI DUET or the Clover boot loader, but those are way too hackish and awkward for your situation.) By default, rEFInd disables its BIOS-mode boot loader support on UEFI-based PCs. To enable this support, you must edit refind.conf: Uncomment the scanfor line and add hdbios to the list of options. You may also need to uncomment the uefi_deep_legacy_scan option, although I recommend trying without that option first. When configured in this way, rEFInd's menu will show you options for Windows, for one or all of your hard disks, and perhaps others. You can test rEFInd by using the USB flash drive version before installing it to your hard disk, if you like. One caveat: A few (mostly very early) EFIs lack the CSM feature that rEFInd uses to launch BIOS-mode OSes, so rEFInd won't do you any good on such computers.

Note that the EFI version of GRUB cannot chainload to a BIOS-mode boot loader, the BIOS-mode version of GRUB cannot chainload to an EFI boot loader, and neither version of GRUB can directly boot a Windows kernel. Thus, you cannot use GRUB to do what you want (although you could with both OSes installed in the same mode).

If you decide to use rEFInd, you may want to install it from Windows, but be sure to not install the Linux filesystem drivers that come with it. If you install the Linux filesystem driver for the filesystem that holds your kernel, rEFInd will probably detect the Linux kernel and create an entry to boot it directly; but if EFI-mode booting is not working for you, that entry will be useless. Thus, omitting the driver will help keep rEFInd's display uncluttered. (Note that the USB flash drive version of rEFInd includes the filesystem drivers, so it will probably present such an entry. You might as well try it; there's a slim chance it will work better than GRUB at handling your hardware, in which case you can install rEFInd from within Ubuntu and then forget about all the BIOS-mode hackishness.) If you see BIOS-mode boot entries for two disks, you can remove the one you don't want by using the dont_scan_volumes option in refind.conf to blacklist the entry that doesn't work.

Note that some EFIs have problems booting in BIOS mode from GPT disks. This problem is rare, but if you run into it, you might need to use MBR partitioning for the Ubuntu disk. Otherwise, Ubuntu is happy to boot in BIOS mode from either GPT or MBR; but you should create a BIOS Boot Partition (bios_grub flag set in parted or GParted; type code EF02 in gdisk) of ~1MiB if you use GPT.

Rod Smith
  • 44,284
  • 7
  • 63
  • 105
1

Would have been good to know it is a GA-970 in first post. Those all have unique IOMMU requirements. GIGABYTE GA-970A-DS3 motherboard not working with 64 bit kernel - IOMMU change in UEFI and then

  1. Edit /etc/default/grub as super-user with your favourite text editor, e. g.

    • sudo nano <FILE> or
    • gksudo gedit <FILE>.
  2. Add the iommu=soft option to the GRUB_CMDLINE_LINUX setting. Since it's empty by default that would be:

    GRUB_CMDLINE_LINUX="iommu=soft"
    
  3. Save the changes and generate the Grub configuration file:

    sudo update-grub
    

For more information see these links:

  1. ubuntuforums.org/showthread.php?t=2111223&page=5
  2. ubuntuforums.org/showthread.php?t=2292025
  3. ubuntuforums.org/showthread.php?t=2242023

Credit to oldfred

Thank you very much !

TYD
  • 11