While there are a large number of file systems with implementations in the Linux Kernel, many haven't been approved for production use in Android, and are not supported in Android.
Android's test infrastructure, OTA mechanisms, update processes, and privacy requirements depend on specific file system support. Not all file systems are suitable for use on Android devices.
For example, Android requires support for file-based encryption through
fscrypt
and file-based authentication through fsverity
, so file systems that
don't support fscrypt
or fsverity
aren't suitable for production use.
Low level file system support
Beginning with Android 13, userspace only works with file systems built into the GKI. Shipping a file system that doesn't have support from Google's kernel team can leave users vulnerable to security issues and isn't recommended.
The Android kernel team continues taking fixes for all file systems by snapping to upstream Long Term Support (LTS) kernels. However, the following file systems receive more frequent patches through the Android security patch release schedule:
exfat
(supported in kernel 5.10 and later)ext4
f2fs
fuse
incfs
Vfat
EROFS
The following file system is deprecated and has limited support:
sdcardfs
(only supported in kernel 4.14 and earlier)
Virtual file system support
In general, virtual file systems, including the following, are supported.
debugfs
overlayfs
procfs
sysfs
tmpfs
tracefs
Request support for a new file system
If you want to use a file system that isn't listed here, file a feature request in the Android Issue Tracker, then contact kernel-team@android.com to discuss your needs.