想测试指定文件个数的小文件是比如217K,1W个文件,进行到100多时会报,反复尝试都如此
FATAL: Too large position discovered in request!
后面想了估计跟block-size有关,估计每个文件的大小必须是blocksize的整数倍才行。尝试了一下,果然如此。
sysbench --test=fileio --num-threads=10 --file-num=10000 --file-block-size=8K --file-total-size=2240000K --file-test-mode=rndrd 【prepare, run, cleanup】
其它相关问题
另外,公司的机器上limits -n增加了最大限制,需要修改一下/etc/security/limits.conf才能ulimit -n配置才能生效
sudo vi /etc/security/limits.conf
* - nofile 463840
非root用户, echo 3 > /proc/sys/vm/drop_caches和sudo echo 3 > /proc/sys/vm/drop_caches都不行,只能手工sudo vi /proc/sys/vm/drop_caches
另外,sudo ulimit找不到路径,想要改root用户下的ulimit需要sudo /bin/bash -c 'ulimit -n 400000' 。。。