Linux 服务器管理员可以选择的文件系统有很多。此外,找出适合您需求的适当布局和最佳文件系统并不总是一件容易的事。
您能否为选择 Linux 服务器的“最佳”文件系统提供一些指导原则?我知道这是一个普遍的问题。让我们更具体一点。我会这样说。
1- 我有一个缓存 Web 代理服务器。代理通常需要存储许多小对象,还有一些中型和大型对象。我认为 Web 服务器的情况会类似。
2- 我有一台电子邮件服务器。它需要保存用户的消息。
3-我有一个数据库服务器。
所有这三台服务器都需要大量的 IO 访问(读取和写入)。
对于其他类型的服务器,我认为这不是那么重要。例如,基于 Linux 的防火墙不需要像代理或 Web 服务器那样的 HD 访问。它的大部分处理都在内存中完成。
我认为最好的答案是建议每个服务器的合适文件系统(最好有理由)。让我们将重点放在性能上,作为我们建议的基础。
答案1
- 如有疑问,请使用 ext3
- 如果你不需要承诺太多,ext4
- 如果超过 8TB 并且不想要 ext4,那么 XFS
- 如果你正在尝试,btrfs
- 其他的,ext3
我的大部分日常工作涉及在不需要大量管理的情况下指定和管理多 TB 存储,而且高层管理人员对文件系统一无所知。出于这些原因,我需要可靠、高效且简单的系统。我做到了很多拔掉电源的灾难模拟,在(模拟的)不稳定硬件上复制了数千万个文件。ext3 运行良好。XFS 不是这样,但远远超出了要求。JFS 和 ReiserFS 惨遭失败。
答案2
我使用 XFS 取得了巨大的成功,无论是小文件还是大文件,无论是多文件还是少文件。各种基准测试通常都表明它是读写速度的综合赢家。EXT4 也相当快,也许更容易找到相关文档。只需确保运行的是新内核即可。
XFS 大放异彩的一个很好的例子就是 MySQL 数据库。我尝试将一个 8GB 的 .sql 文件导入 MySQL,它使用 EXT3 进行存储。它在填满缓冲区后几乎超时(将缓冲区大小设置为 16M 或更大没有帮助),系统显示 I/O 时间等待过多。切换到 XFS,所有问题都消失了 - 一切都全速运行。似乎 XFS 在碎片化方面几乎没有受到任何惩罚(这是大型数据库经常出现的问题)。
如果您唯一关心的是性能,那么 XFS 无疑是一个不错的选择。只要确保您在使用执行惰性更新/日志记录的文件系统时(几乎地球上的每个现代文件系统都是如此),您就拥有 UPS、良好的备份和灾难计划。
答案3
对于几乎任何中等工作负载,Ext3 都不会出错。另外,我从未用它丢失过数据。它的日志恢复功能非常可靠。
更新:如果您有可靠的“防傻瓜”电源保护,则 Ext4 是可以的。
由于 EXT4 写入的默认“延迟写入”特性,我丢失了本地家庭和办公室服务器上的数据,该服务器由于电缆故障而重新启动。这只是我对 ext4 的体验。一朝被蛇咬,十年怕井绳。
答案4
您使用的是哪个发行版?RHEL 5 仅支持 ext3 选项(当然,AP 会提供 GFS,某些情况下显然也会支持 XFS),而较新的发行版则更倾向于 ext4 或 XFS。
总体来说,ext4 和 XFS 非常接近。如果你想要区分一下
XFS 在元数据密集型工作负载上速度较慢。
XFS 支持 > 16 TB 的文件系统。
XFS 除了用户和组配额之外,还有项目配额。