Answers:
让我把实际的答案扔进去:ext4。除了极端情况(例如,成千上万个小文件的大量删除)外,与XFS相比,您不会看到任何读/写差异。
您还可以在AskUbuntu之类的地方找到对ext4的更多社区支持,这仅仅是因为它被广泛使用。
XFS的一个显着缺点是无法缩小(减小分区大小),因此,如果您想减小XFS分区大小,则必须进行备份,重新分区/重新格式化,还原。
ext4
那是我在2012年的建议,也是我在2017年的推荐FS。此文件系统非常成熟,支持加密(从2017年开始需要最新内核),并且足够快,足以应付外部硬盘驱动器(甚至外部SSD)上的大多数工作负载),这也是关于数据安全性的非常安全的选择。这是一个重要因素,尤其是当您拥有外部硬盘时,它的保护性不如内部硬盘。
例如,在笔记本电脑上,即使插上电源,您仍然有电池,因此内置驱动器非常安全。但是,外部插入的硬盘容易断开连接,例如:笔记本电脑起床而忘记了附带的驱动器。
XFS文件
为许多企业工作负载以及某些台式机工作负载提供良好的性能。这些边缘情况可能在外部USB硬盘驱动器上不可见,而在USB3.1接口上的外部SSD可能可见。与断开或断电相比,使用XFS将某些文件截断为0的风险要高得多,多年来,这应该不是问题。XFS现在是一个功能强大且快速的文件系统,即使在断电的情况下也是如此。
例如,如果使用LUKS,则可以使用XFS实施加密。但是我不知道XFS内对加密的原生支持。
BTRFS
在2012年,我说过“在1或2年内,我建议该文件系统支持数据和日志的校验和”。在2017年,我可以说这个文件系统非常强大,除非您想使用其RAID 5-6支持(因为它需要一个非常新的内核,所以最好等待Ubuntu 18.04 LTS)。在比内部硬盘暴露更多的外部硬盘上,BTRFS凭借其对数据和元数据的本机校验和将是一个非常强大的解决方案。但是,如果您只有一个外部硬盘驱动器,则除非将其设置为在驱动器上存储每个数据或元数据的2个副本,否则它只能检测损坏的数据,而无法修复它们。万一磁盘丢失,您当然会丢失所有内容,因此它不是RAID1。但是,如果您的扇区已损坏,则BTRFS可以在其具有副本的情况下对其进行恢复。BTRFS支持快照,
我不建议使用该文件系统,因为它具有一些特性,例如正确了解磁盘使用情况和可用空间问题(尤其是使用压缩选项时)。在使用BTRFS时,我还遇到了几次错误,设备上没有剩余空间,需要进行一些平衡,等等。因此,新手用户还无法使用它。
答案取决于您的确切要求。
ext4已成为几种流行的Linux发行版(包括Ubuntu,Fedora和openSUSE)的默认文件系统。ext4在其先前版本的基础上进行了几处改进,其中包括支持最大16 TB的文件(1 TB等于1,024吉比特,其中1 GI等于1.074千兆字节),最大卷大小最大为1 EB。它与ext3和ext2向后兼容,因此可以将ext3和ext2挂载为ext4。这将稍微提高性能,因为ext4的某些新功能也可以与ext3和ext2一起使用,例如新的块分配算法。
XFS是一个高度可扩展的高性能文件系统,最初是由Silicon Graphics,Inc.设计的。它是为支持超大型文件系统而创建的。XFS支持的最大文件系统大小为8 EB减1(即263-1字节),尽管这受主机操作系统施加的块限制的约束。32位Linux系统将文件和文件系统的大小限制为16 TB。
关于此主题有很多信息,但是我会从这里开始,并尝试探索您是否想进一步进行研究。
我希望这有帮助。
资料来源:
- http://techie-buzz.com/foss/google-implements-ext4.html
- http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/6.0_Release_Notes/filesystems.html
我已经看到了这些文件系统的许多基准测试, 我认为EXT4更好,但是我认为与XFS的区别很小。
在读/写基准测试中,差异不大,我使用EXT4,这太棒了。
如果您的工作量很大,我建议不要使用ext4。
我们有两个构建服务器,它们运行我们软件的并发构建,并且如果执行多个并发构建,我们将获得挂起任务,然后这将迫使构建退出。如果我们一次只进行1个构建,则可以完成。但是,这违背了拥有多CPU多核计算机的目的,该计算机理论上可以同时进行8次构建(或1次-j8构建)
ext4的体验不是很好。它还太年轻,无法在现实世界中使用。