]>
Commit | Line | Data |
---|---|---|
11fdf7f2 | 1 | #!/usr/bin/env bash |
7c673cae FG |
2 | |
3 | set -x | |
4 | ||
5 | gen_fio_file() { | |
6 | iter=$1 | |
7 | f=$2 | |
8 | cat > randio-$$-${iter}.fio <<EOF | |
9 | [randio] | |
10 | blocksize_range=32m:128m | |
11 | blocksize_unaligned=1 | |
12 | filesize=10G:20G | |
13 | readwrite=randrw | |
14 | runtime=300 | |
15 | size=20G | |
16 | filename=${f} | |
17 | EOF | |
18 | } | |
19 | ||
20 | sudo apt-get -y install fio | |
21 | for i in $(seq 1 20); do | |
22 | fcount=$(ls donetestfile* 2>/dev/null | wc -l) | |
23 | donef="foo" | |
24 | fiof="bar" | |
25 | if test ${fcount} -gt 0; then | |
26 | # choose random file | |
27 | r=$[ ${RANDOM} % ${fcount} ] | |
28 | testfiles=( $(ls donetestfile*) ) | |
29 | donef=${testfiles[${r}]} | |
30 | fiof=$(echo ${donef} | sed -e "s|done|fio|") | |
31 | gen_fio_file $i ${fiof} | |
32 | else | |
33 | fiof=fiotestfile.$$.$i | |
34 | donef=donetestfile.$$.$i | |
35 | gen_fio_file $i ${fiof} | |
36 | fi | |
37 | ||
38 | sudo rm -f ${donef} | |
39 | sudo fio randio-$$-$i.fio | |
40 | sudo ln ${fiof} ${donef} | |
41 | ls -la | |
42 | done |