对于包含> 1000万个文件的读取访问权限的文件夹的ext4文件系统,mkfs和mount的适当选项是什么?
到目前为止我所拥有的:
umount /media/dirsizetest mkfs.ext4 -L DIRSIZETEST -E lazy_itable_init=1 -E lazy_journal_init=1 -m 1 /dev/sda1 mount -t ext4 -o nodiratime /dev/sda1 /media/dirsizetest
一些背景是有序的.我正在做一个稍微(好的,非常)疯狂的实验,包括查看不同文件系统如何使用填充了数百万个小文件的单个文件夹执行.最终我将填充1TB驱动器容量这样做(我告诉你这是一个疯狂的实验!).
访问模式是这样的:
Recreate the volume from scratch (using mkfs) and mount it. Create a sub-directory,fill it with N files in sequence (named 1...N) (where N can be up to 2^63) Read all files in order Read all files in random order Print how it takes
我的自然栖息地是Windows NTFS世界,mount和mkfs的选项数量有点令人生畏.因此,我正在寻找有关哪些选项可能会影响我的表现的指导.
我在64位Ubuntu 12.04桌面环境中工作.
解决方法
注意:安全建议
这些说明是UNSAFE,不应在没有预防措施的情况下在生产环境中使用.
例如,备用电池的RAID卡可以帮助降低风险.
使用风险自负
如果您只是喜欢它作为测试环境,我建议使用ext4选项
noatime,data=writeback,barrier=0,nobh,errors=remount-ro
这个
>禁用读取时的访问时间
>懒洋洋地写元数据
>禁用强制执行日志提交的正确磁盘排序
>尝试避免关联缓冲区头
>重新安装只读错误
对于mkfs.ext4我只能找到该选项
dir_index Use hashed b-trees to speed up lookups in large directories.
有用