[arch-general] install Arch on Btrfs - dual boot w10/arch - can't find vmlinuz on boot menu

arnaud gaboury arnaud.gaboury at gmail.com
Sat Apr 1 10:27:35 UTC 2017


I followed the arch install wiki to install arch alongside w10 and dual
boot. (w10 was already installed).
Here is a summarize of the output of fdisk:
----------------------------------------------
# fdisk -l
Disk /dev/nvme0n1

/dev/nvme0n1p1........ 260M   EFI System
/dev/nvme0n1p3......... 186G   Microsoft basic data
/dev/nvme0n1p6.........  264.7G Linux filesystem
--------------------------------------------------------

I formatted the Linux partition with Btrfs. In short:
# mkdir /mnt/btrfs
# cd /mnt/btrfs
# btrfs subvolume create /mnt/home
I created this way 5 subvol: ROOT, home, etc, .snapshots, development
---------------------------------------------------------------------

Then generated fstab. Here I have a first doubt about how it has been done.
The first line is :
------------------------------------------
#/dev/nvme0n1p6  LABEL=daffodil-root
UUID=xxxyyyyy   /      btrfs
rw,noatime,compress=lzo,ssd,subvolid=261,subvol=/ROOT,subvol=ROOT   0  0
----------------------------------------------

---> Question 1: why twice subvol ? Is it normal or shall I delete one?

Then, still on install, I followed systemd-boot wiki. Once arch installed
and chrooted, I did the following (*here I have doubts about my method*).
I
1- mounted the EFI partition (/dev/nvme0n1p1) on /boot
2- bootctl --path=/boot install
3- copied the linux stuff (initramfs, vmlinuz...) on /boot. I finished with
a /boot folder populated as described in systemd-boot articles.
---> Question 2 Then I wrote an enter in fstab for the vfat boot partition.
I AM NOT SURE AT ALL I have to do this.

Once installed finished, I rebooted. The systemd-boot menu appeared as
expected, but didn't work as it was unable to find vmlinuz neither w10.

              ~~~~
Back to the install script, I try to fix things now.

I first mounted the Linux partition in /mnt. I can see all the created
btrfs subvol when running btrfs subvolume list
----------------------------
# btrfs subvolume list -p /mnt
ID 261 gen 179 parent 5 top level 5 path ROOT
.....
ID 267 gen 35 parent 261 top level 261 path ROOT/var/lib/machines
---------------------------------------
A few questions:
------> Question 3 : why this line about systemd machines? Is it expected?
------> Question 4 : according to arch btrfs wiki, "Changing subvolume
layouts is made simpler by not using the toplevel subvolume (ID=5) as /".It
is not my case. How can I change this to avoid using the toplevel as / ?

Thank you for your help and hints on:
- why dual boot can't find OS
- is my btrfs install clean


More information about the arch-general mailing list