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

Хотя в ядре Linux реализовано большое количество файловых систем, многие из них не одобрены для промышленного использования в Android и не поддерживаются в Android.

Тестовая инфраструктура Android, механизмы OTA, процессы обновления и требования конфиденциальности зависят от поддержки конкретной файловой системы. Не все файловые системы подходят для использования на устройствах 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 Issue Tracker , а затем свяжитесь с [email protected], чтобы обсудить ваши потребности.