TIP #26: Kiểm tra tốc độ ổ cứng Linux

28/05/2020

Kiểm tra tốc độ ổ cứng sẽ phần nào giúp bạn xác định được phần cứng đang sử dụng là HDD hay SSD. Ngoài ra, tốc độ đọc ghi ổ cứng còn ảnh hưởng trực tiếp đến performance của hệ thống. Có thể kiểm tra các loại tốc độ sau:

  • Tốc độ đọc cache/buffer: sử dụng hdparm
  • Tốc độ ghi tuần tự: sử dụng dd
  • Kiểm tra iops khi random read/write (với block 4K): sử dụng fio

Kiểm tra tốc độ đọc cache bằng hdparm

Lệnh “hdparm” sẽ giúp kiểm tra tốc độ đọc dữ liệu 

[[email protected] ~]# hdparm -tT /dev/sda

/dev/sda:
 Timing cached reads:   14720 MB in  1.99 seconds = 7391.65 MB/sec
 Timing buffered disk reads: 3072 MB in  1.24 seconds = 2471.75 MB/sec

Trong đó:

/dev/sda: Ổ cứng cần kiểm tra

-t: Perform device read timings (đọc dữ liệu từ device)

-T: Perform cache read timings (đọc dữ liệu từ cache)

Kiểm tra tốc độ ghi tuần tự của ổ cứng bằng dd

Lệnh “dd” sẽ giúp kiểm tra tốc độ ghi dữ liệu tuần tự của ổ cứng. Ta tạo file có 2GB để kiểm tra

[[email protected] ~]# dd if=/dev/zero of=2GB.bin bs=2G count=1 oflag=dsync
0+1 records in
0+1 records out
2147479552 bytes (2,1 GB) copied, 2,62956 s, 817 MB/s

if=/dev/zero: dữ liệu input đầu vào

of=2GB.bin: output file

bs=2GB: block size – kích thước của mỗi block là 2GB

count: number of block – số lượng block sẽ ghi là 1

oflag=dsync: use synchronized I/O for data – ghi trực tiếp vào ổ cứng và bỏ qua cache, tham số này giúp việc đo lường tốc độ của ổ cứng chính xác hơn.

Kiểm tra iops bằng fio

Lệnh fio thường được dùng để kiểm tra iops (input output per second) của ổ cứng, cho biết mỗi giây ổ cứng có thể thực hiện bao nhiêu thao tác IO

$ fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75

Lệnh trên sẽ tạo ra 1 file có dung lượng 4GB và thực hiện thao tác đọc/ghi các block 4KB với tỉ lệ 75%/25% – cứ 3 thao tác read sẽ thực hiện 1 thao tác write

Kiểm tra tốc đô ổ cứng bằng fio

Hãy tham gia Group Chat Telegram của nhóm để học hỏi và thảo luận kiến thức với các System Admin khác.