Trong bài viết này chúng tôi sẽ chia sẻ một mẹo để tìm ra các tiến trình đang chạy tiêu thụ nhiều bộ nhớ và tài nguyên CPU trên Linux. Quản trị viên hệ thống hiệu quả là những người lười biếng? Nguyên nhân không phải là họ không làm việc hoặc phí hoạt động thời gian - mà chủ yếu là vì họ đã tự động hóa một phần lớn các nhiệm vụ hàng ngày. Do đó, họ không cần phải trông nom máy chủ của mình và có thể dùng thời gian để học các công nghệ mới và luôn giữ vững vị trí hàng đầu.
Một phần trong việc tự động hoá các nhiệm vụ là học cách cho một tập lệnh thực hiện những gì bạn đã phải tự làm nếu không. Tiếp tục thêm các lệnh vào cơ sở kiến thức của bạn là một điều quan trọng không kém.
Tìm các tiến trình Linux theo RAM và CPU sử dụng
Kiểm tra các quy trình hàng đầu được sắp xếp theo mức sử dụng RAM hoặc CPU trong Linux
Lệnh sau sẽ hiển thị danh sách các tiến trình hàng đầu được sắp xếp theo RAM và sử dụng CPU theo thứ tự giảm dần (hãy loại bỏ pipeline và head nếu bạn muốn xem danh sách đầy đủ):
# ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
Kết quả mẫu:
PID PPID CMD %MEM %CPU
2591 2113 /usr/lib/firefox/firefox 7.3 43.5
2549 2520 /usr/lib/virtualbox/Virtual 3.4 8.2
2288 1 /home/gacanepa/.dropbox-dis 1.4 0.3
1889 1543 c:\TeamViewer\TeamViewer.ex 1.0 0.2
2113 1801 /usr/bin/cinnamon 0.9 3.5
2254 2252 python /usr/bin/linuxmint/m 0.3 0.0
2245 1801 nautilus -n 0.3 0.1
1645 1595 /usr/bin/X :0 -audit 0 -aut 0.3 2.5
Tìm các tiến trình hàng đầu theo RAM và CPU sử dụng
Giải thích ngắn gọn về các tùy chọn được sử dụng trong lệnh trên:
Tùy chọn -o
(hoặc –format) của ps cho phép bạn chỉ định định dạng đầu ra. Một tùy chọn ưa thích của tôi là hiển thị PIDs của các tiến trình (pid), PPIDs của các tiến trình cha (pid), tên tệp thực thi liên quan đến tiến trình (cmd), và sử dụng bộ nhớ và CPU (%mem
và %cpu
, tương ứng).
Ngoài ra, tôi sử dụng --sort
để sắp xếp theo %mem
hoặc %cpu
. Mặc định, đầu ra sẽ được sắp xếp theo thứ tự tăng dần, nhưng cá nhân tôi thích đảo ngược thứ tự đó bằng cách thêm một dấu trừ phía trước tiêu chí sắp xếp.
Để thêm các trường khác vào đầu ra hoặc thay đổi tiêu chí sắp xếp, xem phần OUTPUT FORMAT CONTROL trong trang man của các lệnh ps
.
Kết luận
Giám sát tiến trình là một trong số các nhiệm vụ của một quản trị viên hệ thống máy chủ Linux, trong mẹo này, chúng ta đã xem cách liệt kê các tiến trình trên hệ thống của bạn và sắp xếp chúng theo sử dụng bộ nhớ (RAM) và CPU theo thứ tự giảm dần sử dụng tiện ích ps.