Hands-on disk benchmarking using the sysbench fileio test to measure throughput, IOPS and latency. 16.02.2026 | reading time: 3 min Want to know how fast your disk really is under load? Use the sysbench fileio test to generate realistic read/write patterns, measure throughput, IOPS and latency, and compare storage options in a reproducible way. Install and prepare test files Install sysbench and create test files before you run benchmarks; for Debian/Ubuntu use apt, for RHEL/CentOS use yum. Example commands to install and prepare a one-gigabyte test set are shown below: ```bash sudo apt update && sudo apt install -y sysbench # create 1G of test data split across files sysbench fileio --file-total-size=1G prepare ``` Run a real benchmark Run a mixed random read/write test for 60 seconds with four threads to get a balanced view of performance; here is a complete run and a trimmed example of the output you will inspect: ```bash sysbench fileio --file-total-size=1G --file-test-mode=rndrw --file-block-size=16K --time=60 --threads=4 --max-requests=0 run ``` Sample output (trimmed to key lines): ```text sysbench 1.0.20 (using system LuaJIT 2.1.0) Running the test with following options: Number of threads: 4 File total size: 1G Read, MiB/s: 45.12 Write, MiB/s: 23.56 Read Latency, ms: 2.8 Write Latency, ms: 5.4 Total time: 60.00s ``` Understand the headline metrics Look at throughput to compare sustained transfer rates, IOPS to understand small random workloads, and latency to see responsiveness; a high MiB/s but high latency means large transfers are fine but small I/O will lag. Also check total time and total transferred to verify the test ran long enough and that file size exceeded RAM to avoid cache-dominated results. Tuning knobs and pitfalls Key options to vary are `--threads`, `--file-block-size`, `--file-test-mode` (seqrw, rndrw, seqrd, seqwr, rndrd, rndwr), `--file-total-size` and `--file-extra-flags` for direct I/O; always `prepare` and `cleanup` the files, avoid caching by making file size larger than RAM or using direct I/O, and be careful running on production mounts because tests can be destructive and heavy. Complementary tools Use sysbench for reproducible Lua-based workloads, but pair it with monitoring and tracing tools to get the full picture; collect system-level metrics while the test runs and validate results with other benchmark utilities before drawing conclusions. Next steps and motivation Run multiple passes with different block sizes and thread counts, compare results across storage types, and automate runs with simple scripts to build a baseline; if you want to deepen your Linux skills consider formal certification and intensive exam preparation at bitsandbytes.academy to turn hands-on practice into credentials. Join Bits & Bytes Academy First class LINUX exam preparation. storage utilities troubleshooting filesystem infrastructure