Liên hệProfile
Danh mục

Mục Lục

    Hướng dẫn sử dụng lệnh top trong Linux để giám sát hiệu suất hệ thống hiệu quả

    Nguyễn Hưng

    Ngày đăng:

    17/03/2026

    Cập nhật lần cuối:

    17/03/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    17/03/2026

    Cập nhật lần cuối:

    17/03/2026

    Mục lục

    Lệnh top trong Linux là công cụ dòng lệnh dùng để theo dõi hoạt động của hệ thống theo thời gian thực, bao gồm CPU, bộ nhớ, tiến trình và mức tải hệ thống. Công cụ này giúp quản trị viên nhanh chóng phát hiện tiến trình tiêu tốn tài nguyên, từ đó tối ưu hiệu suất và xử lý sự cố kịp thời. Trong bài viết này, mình sẽ hướng dẫn bạn cách sử dụng lệnh top trong Linux để giám sát hiệu suất hệ thống một cách hiệu quả.

    Những điểm chính

    • Khái niệm: Hiểu rõ bản chất của top là công cụ giám sát hiệu suất thời gian thực, giúp bạn nắm bắt nhanh tình trạng của toàn bộ máy chủ.
    • So sánh lệnh top và lệnh ps: Phân biệt chính xác cơ chế hoạt động giữa giám sát động và chụp ảnh tĩnh để chọn đúng công cụ cho từng mục đích.
    • Lý do nên sử dụng lệnh top: Biết cách tận dụng top để xác định các lỗi hiệu năng, nhận diện điểm nghẽn tài nguyên và tương tác trực tiếp với các tiến trình đang chạy.
    • Các phím tắt thường dùng: Nắm vững hệ thống phím tắt hữu ích giúp bạn điều khiển giao diện, sắp xếp dữ liệu và quản lý tiến trình nhanh chóng bằng bàn phím.
    • Hướng dẫn sử dụng chi tiết: Thành thạo kỹ năng đọc hiểu các chỉ số Load Average, CPU, RAM và thực hiện các thao tác quản trị như kill hoặc đổi độ ưu tiên tiến trình.
    • Kiểm tra và xử lý lỗi phổ biến: Biết cách xác minh kết quả xử lý và khắc phục triệt để các tình trạng như I/O Wait cao, cạn kiệt RAM vật lý hay lỗi quyền hạn khi tắt tiến trình.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc khi sử dụng lệnh top Linux.

    Lệnh top Linux là gì?

    Lệnh top Linux (Table Of Processes) là công cụ giám sát hệ thống theo thời gian thực, cung cấp giao diện tương tác và tự động cập nhật dữ liệu liên tục. Giao diện này hiển thị chi tiết thông tin của máy chủ, bao gồm mức tải trung bình, mức tiêu thụ CPU, dung lượng bộ nhớ RAM/Swap và danh sách các tiến trình đang hoạt động. Cú pháp lệnh top như sau:

    top [tùy_chọn]

    Trong đó, tùy chọn là phần thêm vào sau tên lệnh, thường bắt đầu bằng – hoặc — để thay đổi cách lệnh hoạt động, nhưng không bắt buộc phải có.

    Lệnh top Linux (Table Of Processes) là công cụ giám sát hệ thống theo thời gian thực
    Lệnh top Linux (Table Of Processes) là công cụ giám sát hệ thống theo thời gian thực

    So sánh lệnh top và lệnh ps

    Lệnh top dùng để giám sát tiến trình theo thời gian thực, trong khi đó, lệnh ps thường được sử dụng để chụp snapshot danh sách tiến trình tại đúng thời điểm chạy lệnh.

    Tiêu chítopps
    Kiểu hiển thịReal-time, tự cập nhật.Snapshot một lần, không tự cập nhật.
    Phạm viThường hiển thị toàn bộ hệ thống theo thời gian.Tùy option, có thể chỉ shell hiện tại hoặc toàn hệ thống.
    Tương tácCó.Không, chỉ đọc kết quả.
    Mục đích chínhGiám sát hệ thống, tìm tiến trình sử dụng nhiều tài nguyên.Tra cứu chi tiết, kết hợp script/grep/kill.
    Dùng khi nàoCần theo dõi live CPU, RAM, loadCần tìm PID cụ thể, xuất dữ liệu dạng text để xử lý tiếp.

    Lý do nên sử dụng lệnh top Linux

    Lệnh top Linux có những ưu điểm vượt trội về khả năng giám sát và xử lý sự cố:

    • Kiểm tra hiệu năng theo thời gian thực: Lệnh top cung cấp khả năng truy xuất dữ liệu hệ thống nhanh và không yêu cầu cài đặt hay cấu hình phức tạp. Đây là giải pháp tối ưu để xác định nguyên nhân gây suy giảm hiệu năng hoặc quá tải hệ thống ngay khi sự cố phát sinh.
    • Nhận diện điểm nghẽn tài nguyên: Công cụ này cho phép quản trị viên định danh chính xác các tiến trình đang tiêu thụ tài nguyên CPU hoặc Memory vượt mức cho phép. Việc phát hiện sớm các tiến trình bất thường giúp ngăn chặn tình trạng cạn kiệt tài nguyên và đảm bảo độ ổn định cho máy chủ.
    • Quản trị tương tác động: Khác với các lệnh truy xuất thông tin tĩnh, top cung cấp giao diện tương tác mạnh mẽ cho phép bạn thực hiện các tác vụ quản lý ngay trong thời gian thực. Các tác vụ phổ biến gồm: Thay đổi bộ lọc hiển thị, sắp xếp lại mức độ ưu tiên hoặc gửi tín hiệu buộc dừng tới các tiến trình bị treo mà không cần gián đoạn phiên làm việc.
    Lý do nên sử dụng lệnh top
    Lý do nên sử dụng lệnh top

    Các phím tắt thường dùng trong giao diện top

    Khi lệnh top đang chạy, bạn có thể nhấn các phím sau để tương tác trực tiếp:

    Lệnh (Phím bấm)Chức năngGiải thích
    kKết thúc tiến trình (kill).Hỏi PID và tín hiệu để kết thúc tiến trình.
    rThay đổi độ ưu tiên (Renice).Hỏi PID và giá trị Nice mới cho tiến trình.
    zĐổi màu giao diện.Chuyển đổi giữa các chế độ màu sắc để dễ quan sát hơn.
    fQuản lý các cột hiển thị.Chọn hoặc bỏ chọn các cột thông tin.
    MSắp xếp theo bộ nhớ (Memory).Sắp xếp danh sách tiến trình theo mức sử dụng bộ nhớ giảm dần.
    PSắp xếp theo CPU.Sắp xếp danh sách tiến trình theo mức sử dụng CPU giảm dần.
    1Hiển thị chi tiết CPU.Chuyển đổi chế độ xem tổng CPU và xem chi tiết từng lõi CPU.
    qThoát top.Thoát khỏi giao diện giám sát và trở về Terminal.

    1. Khởi động và đọc hiểu giao diện lệnh top Linux

    Để bắt đầu giám sát hệ thống và hiểu các chỉ số quan trọng ở phần đầu giao diện, bạn thực hiện cú pháp lệnh sau:

    top
    Khởi động và đọc hiểu giao diện top
    Khởi động và đọc hiểu giao diện top

    Sau khi chạy lệnh, giao diện top sẽ được chia thành hai phần chính:

    • Phần tóm tắt: Chứa các thông tin quan trọng nhất bao gồm:
      • Tên miền và giờ hiện tại.
      • Up time: Thời gian hệ thống đã hoạt động liên tục.
      • Load average: Mức tải trung bình của hệ thống trong 1 phút, 5 phút và 15 phút gần nhất.
      • Tasks: Tổng số tiến trình, số tiến trình đang chạy (running), ngủ (sleeping), dừng (stopped) và zombie.
      • CPU(s): Mức sử dụng CPU (%) được phân chia theo: us (user), sy (system), id (idle), wa (I/O wait),…
      • Mem/Swap: Tổng dung lượng bộ nhớ vật lý và bộ nhớ ảo hiện có, đang sử dụng và còn trống.
    • Phần chi tiết tiến trình: Danh sách các tiến trình đang chạy, mặc định được sắp xếp theo mức sử dụng CPU.

    2. Hiển thị mức sử dụng CPU của từng lõi

    Khi hệ thống sử dụng vi xử lý đa nhân, bạn cần kiểm tra xem từng lõi có bị quá tải cục bộ hay không. Để kiểm tra, bạn vào giao diện top, nhấn phím 1. Sau đó, giao diện sẽ mở rộng phần thông tin CPU và hiển thị chi tiết mức sử dụng của từng lõi, giúp bạn phát hiện tình trạng nghẽn cổ chai khi chỉ một lõi xử lý bị quá tải trong khi các lõi khác vẫn nhàn rỗi.

    Hiển thị mức sử dụng CPU của từng lõi
    Hiển thị mức sử dụng CPU của từng lõi

    3. Sắp xếp tiến trình theo bộ nhớ

    Bạn có thể tìm kiếm nhanh tiến trình nào đang tiêu tốn nhiều bộ nhớ RAM nhất bằng cách vào giao diện top và nhấn phím M (chữ M viết hoa). Khi đó, danh sách tiến trình sẽ được sắp xếp lại dựa trên cột %MEM (phần trăm bộ nhớ vật lý được sử dụng) theo thứ tự giảm dần.

    Sắp xếp tiến trình theo bộ nhớ
    Sắp xếp tiến trình theo bộ nhớ

    4. Sắp xếp tiến trình theo CPU

    Để xác định nhanh tiến trình nào đang chiếm dụng nhiều tài nguyên CPU nhất, bạn vào giao diện top và nhấn phím P (chữ P viết hoa). Khi đó, bạn hình sẽ hiển thị chế độ sắp xếp mặc định khi khởi động lệnh, cột %CPU sẽ hiển thị mức sử dụng giảm dần từ cao xuống thấp.

    Sắp xếp tiến trình theo CPU
    Sắp xếp tiến trình theo CPU

    5. Kết thúc một tiến trình

    Để buộc dừng một tiến trình bị treo hoặc đang tiêu tốn tài nguyên quá mức cho phép, bạn xử lý theo các bước dưới đây:

    1. Trong giao diện top, bạn nhấn phím k (chữ k thường).
    2. Tiếp theo, bạn nhập PID của tiến trình cần kết thúc.
    3. Sau đó, bạn nhấn Enter.
    4. Bạn nhập Signal muốn gửi, mặc định là 15 (SIGTERM – yêu cầu dừng lại nhẹ nhàng). Nếu tiến trình vẫn không dừng, bạn dùng 9 (SIGKILL – buộc dừng ngay lập tức).
    5. Cuối cùng bạn nhấn Enter.

    Cú pháp thực thi lệnh kill như sau:

    Kill PID: <nhập PID> 
    Send signal: [15] <nhập tín hiệu>

    Ví dụ, để kết thúc tiến trình có PID là 16 bạn thực hiện lệnh như sau:

    Kill PID: 16
    Send signal: [15]

    Bạn nhập số 16 và nhấn Enter, sau đó nhấn Enter tiếp để dùng tín hiệu mặc định. Quá trình này tương đương với việc bạn chạy lệnh kill -15 16 hoặc kill -9 16 bên ngoài terminal.

    Kết thúc tiến trình có PID là 16
    Kết thúc tiến trình có PID là 16
    Nhập tín hiệu (signal)
    Nhập tín hiệu (signal)

    6. Thay đổi độ ưu tiên của tiến trình

    Để điều chỉnh mức độ ưu tiên sử dụng CPU đối với một tiến trình đang chạy với giá trị từ -20 đến 19, trong đó -20 là ưu tiên cao nhất, bạn thực hiện lệnh như sau:

    1. Trong giao diện top, bạn nhấn phím r.
    2. Sau đó, bạn nhập PID của tiến trình cần chỉnh sửa.
    3. Tiếp theo, bạn nhập giá trị Nice value mới, ví dụ như nhập 10 để giảm độ ưu tiên của tiến trình.
    4. Cuối cùng bạn nhấn Enter.

    Ví dụ minh họa:

    Renice PID: 1262
    Renice value: 10
    Thay đổi độ ưu tiên của tiến trình
    Thay đổi độ ưu tiên của tiến trình

    Cách xử lý lỗi phổ biến khi sử dụng lệnh top Linux

    1. Không thể kill tiến trình

    Nguyên nhân: Hệ thống sẽ từ chối lệnh nếu bạn đang dùng tài khoản người dùng thông thường để can thiệp vào các tiến trình thuộc sở hữu của người khác hoặc của hệ thống. Ngoài ra, một nguyên nhân kỹ thuật khác là tiến trình đó đang rơi vào trạng thái treo cứng hoặc bị lỗi kẹt trong hệ thống, khiến tiến trình không thể tiếp nhận và xử lý tín hiệu ngắt thông thường.

    Khắc phục:

    • Đảm bảo bạn đang chạy lệnh với quyền quản trị cao nhất là sudo top.
    • Nếu vẫn không tắt được, bạn hãy dùng tín hiệu mạnh nhất là 9 (SIGKILL) để cưỡng chế hệ điều hành tiêu diệt tiến trình đó ngay lập tức.

    2. Giá trị I/O Wait cao

    • Nguyên nhân: Nếu chỉ số wa (wait) trong phần CPU tăng cao, điều này cho thấy hệ thống đang mất nhiều thời gian chờ dữ liệu từ thiết bị lưu trữ.
    • Khắc phục: Vấn đề lúc này không nằm ở CPU mà ở ổ đĩa. Bạn nên sử dụng các lệnh chuyên dụng như iostat hoặc iotop để xác định chính xác tiến trình nào đang gây tải I/O lớn.

    3. Bộ nhớ Swap đang được sử dụng nhiều

    Nguyên nhân: Hiện tượng dung lượng Swap bị sử dụng nhiều trong khi bộ nhớ free giảm mạnh cho thấy nguồn tài nguyên RAM vật lý của máy chủ đã cạn kiệt. Khi không còn đủ RAM để xử lý các tác vụ hiện hành, hệ điều hành buộc phải kích hoạt cơ chế phòng vệ là chuyển bớt dữ liệu sang Swap nằm trên ổ cứng. Do tốc độ truy xuất của ổ cứng chậm hơn RAM rất nhiều lần, hành động này chính là nguyên nhân trực tiếp khiến máy chủ phản hồi chậm hoặc bị treo tạm thời.

    Khắc phục:

    • Tại giao diện top, bạn nhấn phím M (Shift + m) để lọc ra các tiến trình đang ngốn RAM nhất.
    • Tắt bớt các dịch vụ không cần thiết hoặc cân nhắc nâng cấp thêm thanh RAM cho máy chủ để giải quyết triệt để.
    Bộ nhớ Swap đang được sử dụng nhiều là lỗi thường gặp khi sử dụng lệnh top
    Bộ nhớ Swap đang được sử dụng nhiều là lỗi thường gặp khi sử dụng lệnh top (Nguồn: Internet)

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

    Tại sao tôi thấy mức sử dụng CPU (%CPU) của một tiến trình vượt quá 100%?

    Điều này hoàn toàn bình thường trên các hệ thống đa nhân vì lệnh top cộng dồn % sử dụng của tất cả các lõi mà tiến trình đó đang chiếm dụng. Nếu một tiến trình sử dụng trọn vẹn 2 lõi CPU, lệnh top sẽ báo cáo mức sử dụng là 200%.

    Làm thế nào để lưu lại các thay đổi giao diện cho lần sau?

    Sau khi đã tùy chỉnh giao diện top, bạn hãy nhấn phím W để hệ thống sẽ lưu cấu hình hiện tại vào file ~/.toprc và tự động áp dụng cho các lần mở sau.

    Lệnh top và htop có gì khác nhau?

    Lệnh top được cài đặt sẵn trên hầu hết mọi hệ thống Linux với giao diện đơn giản và nhẹ. Trong khi đó, htop là một phần mềm cài thêm, có giao diện màu sắc trực quan hơn, hỗ trợ thao tác chuột và cuộn danh sách dễ dàng hơn.

    Lệnh top là công cụ giám sát hiệu suất động tối ưu trên Linux, cung cấp thông tin toàn diện về tài nguyên hệ thống và các tiến trình đang hoạt động. Bằng cách nắm vững cách đọc hiểu phần tóm tắt như Load Average, CPU/Mem,… và sử dụng thành thạo các phím tắt, bạn hoàn toàn có thể chủ động xác định và xử lý nhanh chóng các vấn đề về hiệu suất trên máy chủ Linux.

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Hướng dẫn sử dụng lệnh ps trong Linux để xem thông tin tiến trình nhanh chóng
    Hướng dẫn sử dụng lệnh ps trong Linux để xem thông tin tiến trình nhanh chóng

    Lệnh ps trong Linux là công cụ dòng lệnh dùng để hiển thị thông tin về các tiến trình đang chạy trong hệ thống. Thông qua lệnh này, bạn có thể nhanh chóng kiểm tra trạng thái tiến trình, theo dõi mức sử dụng tài nguyên và hỗ trợ quản trị hệ thống hiệu quả…

    17/03/2026

    Cách dùng lệnh visudo trên Linux để chỉnh sửa file sudoers an toàn
    Cách dùng lệnh visudo trên Linux để chỉnh sửa file sudoers an toàn

    Visudo là lệnh trong Linux dùng để chỉnh sửa file sudoers. Công cụ này giúp kiểm tra cú pháp trước khi lưu, giảm nguy cơ lỗi cấu hình có thể khiến hệ thống mất quyền quản trị. Trong bài viết này, mình sẽ hướng dẫn bạn cách sử dụng lệnh visudo để chỉnh sửa file…

    17/03/2026

    Hướng dẫn sử dụng lệnh last Linux để theo dõi lịch sử đăng nhập hệ thống hiệu quả
    Hướng dẫn sử dụng lệnh last Linux để theo dõi lịch sử đăng nhập hệ thống hiệu quả

    Lệnh last trong Linux là công cụ dùng để xem lại lịch sử đăng nhập và đăng xuất của người dùng trên hệ thống dựa trên dữ liệu được lưu trong file wtmp. Nhờ đó, quản trị viên có thể theo dõi hoạt động truy cập, phát hiện đăng nhập bất thường và hỗ trợ…

    17/03/2026

    Hướng dẫn dùng lệnh w Linux để kiểm tra người dùng đang đăng nhập vào hệ thống
    Hướng dẫn dùng lệnh w Linux để kiểm tra người dùng đang đăng nhập vào hệ thống

    Lệnh who trong Linux là công cụ dòng lệnh dùng để hiển thị danh sách người dùng hiện đang đăng nhập vào hệ thống cùng với thông tin phiên làm việc tương ứng. Nhờ đó, bạn có thể nhanh chóng kiểm tra trạng thái đăng nhập, theo dõi hoạt động của người dùng và hỗ…

    17/03/2026

    linux

    lenh

    text