Custom partition layout

What are the minimum needed partitions? I’d like to have a small128GB partition (I’m using a 2TB NVMe) to use as a basic backup/recovery system that I can boot into and fix system problems, and use a large btrfs partition for the main system so I can use snapshots and other tools.
To work around btrfs support issues I was planning on mounting a separate ext4 partition as /boot so that the initramfs and kernel are easily accessible.
I assume I would need an esp partition for the UEFI bootloader as well. How could I configure the bootloader (probably grub) to point to the right partitions?

I don’t quite get what you want to do.
Can you please elaborate it more?

Anyway, I don’t feel like you can make partitions with different formats.
They are either raw data with no partition formats or ext4.

I’ve already used this technique before UEFI was implemented, I’m just not sure how the UEFI boot process changes things.


I think we don’t officially support the workflow you described.
However, you may refer to some documents:
For example, you can set the booting partition with root (*<device-type>* *<device-number>* ,*<partition>* ), and the real rootfs in ${CMD_LINE}.

Thanks. I’ve managed to get it working for now using grub. I’ve got an efi partition at /dev/nvme0n1p1, and the rest of the drive is btrfs on partition 2.
I’ve had some difficulties configuring the initramfs but I’ve hit upon a command using dracut that works for now. I just had to point the /efi/EFI/Ubuntu/grub.conf to the correct prefix of /@/boot and use the partition UUID.

But now I am having another issue, since grub can’t load a device tree overlay file I am unable to access the system cameras. Is there a way to set up the default bootloader to specify the partition uuid and kernel command line?

I don’t really know what you are asking.
You mean you want to give up on GRUB?

That’s the problem l, I’m not sure what I should use. Is the device tree overlay strictly necessary for using a csi camera like the imx477? Or is there another way to set it up? Because grub seems to be working fine except I need to have access to the camera interfaces.

Use Jetson-IO:

Ohhhh ok I think I understand now! Thanks!

1 Like