sar command in linux

Tìm hiểu lệnh Sar trong Linux: Giám sát hiệu năng hệ thống một cách chuyên nghiệp

Bạn có bao giờ tự hỏi hệ thống Linux của mình đang hoạt động như thế nào? CPU có đang quá tải? Ổ cứng có bị nghẽn cổ chai? RAM có đủ đáp ứng nhu cầu? Lệnh sar (System Activity Reporter) trong Linux chính là công cụ đắc lực giúp bạn trả lời những câu hỏi này một cách chi tiết và chính xác.

Trong bài viết này, chúng ta sẽ cùng nhau khám phá lệnh sar, từ khái niệm cơ bản, cách cài đặt, sử dụng, cho đến những ví dụ thực tế giúp bạn làm chủ công cụ mạnh mẽ này. Hãy cùng bắt đầu nhé!

Sar là gì? Tại sao bạn nên sử dụng nó?

sar là một công cụ dòng lệnh trong Linux dùng để thu thập, báo cáo và lưu trữ thông tin về hoạt động của hệ thống. Nó cung cấp một cái nhìn tổng quan về hiệu suất của CPU, bộ nhớ, I/O, mạng và nhiều thành phần khác. Dữ liệu này có thể được sử dụng để xác định các nút thắt cổ chai, theo dõi xu hướng hiệu suất và lập kế hoạch nâng cấp hệ thống.

Vậy, tại sao bạn nên sử dụng sar? Dưới đây là một vài lý do:

  • Giám sát hiệu năng hệ thống: sar giúp bạn theo dõi các chỉ số quan trọng như mức sử dụng CPU, bộ nhớ, I/O, mạng, từ đó đánh giá được hiệu năng tổng thể của hệ thống.
  • Phát hiện nút thắt cổ chai: Bằng cách phân tích dữ liệu do sar cung cấp, bạn có thể dễ dàng xác định các thành phần nào đang gây ra tình trạng chậm trễ, từ đó có biện pháp khắc phục kịp thời.
  • Lập kế hoạch dung lượng: Dữ liệu lịch sử từ sar giúp bạn dự đoán nhu cầu tài nguyên trong tương lai, từ đó lập kế hoạch nâng cấp phần cứng hoặc tối ưu hóa phần mềm một cách hiệu quả.
  • Gỡ rối hiệu năng: Khi hệ thống gặp sự cố về hiệu năng, sar cung cấp thông tin chi tiết giúp bạn xác định nguyên nhân và giải quyết vấn đề một cách nhanh chóng.

Cài đặt Sar

Hầu hết các bản phân phối Linux hiện đại đều đi kèm với sar như một phần của gói sysstat. Nếu hệ thống của bạn chưa cài đặt, bạn có thể cài đặt bằng lệnh sau:

Trên Debian/Ubuntu:

sudo apt update
sudo apt install sysstat

Trên CentOS/RHEL/Fedora:

sudo yum install sysstat

Sau khi cài đặt, bạn cần kích hoạt dịch vụ sysstat để sar bắt đầu thu thập dữ liệu. Trên hầu hết các hệ thống, dịch vụ này sẽ tự động khởi động sau khi cài đặt. Nếu không, bạn có thể khởi động thủ công bằng lệnh:

sudo systemctl enable sysstat
sudo systemctl start sysstat

Sử dụng Sar: Các lệnh cơ bản

sar có rất nhiều tùy chọn và tham số khác nhau, nhưng chúng ta sẽ bắt đầu với những lệnh cơ bản nhất:

  • sar: Hiển thị thống kê CPU hiện tại.
  • sar -u: Hiển thị thống kê CPU chi tiết hơn, bao gồm mức sử dụng của người dùng, hệ thống, I/O wait và idle.
  • sar -r: Hiển thị thống kê bộ nhớ, bao gồm dung lượng RAM đã sử dụng, còn trống và swap.
  • sar -b: Hiển thị thống kê I/O, bao gồm số lượng đọc/ghi trên ổ cứng và tốc độ truyền dữ liệu.
  • sar -n DEV: Hiển thị thống kê mạng, bao gồm số lượng gói tin đã gửi/nhận và băng thông sử dụng.
  • sar -d: Hiển thị thống kê cho từng thiết bị block (thường là ổ cứng).

Để xem dữ liệu lịch sử, bạn có thể sử dụng tùy chọn -f để chỉ định tệp dữ liệu. Ví dụ:

sar -u -f /var/log/sa/sa16

Lệnh này sẽ hiển thị thống kê CPU chi tiết từ tệp dữ liệu ngày 16 của tháng hiện tại.

Ví dụ thực tế

Để hiểu rõ hơn về cách sử dụng sar, chúng ta sẽ xem xét một vài ví dụ thực tế:

  1. Kiểm tra mức sử dụng CPU: Để kiểm tra mức sử dụng CPU trong 5 giây một lần, trong 3 lần, bạn có thể sử dụng lệnh sau:
  2. sar -u 5 3

    Lệnh này sẽ hiển thị thống kê CPU chi tiết 3 lần, mỗi lần cách nhau 5 giây. Bạn có thể theo dõi các cột %user, %system, %iowait và %idle để đánh giá mức độ sử dụng CPU.

  3. Kiểm tra tình trạng bộ nhớ: Để kiểm tra tình trạng bộ nhớ, bạn có thể sử dụng lệnh sau:
  4. sar -r

    Lệnh này sẽ hiển thị thống kê bộ nhớ hiện tại. Bạn có thể theo dõi các cột kbmemfree, kbmemused, %memused, kbbuffers, kbcached và kbswpfree để đánh giá tình trạng bộ nhớ.

  5. Kiểm tra tốc độ I/O: Để kiểm tra tốc độ I/O, bạn có thể sử dụng lệnh sau:
  6. sar -b

    Lệnh này sẽ hiển thị thống kê I/O hiện tại. Bạn có thể theo dõi các cột tps, rtps, wtps, bread/s và bwrtn/s để đánh giá tốc độ I/O.

  7. Kiểm tra băng thông mạng: Để kiểm tra băng thông mạng, bạn có thể sử dụng lệnh sau:
  8. sar -n DEV

    Lệnh này sẽ hiển thị thống kê mạng cho tất cả các giao diện mạng. Bạn có thể theo dõi các cột rxpck/s, txpck/s, rxkB/s, txkB/s để đánh giá băng thông mạng.

So sánh Sar với các công cụ giám sát hiệu năng khác

Ngoài sar, còn có rất nhiều công cụ giám sát hiệu năng khác trong Linux, mỗi công cụ có những ưu điểm và nhược điểm riêng. Dưới đây là một bảng so sánh giữa sar và một vài công cụ phổ biến khác:

Công cụ Ưu điểm Nhược điểm Thích hợp cho
sar
  • Thu thập dữ liệu lịch sử
  • Ít tốn tài nguyên
  • Có sẵn trên hầu hết các hệ thống Linux
  • Giao diện dòng lệnh
  • Khó sử dụng cho người mới bắt đầu
Giám sát hiệu năng hệ thống, phân tích dữ liệu lịch sử, lập kế hoạch dung lượng.
top
  • Hiển thị thông tin thời gian thực
  • Dễ sử dụng
  • Không thu thập dữ liệu lịch sử
  • Tốn nhiều tài nguyên hơn sar
Giám sát hiệu năng hệ thống thời gian thực, xác định các tiến trình đang sử dụng nhiều tài nguyên.
vmstat
  • Hiển thị thống kê bộ nhớ và CPU
  • Dễ sử dụng
  • Không thu thập dữ liệu lịch sử
  • Ít thông tin chi tiết hơn sar
Giám sát bộ nhớ và CPU, xác định tình trạng swap.

Câu hỏi thường gặp (FAQ)

  1. Làm thế nào để thay đổi tần suất thu thập dữ liệu của sar?

    Bạn có thể thay đổi tần suất thu thập dữ liệu bằng cách chỉnh sửa tệp /etc/default/sysstat. Tìm đến dòng S_TIME_MINUTES và thay đổi giá trị theo ý muốn. Ví dụ, để thu thập dữ liệu mỗi phút, bạn đặt S_TIME_MINUTES=1. Sau khi thay đổi, bạn cần khởi động lại dịch vụ sysstat.

  2. Làm thế nào để xem dữ liệu sar của một ngày cụ thể?

    Bạn có thể sử dụng tùy chọn -f để chỉ định tệp dữ liệu của ngày đó. Ví dụ, để xem dữ liệu ngày 16 của tháng hiện tại, bạn sử dụng lệnh sar -u -f /var/log/sa/sa16.

  3. Làm thế nào để xóa dữ liệu sar cũ?

    Dữ liệu sar được lưu trữ trong thư mục /var/log/sa. Bạn có thể xóa các tệp cũ theo cách thủ công hoặc sử dụng một công cụ tự động như logrotate để quản lý dung lượng lưu trữ.

Kết luận

sar là một công cụ vô cùng hữu ích cho việc giám sát và phân tích hiệu năng hệ thống Linux. Mặc dù có thể hơi phức tạp đối với người mới bắt đầu, nhưng một khi bạn đã làm quen với các lệnh và tùy chọn cơ bản, bạn sẽ có thể khai thác tối đa sức mạnh của công cụ này để đảm bảo hệ thống của mình luôn hoạt động ổn định và hiệu quả.

Hy vọng bài viết này đã cung cấp cho bạn những kiến thức cần thiết để bắt đầu sử dụng sar. Chúc bạn thành công!

Last Updated : 21/08/2025