请教 XFS, JFS, UFS, EXT4, reiser 几个文件系统的问题

2019-11-20 20:57:07 +08:00
 lzwt806

继上次提问关于 Linux kernel 版本的问题得到了很满意的答案之后,再次前来求学,望前辈们一如继往的不吝赐教,感谢!

几个文件系统 XFS,JFS,UFS,EXT4,reiser

说说我的已知情况:

XFS,我印象里特别好,原因是有个山寨 U 盘,不管格式化成 NTFS 还是 fat32,存的文件半年左右就会损坏,用这个文件系统存满文件已经有 2 年多了,完好。

EXT4,在 2016 年以前,老赵告诉我它简单,实用,可靠,但是我发现,新买的 1TB 硬盘,格式化后什么文件都不存,就占用了几十 G 空间,个人估计是用于冗余纠错用的(坏块处理,或日志记录等),而 NTFS,xfs 这些文件系统新格式化的就占用很少。几年过去了,不知道 EXT4 有没有更新,还是说一直保持原来的特性(性能,可靠性这些)?

JFS,UFS 百度了说是商用系统,一般人很少有接触,更是不知道他们到底如何,我想只有在 500 强的大公司工作的内部人士才有可能真正的了解。

reiser,一个停更了的文件系统,据传存小文件很好,曾经看到海蜘蛛软路由软件推荐用它来当文件系统。

本人水平很有限,网上有评测对比,但都是好几年以前的了,自己没能力测试,所以前来请教知情的前辈们!

问题:

1,reiser 的性能如何?可靠性如何?是不是还在 ext3 或 ntfs 的水平?

2,现在的 ext4 与现在的 xfs 相比,哪个性能更好?更可靠?

3,jfs 和 ufs 与 ext4 相比又如何?

4,在超大容量( GB/BP 级数据库)存储下,以及海量文件(上亿个文件)存储下,如果只从以上几个文件系统选择,最推荐使用哪个?

5,大文件( 1G-10G 不等),小文件( 1K-900M )都有,这种混合内容存储下,前辈们最推荐用哪个文件系统?

性能我想大家都理解是什么意思,这里的可靠性是指在突然 /经常断电的情况下,数据损坏的机率,不要推荐加 ups,不在此次的讨论以内。

另外有没有一种磁盘占用少,对 CPU 资源占用少,可安全可靠,性能也不错的文件系统?

这里不说 ZFS 和 Btrfs 两个,因为我觉和他们太过臃肿庞大了。

8654 次点击
所在节点    Linux
28 条回复
secondwtq
2019-11-20 21:19:22 +08:00
第一,不要看百度 ...

你要可靠性,我觉得你应该去找数据,不过我觉得这个数据不好找
因为一般就是”商用“才会统计这种数据,但是”商用“一般不会经常断电,另外”商用“的可靠性也并不是靠文件系统保证,而是靠冗余保证
就算 ZFS,可靠性也不是”只要用了 ZFS“就能保证的( btrfs 倒是能保证用了之后立马丢失可靠性)
ReiserFS 不太熟,我只知道有杀朲的功能。

性能数据倒是好找,比如 https://www.phoronix.com/scan.php?page=article&item=linux-40-hdd&num=1

还有很不幸的是,很多情况下我们并没有自由选择文件系统的权利,在选择文件系统时应该考虑平台的支持情况,比如 NTFS、HFS+ 和 APFS 在除本家之外的平台上支持都是渣(这些”本家平台“同时排斥除 FAT 系之外的其他文件系统),Linux 对 UFS 和 JFS 支持都不好,XFS 如果不是 Linux 有支持到现在也是”商用“ FS ( BSD 支持不好)
liang96
2019-11-20 21:23:06 +08:00
reiserfs 杀手文件系统, 一直在用。
billlee
2019-11-20 21:30:41 +08:00
根据 phornoix 的评测,xfs 各方面性能都是比 ext4 好的。
www.phoronix.com/scan.php?page=article&item=linux-50-filesystems

xfs 作为 centos 的默认文件系统,周边生态也是很完善的,一般无脑选 xfs 就好了。
至于所谓商用系统,除非用小型机 UNIX 全家桶,自己折腾意义不大吧
love
2019-11-20 21:55:54 +08:00
ext 之类的文件系统 inode 数有限,存大量小文件基本都会 inode 超标(当然在格式化时可以选块大小改 inode 数,但也有别的问题)
而 reiserfs 不限制 inode 数,小文件随便存,可能这是这个文件系统唯一的好处了。
feather12315
2019-11-20 21:59:07 +08:00
1. ext4 默认 journal 是 128M,印象中不随着存储空间大小而改变,但可以手动指定。
2. ext4 格式化后什么文件都不存,就占用了几十 G 空间,这是因为文件系统的 meta data,包括 super block / inode,空间占用主要是 inode 导致的。印象中 inode 默认大小是 256B, 可以在格式化的时候调整大小。
3. ext4 会在开机的时候校验数据,印象中运行时并不会纠错。
4. 当前各大发行版,ext4 是主流。使用得越多 bug 越少。ext4 在不断更新,一直有新 feature 加入。
5. SuSE / RedHat 企业版数据盘印象中默认 xfs。xfs 由 RedHat 支持。
6. SuSE 社区版默认文件系统是 btrfs。btrfs 由 SuSE / Fackbook 在开发、维护。
7. 主流的文件系统,不断添加 feature,向 zfs 靠拢。
Osk
2019-11-20 22:43:24 +08:00
大磁盘 ext4 格式化一次慢到让我怀疑人生,换 xfs 好多了,而且 xfs 有 Redhat 背书,也是不错的。

另外,我用 btrfs,因为有快照,fs 层次的 raid1,scrub,数据 crc 校验,除了 zfs 外,暂时没有一个 fs 能提供这些 feature,zfs 据说太烧内存,用不起🤣。

所以我个人的选择是:btrfs -> xfs -> ext4
KENNHI
2019-11-20 22:48:25 +08:00
xfs 性能在很多项测试里都比 ext4 要好的,还解决了一些 ext4 的问题。如果对 btrfs (不推荐)和 zfs 等“现代化”的文件系统没什么兴趣的话,xfs 其实是最佳选择。
okudayukiko0
2019-11-20 22:58:13 +08:00
现在 XFS 已替代 EXT4。Red Hat 默认就用 XFS。Reiser 现在好像用 Reiser4。
Cooky
2019-11-20 23:05:47 +08:00
mkfs.ext4 -m 0
lzwt806
2019-11-21 08:10:20 +08:00
@liang96 请问前辈,“reiserfs 杀手文件系统”怎么理解?一直在用是用于什么场景?另外它的可靠性,性能如何?
lzwt806
2019-11-21 08:11:34 +08:00
@love “而 reiserfs 不限制 inode 数,小文件随便存,可能这是这个文件系统唯一的好处了。”这句话,我能不能理解为:除此之外,其它方面都很差?
lzwt806
2019-11-21 08:16:50 +08:00
@feather12315 请教前辈:
“4. 当前各大发行版,ext4 是主流。使用得越多 bug 越少。ext4 在不断更新,一直有新 feature 加入。”
是编译了最新的内核就拥有了最新的 ext4 文件系统支持吗?还是说如果我想用最新的 EXT4 文件系统支持,需要使用储如 GParted 分区工具( mkfs.ext4 )来重新建立磁盘分区?

另一个问题是:如果我有个 U 盘是在 2015 年使用 Linux kernel 4.4 格式化为 ext4,那么这个 U 盘即不是最新的 ext4 文件系统,一些新加入的的特性就没有,这种理解对不对?

换个方式问:最新加入 ext4 的 feature 是在内核模块(*.ko )中,还是存在于已经格式化的磁盘中?
lzwt806
2019-11-21 08:19:40 +08:00
@Osk btrfs 也适用于我需求?大小文件混存,且数量巨大。另外去年我还看到论坛有人说 btrfs 到 2018 年了还有些 bug,可靠性有待完善,不知这种道听途说是否正确?
lzwt806
2019-11-21 08:21:53 +08:00
@okudayukiko0 “Reiser 现在好像用 Reiser4”,我试过在 GParted 里面格式为 reiser4,能格式化成功,但不能访问,是否还需要其它东西才能找开格式化好的 reiser4 磁盘?

另外 reiser4 的性能已经到什么程度了?能达到 ext4 的性能吗?
salmon5
2019-11-21 08:29:10 +08:00
ntfs 或 fat32
love
2019-11-21 08:36:39 +08:00
@lzwt806 个人用有啥好纠结的,这里每一个通用的文件系统都是无数人在用,你能碰到 bug 的几率几乎没有,性能也是大同小异你根本感觉不出来。
agagega
2019-11-21 09:24:39 +08:00
@lzwt806 说 Reiser 是杀手不是因为作者杀老婆吗(
NG6
2019-11-21 09:41:53 +08:00
btrfs 真的有你们说的不堪么,那群辉为啥还敢作为默认文件系统呢
VYSE
2019-11-21 10:08:13 +08:00
ssd 时代追求性能优先 f2fs 和 xfs
msg7086
2019-11-21 10:43:21 +08:00
@NG6 为什么不去问问群辉呢。当年红帽主推 btrfs,你看看他现在为啥回去用 1993 年出的 XFS 了。

@love 碰到 Bug 几率少,但是碰到异常损坏的概率可就高得多了。

@lzwt806 #11 Reiser 是一个很先进的文件系统家族,处理小文件的速度远超其他家,没有太多明显的问题,Reiser4 主要还是因为作者被判刑了所以没得发展了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/621535

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX