scaleway / initrd

:wrench: Initrd builder with qemu nbd metadata for Scaleway boot (armhf + x86_64)
https://www.scaleway.com/docs
MIT License
51 stars 23 forks source link

option to load addition kernel modules (btrfs boot support) #187

Open MartinNowak opened 6 years ago

MartinNowak commented 6 years ago

Hello, tried to switch the root FS of my ARM64-2GB server to btrfs (using btrfs-convert). It seems that the initial kernel lacks the btrfs.ko module to mount that FS.

Any chance, that additional modules could be loaded on demand, e.g. via a dedicated environment option

INITRD_MODULES=fs/btrfs/btrfs.ko,<mod>

.

This approach here also relies on manually loading missing modules before continuing the boot. Btrfs image : a recipe - Scaleway / Tutorials

MartinNowak commented 6 years ago

Also see https://github.com/scaleway/image-builder/issues/12

berezins commented 6 years ago

May be my solution with partitioning (using small partition for root and everything else for any file system of your choice and/or LVM) would solve your case (my last answer in https://github.com/scaleway/image-builder/issues/12)

MartinNowak commented 6 years ago

Yes, a separate partition should be feasible, but it classically becomes a pain when root runs out of space. Given that there already is a function for that https://github.com/scaleway/initrd/blob/51c564e6ac76c3be70622e6c92c6415732e063ec/Linux/tree-common/functions#L210-L215, it shouldn't be too hard to make it available for non-live boots. https://github.com/scaleway/initrd/blob/87bcaec5133248e3b2300395211b66ae2acbeac4/Linux/tree-common/boot-live#L15