Obsługa systemu plików jądra Androida

W jądrze systemu Linux jest zaimplementowanych wiele systemów plików, ale wiele z nich nie zostało zatwierdzonych do użytku produkcyjnego w Androidzie i nie jest obsługiwanych w tym systemie.

Infrastruktura testowa Androida, mechanizmy OTA, procesy aktualizacji i wymagania dotyczące prywatności zależą od obsługi określonego systemu plików. Nie wszystkie systemy plików nadają się do użytku na urządzeniach z Androidem.

Android wymaga na przykład obsługi szyfrowania opartego na plikach za pomocą fscrypt i uwierzytelniania opartego na plikach za pomocą fsverity, więc systemy plików, które nie obsługują fscrypt ani fsverity, nie nadają się do użytku produkcyjnego.

Obsługa systemu plików na niskim poziomie

Od Androida 13 przestrzeń użytkownika działa tylko z systemami plików wbudowanymi w GKI. Używanie systemu plików, który nie jest obsługiwany przez zespół Google ds. jądra, może narazić użytkowników na problemy z bezpieczeństwem i nie jest zalecane.

Zespół ds. jądra Androida nadal wprowadza poprawki do wszystkich systemów plików, korzystając z jąder LTS (Long Term Support) z upstreamu. Jednak te systemy plików otrzymują częstsze poprawki zgodnie z harmonogramem wydawania poprawek zabezpieczeń Androida:

  • exfat (obsługiwany w jądrze 5.10 i nowszych wersjach)
  • ext4
  • f2fs
  • fuse
  • incfs
  • Vfat
  • EROFS

Ten system plików jest przestarzały i ma ograniczoną obsługę:

  • sdcardfs (obsługiwany tylko w jądrze 4.14 i starszych wersjach)

Obsługa wirtualnego systemu plików

Ogólnie rzecz biorąc, obsługiwane są wirtualne systemy plików, w tym:

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

Prośba o obsługę nowego systemu plików

Jeśli chcesz używać systemu plików, którego nie ma na tej liście, zgłoś prośbę o dodanie funkcji w narzędziu do śledzenia problemów Androida, a następnie skontaktuj się z zespołem ds. jądra pod adresem kernel-team@android.com, aby omówić swoje potrzeby.