Hi I have machine with 3 disks 2x SSD + 1 HDD I want to have Windows on 1 SDD and linux in LVM on 2nd SSD, and shared HDD for data

├─sda1 500MB - Windows10 Reserverd
├─sda2 100MB - Windows10 Boot manager   efi
└─sda3 240GB - Windows10 
├─sdb1 1GB - Boot partition for linux  /boot efi
├─sda2 200GB - LVM linux-group
    ├─ubuntu-home 80GB      /home    ext4
    ├─ubuntu-root 80GB      /root    ext4
    ├─ubuntu-swap 8GB       swap
└─sdb3 240GB - unallocated
 └─sda3 shared-data NTFS

However I have a problem with with grub and diskfilter writes are not supported error.

Installation sequence: 1) Windows -> sda UEFI 2) Linux -> sdb UEFI

After windows installation I started to install ubuntu 17.04 and I wanted to use LVM on sdb then set it up as a first boot drive in BIOS setup.

However this doesn't seems to work. I have read this up and down countless times, but I can't still get it working.


Can someone tell me what is wrong in my current setup?


What's wrong is you need to understand UEFI first, in general, and particularly, the ESP (EFI System Partition) and its location which is always in sda, the first drive.

Assuming Windows is factory installed (or user installed in UEFI mode) the ESP is already there in the same drive where Windows is installed and should be used as is, irrespective of the location of the other OS's system partition. No need to create another EFI partition and that can't be done with both drives connected anyway.

Just do as usual:

  1. Disable Secure Boot at UEFI (optional but recommend if you intend to install unsigned drivers in Linux);
  2. Disable Fast Startup in Windows.
  3. Install the Linux distro as usual (in UEFI mode).

Now you should have both boot entries in the ESP and, at UEFI settings, you should be able to boot each one independently. You can then set it up to boot Linux and the Linux distro typically installs and uses some additional bootloader, Grub being the current choice of most major distros. Grub should include an entry for Windows as well but if not just do update-grub in terminal.

So, in a nutshell, don't change the boot order to the second drive, just use the Linux entry if you want to use Grub to boot each one of the OSes, as in a "second chance" regardless of the UEFI boot order. The picture below is an example, this menus vary wildly depending on the manufacturer and firmware version:

enter image description here

Note: Using LVM + encryption in the "Linux drive" does not change the process or requires additional steps.

  • Thank you for the explanation about UEFI, filled up few holes. - info about second partition However I've done 1,2,3 already before I asked. In the end I decided to install Linux withtout LVM and GRUB_DEFAULT=saved works since then. - I assume that bug was not really fixed yet. Another small problem appeared - I can see old (uninstalled) entries In BIOS boot menu, do you know how can get rid of them? (I know it's not in the scope of the question) +Maybe if you could link me few articles about UEFI so I can learn more Thanks – oglop Oct 9 '17 at 15:59
  • It can be done with efibootmgr from Ubuntu and I'm sure there's an equivalent GUI app for Windows. But generally it's done from the UEFI itself. How exactly depends on your hardware. – user772515 Oct 9 '17 at 16:02

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.