Android将哪个文件系统附加到根目录?


23

我知道Android将FAT32用于SD卡并通过FUSE挂载它们。但是哪个FS附加在/上?某种分机?ZFS?

Answers:


30

没有单一定义的“ Android”文件系统,因此这在设备之间可能会有所不同。内核可以为其加载驱动程序的任何FS基本上都是公平的游戏。

总的来说,您几乎可以肯定会发现ext4是现代设备上最常见的文件系统。较旧的设备可能也使用较旧的ext *版本,或完全使用其他文件系统。由于所有内容都基于Linux构建,因此ext4是一个非常明智的选择,它具有可靠的内核支持和良好的记录。您可以在Ars Technica的有关切换到ext4 的文章中读到一些有关为何做出此决定的原因。

一些设备还使用了三星的闪存文件系统(f2fs)。值得注意的是,摩托罗拉的某些设备以及Nexus 9都使用f2fs。f2fs的目标是创建一个专门针对基于闪存的存储介质的需求而设计的文件系统,以最大程度地将使用NAND芯片作为其主要存储介质的设备的性能。

但是,这并不意味着这些是Android能够在其上运行的唯一文件系统,如上所述。有了内核源代码和专有技术,在内核映像中当然可以包含其他文件系统的驱动程序。例如,Android x86支持在NTFS和FAT32文件系统上安装


1
旧的三星Android手机(早期使用Android 2.1的手机,例如i9000)也使用了RFS,它基本上是FAT,具有UNIX样式权限支持。
SztupY 2015年

RFS在拥有使用它的设备的大多数用户中都享有盛名
瑞安·康拉德

但是在最近的设备(例如Amazon Fire HD 7)中,无法将SD卡格式化为ext4。华为Ascend P7允许在SD卡中使用NTFS
david.perez

@ david.perez问题不是关于SD卡,而是关于/
eldarerathis

1
@Abdul之类的。Linux支持的许多(也许是全部)文件系统都被实现为内核模块,这意味着它们可以从构建中省略,也可以在运行时加载/卸载。从技术上讲,它们仍然是内核源代码的一部分,而不是每个构建的必需部分,这就是为什么设备之间的支持可能有所不同的原因。它取决于ROM的内核,实际上它具有为文件系统构建并可用的相关模块。
eldarerathis

4

YAFFS(又一个Flash文件系统)通常被用作Android最高2.3版本的默认文件系统:http : //www.yaffs.net/google-android

自从多线程支持以来,一直使用ext4:https : //ext4.wiki.kernel.org/index.php/Main_Page


7
YAFFS仅在2.3版之前使用,因为多线程支持,所以一直使用ext4。
2015年

7
Ars Technica 为感兴趣的任何人撰写了一篇有关从yaffs切换到ext4的文章,其中包括与Android工程师的一些讨论,他们对此做出了一些解释。
eldarerathis

0

我尝试用格式化所有分区,f2fs然后在刷新自定义ROM时发现/格式化ext4fs,当我检查ROM文件随附的批处理文件是罪魁祸首时,实际上用格式化了f2fs分区ext4fs

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.