ext4安装标志为10+磨文件存储

我已经用-T small标志初始化了一个大的主分区给mke2fs ,系统上的smallconfiguration如下:

  small = { blocksize = 1024 inode_size = 128 inode_ratio = 4096 } 

这是一个800 GB的SSD(云驱动器),它将成为一千多万个小文件的家,范围从〜10KB到〜100KB。

我试图彻底地去查看登山手册,找出最好的组合,这里是我的列表:

  • rw读写
  • nosuid不需要执行用户或组ID
  • nodev块的开发文件不应该出现在这里
  • noexec设置了exec位的文件也不受欢迎
  • auto 允许mount -a
  • nouser只有root可以(重新)挂载
  • asyncasynchronous写入
  • relatime仅在文件被修改时更新访问时间。
  • data=ordered大概应该提高阅读性能
  • errors=remount-ro停止写入错误
  • discard推荐用于SSD
  • auto_da_alloc在电源故障的情况下打击文件系统损坏(可能不需要,因为这是一个云端硬盘?)
  • inode_readahead_blks=16文件系统将成为一大堆小文件的 inode_readahead_blks=16 ,因此大的预读应该只是性能的损失。 我不知道平均大小为50KB的文件的最佳值,所以把这里的值减less到默认值的两倍。
  • debug

我真的需要在这些问题上有更多经验的人再次提出意见。 我特别不确定discardrelatimedata=orderedauto_da_allocinode_readahead_blks和其他标志,这些标志我错过了或者被误解了。 data=writeback有多危险? 这样的标志可能会丢失多less数据,只是最后5秒(提交的默认值)? 有关此练习的其他见解?

你应该为此使用XFS文件系统 。

ext4并不适合这种工作负载,因为你在SSD上,并且有一个愚蠢的高文件数量。 Red Hat 现在默认使用XFS是有原因的。

为什么不考虑在Linux上使用ZFS? ZFS比ext4高出一筹,在linux上被认为是可以生产的。 请参阅http://www.phoronix.com/scan.php?page=news_item&px=MTc4NTM

安装并不难, 有关安装信息,请参阅http://zfsonlinux.org/