Liên hệProfile
Danh mục

Mục Lục

    Cách dùng bmon trên Linux để giám sát băng thông mạng chi tiết

    Nguyễn Hưng

    Ngày đăng:

    24/02/2026

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

    24/02/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:

    24/02/2026

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

    24/02/2026

    Mục lục

    bmon là công cụ dòng lệnh tương tác trong Linux dùng để giám sát băng thông mạng theo thời gian thực. Công cụ này được thiết kế chuyên biệt để theo dõi lưu lượng mạng trên các giao diện mạng một cách trực quan và chi tiết. Trong bài viết này, mình sẽ hướng dẫn các bạn chi tiết cách cài đặt và khai thác sức mạnh của bmon để quản trị mạng hiệu quả.

    Những điểm chính

    • Định nghĩa lệnh bmon: Hiểu rõ bmon là công cụ dòng lệnh chuyên dùng để giám sát băng thông mạng theo thời gian thực trên Linux.
    • Chức năng chính: Nắm được 3 chức năng cốt lõi của bmon là giám sát thời gian thực, trực quan hóa dữ liệu qua biểu đồ và cung cấp các thông số kỹ thuật chi tiết.
    • Hướng dẫn cài đặt: Biết cách cài đặt bmon nhanh chóng trên các bản phân phối Linux phổ biến như CentOS, Fedora và Ubuntu.
    • Hướng dẫn sử dụng cơ bản: Thành thạo các lệnh và phím tắt cơ bản để khởi chạy, giám sát một card mạng cụ thể và tùy chỉnh đơn vị hiển thị.
    • Các module đầu vào và đầu ra: Hiểu được cơ chế hoạt động của bmon qua các module, giúp bạn tùy chỉnh cách thu thập và xuất dữ liệu cho các mục đích nâng cao.
    • Giải đáp thắc mắc (FAQ): Có được câu trả lời cho các câu hỏi thực tế về việc giám sát nhiều card mạng, xuất dữ liệu ra file và khả năng tích hợp cảnh báo.

    bmon là gì?

    Bmon (Bandwidth Monitor) là một công cụ dòng lệnh (CLI) gọn nhẹ trên hệ điều hành Linux, được thiết kế chuyên biệt để giám sát băng thông mạng theo thời gian thực. Công cụ này hỗ trợ người dùng và quản trị viên hệ thống theo dõi chi tiết lưu lượng mạng, tốc độ tải lên, tải xuống cũng như trạng thái kết nối của từng giao diện mạng trên máy chủ.

    Bmon (Bandwidth Monitor) là một công cụ dòng lệnh (CLI) gọn nhẹ trên hệ điều hành Linux
    Bmon (Bandwidth Monitor) là một công cụ dòng lệnh (CLI) gọn nhẹ trên hệ điều hành Linux

    Một trong những điểm mạnh của Bmon là khả năng xuất dữ liệu linh hoạt, hỗ trợ nhiều định dạng khác nhau:

    • Giao diện tương tác (curses UI): Cung cấp một bảng điều khiển đồ họa ngay trên terminal để theo dõi trực tiếp.
    • Định dạng ASCII thuần túy: Hiển thị dữ liệu dưới dạng văn bản đơn giản.
    • Xuất ra định dạng HTML: Tạo ra một tệp HTML chứa các báo cáo thống kê.
    • Đầu ra có thể lập trình (Scriptable output): Cho phép xuất dữ liệu ở định dạng dễ dàng tích hợp vào các kịch bản (scripts) tự động hóa.

    Chức năng chính của bmon

    Chức năng chính của bmon là thu thập các thống kê về mạng và hiển thị chúng dưới dạng trực quan để người dùng dễ dàng theo dõi. Cụ thể, bmon thực hiện 3 nhiệm vụ cốt lõi sau:

    • Giám sát băng thông thời gian thực: bmon hiển thị chi tiết tốc độ tải lên và tải xuống của tất cả các giao diện mạng như eth0, wlan0,… đang hoạt động trên hệ thống ngay tại thời điểm bạn quan sát.
    • Trực quan hóa dữ liệu: Khác với các lệnh chỉ hiện số liệu khô khan, bmon vẽ ra các biểu đồ dạng thanh (ASCII graphs) ngay trong cửa sổ terminal, giúp quản trị viên nhanh chóng nhận diện được xu hướng tăng/giảm đột biến của lưu lượng mạng.
    • Chi tiết hóa thông số kỹ thuật: Ngoài tốc độ, bmon còn cung cấp các thông tin sâu hơn như số lượng gói tin, lỗi đường truyền, số gói tin bị loại bỏ hoặc xung đột, giúp chẩn đoán xem mạng bị chậm là do nghẽn băng thông hay do lỗi thiết bị.
    Chức năng chính của bmon
    Chức năng chính của bmon

    Hướng dẫn cài đặt Bmon trên Linux

    Bmon đã có sẵn trên các kho lưu trữ mặc định của hầu hết các bản phân phối Linux phổ biến. Tùy thuộc vào hệ điều hành đang sử dụng, bạn hãy thực hiện một trong các lệnh sau để cài đặt:

    Đối với CentOS, RHEL:

    sudo yum install bmon

    Đối với Fedora (Phiên bản 22 trở lên):

    sudo dnf install bmon

    Đối với Ubuntu, Debian hoặc Linux Mint:

    sudo apt-get install bmon

    Hướng dẫn sử dụng Bmon cơ bản

    Sau khi quá trình cài đặt hoàn tất, bạn có thể khởi chạy ứng dụng ngay lập tức bằng lệnh:

    bmon
    Giao diện khởi chạy ứng dụng
    Giao diện khởi chạy ứng dụng

    Sử dụng các phím tắt điều hướng

    Tại giao diện chính của chương trình, bạn có thể sử dụng các phím tắt sau để hiển thị thêm thông tin:

    • Phím d: Bật/tắt chế độ hiển thị chi tiết.
    • Phím i: Bật/tắt chế độ xem thông tin bổ sung.
    • Tổ hợp phím Shift + ?: Mở bảng tham chiếu nhanh để xem danh sách các phím tắt hỗ trợ.
    Các phím tắt điều hướng
    Các phím tắt điều hướng

    Giám sát một card mạng cụ thể

    Để tập trung giám sát một giao diện mạng nhất định, bạn sử dụng tùy chọn -p. Trước tiên, bạn hãy kiểm tra danh sách các card mạng hiện có trên máy bằng lệnh ip a.

    Ví dụ, để giám sát card mạng có tên eth0, bạn thực hiện lệnh sau:

    bmon -p eth0

    Tùy chỉnh đơn vị hiển thị và thời gian làm mới

    Mặc định, bmon hiển thị tốc độ dưới dạng Bytes/giây. Để chuyển sang đơn vị Bits/giây, bạn thêm tùy chọn -b. Ngoài ra, để thay đổi khoảng thời gian làm mới dữ liệu (mặc định là 1 giây), bạn sử dụng tùy chọn -r kèm theo số giây mong muốn.

    Ví dụ, để xem băng thông của eth0 dưới dạng Bit/giây và làm mới mỗi 5 giây, bạn thực hiện lệnh sau:

    bmon -r 5 -p eth0 -b

    Tra cứu tài liệu hướng dẫn

    Bmon cung cấp một trang tài liệu hướng dẫn chi tiết. Nếu bạn muốn tìm hiểu sâu hơn về mọi tùy chọn và tính năng nâng cao, hãy sử dụng lệnh:

    man bmon

    Các module đầu vào và đầu ra của Bmon

    Các module đầu vào

    Bmon hoạt động dựa trên cơ chế thu thập dữ liệu từ các input module. Dưới đây là các module phổ biến:

    • netlink: Đây là module mặc định và tốt nhất hiện nay, sử dụng giao thức Netlink để thu thập thống kê giao diện và kiểm soát lưu lượng trực tiếp từ kernel. 
    • proc: Đây là phương pháp cũ, dùng để tương thích ngược hoặc dự phòng khi Netlink không khả dụng. Đọc dữ liệu từ file /proc/net/dev
    • dummy: module lập trình dùng cho mục đích gỡ lỗi (debug) và thử nghiệm.
    • null: Vô hiệu hóa hoàn toàn việc thu thập dữ liệu.

    Để xem hướng dẫn chi tiết về một module cụ thể (ví dụ netlink), bạn sử dụng lệnh:

    bmon -i netlink:help

    Để ép buộc bmon sử dụng module proc trên card eth0, bạn chạy lệnh:

    bmon -i proc -p eth0

    Các module đầu ra của Bmon

    Sau khi thu thập dữ liệu, bmon sử dụng các Output module để hiển thị thông tin cho người dùng.

    • curses: Giao diện đồ họa dạng văn bản (TUI) hiển thị biểu đồ và thông số theo thời gian thực. Đây là giao diện mặc định mà bạn thường thấy.
    • ascii: Hiển thị dữ liệu dưới dạng văn bản thuần túy, phù hợp cho việc ghi log hoặc cho người dùng đọc nhanh mà không cần biểu đồ.
    • format: Chế độ đầu ra có thể lập trình hoàn toàn, thường được dùng để các script hoặc phần mềm khác đọc dữ liệu từ bmon để phân tích tiếp.
    • null: Vô hiệu hóa việc xuất dữ liệu.

    Ví dụ, để hiển thị thông số của eth0 dưới dạng văn bản ascii thay vì biểu đồ:

    bmon -p eth0 -o ascii
    Thông số của eth0 hiển thị dưới dạng văn bản ascii
    Thông số của eth0 hiển thị dưới dạng văn bản ascii

    Để xuất dữ liệu dưới dạng format cho script xử lý, bạn thực thi lệnh sau:

    bmon -p eth0 -o format
    Bạn cũng có thể xuất dữ liệu dưới dạng format
    Bạn cũng có thể xuất dữ liệu dưới dạng format

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

    bmon có hỗ trợ giám sát nhiều card mạng cùng lúc không?

    Câu trả lời là có. Bạn có thể giám sát nhiều card mạng bằng cách liệt kê các tên giao diện với dấu phẩy trong tùy chọn -p.
    Ví dụ: bmon -p eth0,wlan0.
    Công cụ sẽ hiển thị dữ liệu đồng thời cho từng giao diện được chỉ định.

    Nếu muốn xuất dữ liệu thống kê từ bmon ra file để phân tích dài hạn thì nên cấu hình ra sao?

    Bạn hãy dùng output module ascii hoặc format kết hợp với chuyển hướng xuất ra file.
    Ví dụ: bmon -p eth0 -o format > data.log.
    Sau đó, có thể dùng các công cụ xử lý log như awk, grep, hoặc import dữ liệu vào Excel/Google Sheets để phân tích.

    bmon có thể tích hợp để gửi cảnh báo khi phát hiện lưu lượng bất thường tăng/giảm vượt ngưỡng không?

    bmon bản gốc không có chức năng gửi cảnh báo, nhưng có thể kết hợp với script bên ngoài bằng output dạng format. Người dùng có thể viết một chương trình shell/python đọc output này, so sánh với ngưỡng cảnh báo, rồi gửi thông báo qua email hoặc Telegram nếu phát hiện lưu lượng vượt mức.

    Nlbwmon là gì và tại sao nó hữu ích trên OpenWrt?

    Nlbwmon (Netlink Bandwidth Monitor) là một công cụ dành riêng cho OpenWrt, có chức năng theo dõi và thống kê lưu lượng băng thông của từng thiết bị riêng lẻ trong mạng của bạn. Nó cực kỳ hữu ích để xác định thiết bị nào đang sử dụng nhiều dữ liệu nhất. Người dùng thường cài đặt gói luci-app-nlbwmon để xem các báo cáo này qua giao diện web LuCI.

    Tóm lại, bmon là một trong những công cụ dòng lệnh mạnh mẽ và hữu ích khi bạn cần giám sát băng thông mạng theo thời gian thực trên Linux. Với khả năng trực quan hóa dữ liệu, hỗ trợ nhiều dạng giao diện mạng, dễ dàng tùy chỉnh cùng loạt module đầu vào và đầu ra đa dạng, bmon không chỉ giúp theo dõi chính xác tình trạng sử dụng mạng mà còn hỗ trợ kịp thời trong việc phân tích, phát hiện bất thường trên hệ thống.

    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

    smartctl là gì? Cách sử dụng smartctl trong Linux để kiểm tra sức khỏe ổ cứng
    smartctl là gì? Cách sử dụng smartctl trong Linux để kiểm tra sức khỏe ổ cứng

    smartctl là một tiện ích dòng lệnh giúp quản lý và giám sát hệ thống S.M.A.R.T., từ đó theo dõi chi tiết sức khỏe ổ cứng HDD/SSD trong môi trường máy chủ lẫn máy trạm cá nhân. Trong bài viết này, bạn sẽ tìm hiểu cách cài đặt, sử dụng các lệnh smartctl quan trọng…

    14/04/2026

    cryptsetup là gì? Cách mã hóa phân vùng với cryptsetup (LUKS) trên Linux
    cryptsetup là gì? Cách mã hóa phân vùng với cryptsetup (LUKS) trên Linux

    cryptsetup là tiện ích dòng lệnh nguồn mở trong Linux dùng để quản lý mã hóa đĩa dựa trên dm-crypt và chuẩn LUKS, hỗ trợ tạo volume an toàn với nhiều khóa và tương thích cao. Bài viết này hướng dẫn toàn diện về cryptsetup từ cài đặt, quy trình mã hóa, quản lý key…

    14/04/2026

    Aureport là gì? Hướng dẫn sử dụng lệnh aureport trên Linux
    Aureport là gì? Hướng dẫn sử dụng lệnh aureport trên Linux

    Aureport là công cụ dòng lệnh mạnh mẽ trong hệ thống auditd Linux, chuyên tạo báo cáo thống kê tóm tắt từ các tệp nhật ký kiểm toán. Bài viết này sẽ hướng dẫn chi tiết cách sử dụng aureport để giám sát bảo mật và phân tích hoạt động hệ thống hiệu quả. Những…

    09/04/2026

    Auditctl là gì? Hướng dẫn sử dụng lệnh auditctl trong Linux để quản lý hệ thống Audit
    Auditctl là gì? Hướng dẫn sử dụng lệnh auditctl trong Linux để quản lý hệ thống Audit

    Auditctl là công cụ dòng lệnh quan trọng trong Linux, cho phép quản trị viên thiết lập và quản lý các quy tắc giám sát (audit) trực tiếp trên kernel. Thông qua auditctl, bạn có thể theo dõi chi tiết các hoạt động như truy cập file, thực thi syscall hay hành vi người dùng…

    09/04/2026

    linux

    lenh

    text