Now that exfat filesystem is in the kernel, allow using it for storing isos loopback booting and storing the persistence file

Bug #2038694 reported by Glenn Washburn
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
casper (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Recent Ubuntu Desktop livecd isos are greater than 4G and have been growing at an alarming rate (22.04.1 is 3.6G and 22.04.2 is 4.6G, but that's another story). The fat32 filesystem allows a maximum of 4G file size, so newer isos can not be stored on fat32. Currently the only non-journalled filesystem and only file system with easy interoperability with Windows is fat32. Neither NTFS nor EXFAT are supported by casper. EXFAT would be good to support so that a windows user can write a greater than 4G iso file from Windows to use for loopback booting. And likewise allow the persistence file to be on EXFAT, so that another filesystem is not needed just to store the persistence file.

Related branches

Revision history for this message
LAFFITTE Guy (tarski) wrote :

In my opinion, NTFS is not interesting at all, because it is too close to hell.
On the other hand, EXFAT seems to be a very good choice for persistence files, especially when you want to install several distributions with persistence on an external USB disk or SSD. All persistence files will hold in a large EXFAT partition with a directory for persistence files of each distribution.

Revision history for this message
geole0 (geole0) wrote :
Revision history for this message
Glenn Washburn (crass) wrote :

Ventoy is a cool solution, but it requires Ventoy. Ubuntu should natively support exFAT for those like me who do not want to use another bloated 3rd party program.

Revision history for this message
LAFFITTE Guy (tarski) wrote :

It should be noticed that exfat module is NOT included by default in INITRAMFS file created by mkinitramfs program. I think this may be considered as a bug by omission.
Since vfat module is included in the kernel, why not exfat ?

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in casper (Ubuntu):
status: New → Confirmed
Revision history for this message
Adrian Feliks (mexit) wrote :

Here is a complete solution to the problem:
https://git.launchpad.net/~crass/casper/commit/?id=cb29dfc7b081692dd48a2f118d5a79db6cfc60fb

Almost half a year has passed. Why isn't anything happening?

Revision history for this message
Adam Vodopjan (grozzly) wrote :

@Adrian Feliks (mexit)

How is it supposed to work with just that? Looking into initrd of 24.04 daily unpacked with unmkinitramfs. According to main/lib/modules/6.8.0-11-generic/modules.builtin, exfat is not a builtin module. And there is no exfat in early3/usr/lib/modules/6.8.0-11-generic/kernel/fs

Revision history for this message
Adrian Feliks (mexit) wrote :

@Adam Vodopjan (grozzly)

You're absolutely right. Currently, booting from exFAT doesn't work because there's no module for it, neither built-in nor located in early3/usr/lib/modules/6.8.0-11-generic/kernel/fs.
The command `manual_add_modules exfat` (patch @Glenn Washburn) adds exfat module to the initrd during livecd creation.

See: https://git.launchpad.net/ubuntu/+source/casper/tree/hooks/casper

Ubuntu 24.04 is coming soon...

Revision history for this message
Adam Vodopjan (grozzly) wrote :

@Adrian Feliks (mexit)

I've just filed a similar bug about f2fs. The module is in initrd since 20.04

Revision history for this message
Adam Vodopjan (grozzly) wrote (last edit ):

Previously I created a script to make ubuntu iso images bootable from f2fs partitions. After discovering this bug, I converted it into a generic "make casper aware of fs X, add kernel modules Y to the initrd" one.

You can get it here https://github.com/slowpeek/ubuntu-remaster-bbb and make 20.04+ images bootable from exfat like this:

  ubuntu-remaster-exfat input.iso output.iso

or, without the exfat shortcut:

  ubuntu-remaster-bbb --fs exfat --module exfat input.iso output.iso

If using the docker image:

  ubuntu-remaster-bbb.docker --fs exfat --module exfat -- input.iso output.iso

This way 18.04.5+ can boot from exfat as well, but only with the hwe kernel. Hence in case of live-server 18.04.5+, extra '--hwe-only' option is required.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.