Seriously you guys. I love tinkering. I never give up. I feel like I’ve failed here, having used about 4 promising tutorials found online. Just can’t make it all play right.
So here’s my end goal: RAID __ (mobo has x3 M.2 slots) across x3 one TB nvme drives (I have 1 nvme drive right now, but this is good to plan for NOW)
1TB nvme drive with 3 Linux OSes:
120GB to Ubuntu Studio 22.04 Jammy LTS
120GB to Debian 12 LTS “Bookworm”
120GB to Qubes-OS
That’s 360GB/1TB so far.
512GB shared btrfs encrypted Home partiton for all the OSes to use.
872GB/1TB on the nvme M.2 drive.
Finally… 128GB encrypted space for… stuff.
1TB/1TB usage on nvme M.2 drive
Hotay.
So what I run into, is a fight between Ubuntu Studio (Debian-based) and my GNU/Linux Debian OSes.
Ubuntu Studio offers to encrypt the /boot partiton in the LVM.
Debian12 shrieks this isn’t possible (encrypting the /boot partiton in the LVM).
But they’re both Debian-based. So there has to be common ground here.
I haven’t even wrestled with Qubes-OS installation (OS #3) at this point (have used it in the past, it’s delightful).
So. I’m going to wipe it all again for the umpteenth time, and I await your suggestions, pearls of wisdom, and potential “pitfalls/gotcha’s” regarding my vision.
Thank you in advance, you’re wonderful!
Hate? Are you kidding me? That’s awesome! And Gentoo is not going anywhere, it’s still waiting for you :)
So in a bit more detail:
I’m going to assume the whole drive is encrypted using luks and there’s a btrfs partition on top of it. My btrfs layout would be something like this:
root of btrfs (subvol id 5) |___Ubuntu (directory) | |_@root (/, not /root) | |__@home | |__@srv | |__@var | |__@opt |___Debian (directory) | |__@root (/, not /root) | |__@home | |__@srv | |__@var | |__@opt |___Qubes(directory) |__@root (/, not /root) |__@home |__@srv |__@var |__@opt
I’ve never played with Qubes, so I’m assuming the layout here.
Your
fstab
would have to specify the subvolumes in the options bit of the line:UUID=something-something / btrfs defaults,relatime,subvol=Ubuntu/@root 0 0 UUID=something-something /home btrfs subvol=Ubuntu/@home 0 0 UUID=something-something /srv btrfs subvol=Ubuntu/@srv 0 0 UUID=something-something /var btrfs subvol=Ubuntu/@var 0 0 UUID=something-something /opt btrfs subvol=Ubuntu/@opt 0 0
Yes, you specify the same device (luks one, in this case, not actual /dev/nvme0n1p1) multiple times. BTRFS can only take mount options once for the whole filesystem, so specify whatever you need for
/
as anything else other thansubvol
will be ignored for the following mounts of the same device.I would go with systemd-boot for the bootloader or, better yet, unified kernel image, but that’s beyond this post. In general, though, you should either pick one OS to control the bootloader, or have separate boot devices/partitions for every OS so it can do whatever it pleases.
Once you have one system running - mount stuff somewhere (/mnt comes to mind) and install the target. Gentoo has good instructions to make sure your chroot env is not missing anything. I’ve used debootstrap before for Debian - it worked well.
Not all heroes wear capes. But you, doubtlessly, do. Thank you. Thank you so much. This is why I went full penguin.
I WILL give Gentoo another try. She calls me. I just need to understand flags a bit more…
P.S. there was also a bloodbath regarding Grub. Neither of the two OS’es did the os-probesuccessfully, so I botched something up, there, too.
Glad to be useful :) also updated the previous reply, had fstab subvol written doen wrong.