Iostat là một tiện ích dòng lệnh cung cấp số liệu thống kê chi tiết về các hoạt động nhập/xuất trên các thiết bị hệ thống, chẳng hạn như đĩa. Nó là một phần của gói sysstat, mà bạn có thể cài đặt bằng apt. iostat giúp theo dõi hiệu suất của các thiết bị lưu trữ bằng cách báo cáo các số liệu như lượng dữ liệu đọc hoặc ghi, thời gian chờ đợi các hoạt động I/O và phần trăm thời gian CPU dành cho các tác vụ I/O. Công cụ này đặc biệt hữu ích để chẩn đoán tình trạng tắc nghẽn đĩa và tối ưu hóa hiệu suất hệ thống.
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt và sử dụng phần mềm iostat trên Ubuntu Linux. Hướng dẫn này tương thích với tất cả các phiên bản Ubuntu từ 24.04 đến 16.04.
Sau khi sysstat được cài đặt, bạn có thể tiến hành bước tiếp theo.
Bạn sẽ thấy đầu ra sau:
Dòng đầu tiên hiển thị phiên bản hạt nhân Linux và tên máy chủ trong đầu ra ở trên. Hai dòng tiếp theo hiển thị số liệu thống kê CPU như mức sử dụng CPU trung bình, phần trăm thời gian CPU nhàn rỗi và chờ phản hồi I/O, phần trăm thời gian chờ của CPU ảo và phần trăm thời gian CPU nhàn rỗi. Hai dòng tiếp theo hiển thị báo cáo sử dụng thiết bị, như số khối được đọc và ghi mỗi giây và tổng số khối được đọc và ghi mỗi giây.
Theo mặc định, iostat hiển thị báo cáo với ngày hiện tại. Nếu bạn muốn hiển thị thời gian hiện tại, hãy chạy lệnh sau:
Bạn sẽ thấy đầu ra sau:
Để kiểm tra phiên bản của iostat, hãy chạy lệnh sau lệnh:
Đầu ra:
Bạn có thể liệt kê tất cả các tùy chọn có sẵn với lệnh iostat bằng cách sử dụng lệnh sau lệnh:
Đầu ra:
Bạn sẽ thấy đầu ra sau:
Để xem báo cáo thiết bị liên tục trong mỗi 5 giây, trong 3 times:
Bạn sẽ thấy kết quả sau:
Nếu bạn muốn xem số liệu thống kê của các thiết bị cụ thể, hãy chạy lệnh sau lệnh:
Bạn sẽ thấy kết quả sau:
Bạn cũng có thể xem số liệu thống kê của nhiều thiết bị bằng lệnh sau:
Nếu bạn muốn hiển thị số liệu thống kê I/O của thiết bị theo MB/giây, hãy chạy lệnh sau lệnh:
Bạn sẽ thấy kết quả sau:
Nếu bạn muốn xem thông tin mở rộng cho một phân vùng cụ thể (sda4), hãy chạy lệnh sau lệnh:
Bạn sẽ thấy kết quả sau:
Nếu bạn chỉ muốn hiển thị số liệu thống kê về mức sử dụng CPU, hãy chạy lệnh sau lệnh:
Bạn sẽ thấy kết quả sau:
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách cài đặt và sử dụng phần mềm iostat trên Ubuntu Linux. Hướng dẫn này tương thích với tất cả các phiên bản Ubuntu từ 24.04 đến 16.04.
Điều kiện tiên quyết
- Máy tính để bàn hoặc máy chủ Ubuntu được cài đặt trên hệ thống của bạn.
- Người dùng không phải root có quyền sudo được thiết lập trên hệ thống của bạn
Cài đặt iostat
Theo mặc định, iostat được bao gồm trong gói sysstat trong Ubuntu. Bạn có thể dễ dàng cài đặt bằng cách chỉ cần chạy lệnh sau:
Mã:
sudo apt install sysstat -y
Ví dụ cơ bản về iostat
Chúng ta hãy bắt đầu bằng cách chạy lệnh iostat mà không có bất kỳ đối số nào. Điều này sẽ hiển thị thông tin về mức sử dụng CPU và số liệu thống kê I/O của hệ thống của bạn:
Mã:
iostat
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle 22.67 0.52 6.99 1.88 0.00 67.94
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 15.15 449.15 119.01 771022 204292
Theo mặc định, iostat hiển thị báo cáo với ngày hiện tại. Nếu bạn muốn hiển thị thời gian hiện tại, hãy chạy lệnh sau:
Mã:
iostat -t
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
Saturday 16 December 2017 09:44:55 IST
avg-cpu: %user %nice %system %iowait %steal %idle 21.37 0.31 6.93 1.28 0.00 70.12
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 9.48 267.80 79.69 771022 229424
Mã:
iostat -V
Mã:
sysstat version 10.2.0
(C) Sebastien Godard (sysstat orange.fr)
Mã:
iostat --help
Mã:
Usage: iostat [ options ] [ [ ] ]
Options are:
[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ]
[ -j { ID | LABEL | PATH | UUID | ... } ]
[ [ -T ] -g ] [ -p [ [,...] | ALL ] ]
[ [...] | ALL ]
Ví dụ sử dụng nâng cao của iostat
Nếu bạn chỉ muốn xem báo cáo thiết bị một lần, hãy chạy lệnh sau lệnh:
Mã:
iostat -d
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 12.18 353.66 102.44 771022 223320
Mã:
iostat -d 5 3
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 11.77 340.71 98.95 771022 223928
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 2.00 0.00 8.00 0 40
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.60 0.00 3.20 0 16
Mã:
iostat -p sda
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle 21.69 0.36 6.98 1.44 0.00 69.53
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 11.00 316.91 92.38 771022 224744
sda1 0.07 0.27 0.00 664 0
sda2 0.01 0.05 0.00 128 0
sda3 0.07 0.27 0.00 648 0
sda4 10.56 315.21 92.35 766877 224692
sda5 0.12 0.48 0.02 1165 52
sda6 0.07 0.32 0.00 776 0
Mã:
iostat -p sda, sdb, sdc
Mã:
iostat -m
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle 21.39 0.31 6.94 1.30 0.00 70.06
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 9.67 0.27 0.08 752 223
Mã:
iostat -x sda4
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle 21.26 0.28 6.87 1.19 0.00 70.39
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda4 0.79 4.65 5.71 2.68 242.76 73.28 75.32 0.35 41.80 43.66 37.84 4.55 3.82
Mã:
iostat -c
Mã:
Linux 3.19.0-25-generic (Ubuntu-PC) Saturday 16 December 2017 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle 21.45 0.33 6.96 1.34 0.00 69.91