Поддержка файловой системы ядра Android

В ядре Linux реализовано множество файловых систем, но многие из них не одобрены для использования в Android и не поддерживаются этой ОС.

Инфраструктура тестирования, механизмы OTA, процессы обновления и требования к конфиденциальности Android зависят от поддержки определенных файловых систем. Не все файловые системы подходят для использования на устройствах Android.

Например, Android требует поддержки шифрования на уровне файлов через fscrypt и аутентификации на уровне файлов через fsverity, поэтому файловые системы, которые не поддерживают fscrypt или fsverity, не подходят для использования в рабочей среде.

Поддержка файловой системы на низком уровне

Начиная с Android 13, пространство пользователя работает только с файловыми системами, встроенными в GKI. Если вы используете файловую систему, которая не поддерживается командой разработчиков ядра Google, пользователи могут быть уязвимы для проблем с безопасностью. Мы не рекомендуем этого делать.

Команда разработчиков ядра Android продолжает исправлять ошибки во всех файловых системах, используя ядра с долгосрочной поддержкой (LTS). Однако следующие файловые системы получают исправления чаще в соответствии с графиком выпуска исправлений системы безопасности Android:

  • exfat (поддерживается в ядре 5.10 и более поздних версий)
  • ext4
  • f2fs
  • fuse
  • incfs
  • Vfat
  • EROFS

Следующая файловая система устарела и поддерживается не полностью:

  • sdcardfs (поддерживается только в ядре 4.14 и более ранних версий)

Поддержка виртуальной файловой системы

Как правило, поддерживаются виртуальные файловые системы, в том числе перечисленные ниже.

  • debugfs
  • overlayfs
  • procfs
  • sysfs
  • tmpfs
  • tracefs

Запрос на поддержку новой файловой системы

Если вы хотите использовать файловую систему, не указанную в списке, отправьте запрос на добавление функции в системе отслеживания ошибок Android, а затем свяжитесь с командой разработчиков ядра по адресу kernel-team@android.com, чтобы обсудить ваши потребности.