Benchmarking read and write transfer rates of USB mass storage devices on Linux is performed from the terminal using dd with direct disk synchronization flags.
USB Read/Write Speed Commands
# 1. Measure USB sequential WRITE speed (1GB test file)
dd if=/dev/zero of=/media/user/USB_DRIVE/test.bin bs=1M count=1000 status=progress conv=fdatasync
# 2. Measure USB sequential READ speed (clear buffer cache first)
sudo sysctl vm.drop_caches=3
dd if=/media/user/USB_DRIVE/test.bin of=/dev/null bs=1M status=progress
# Clean up benchmark file
rm /media/user/USB_DRIVE/test.bin
Comments and corrections