vnStat - Màn hình mạng dựa trên bảng điều khiển trọng lượng nhẹ
vnStat là trình giám sát lưu lượng mạng dựa trên bảng điều khiển dành cho Linux và BSD, giữ nhật ký lưu lượng mạng cho (các) giao diện đã chọn. Nó sử dụng số liệu thống kê giao diện mạng được cung cấp bởi kernel làm nguồn thông tin. Điều này có nghĩa là vnStat sẽ không thực sự đánh hơi bất kỳ lưu lượng truy cập nào và cũng đảm bảo sử dụng nhẹ tài nguyên hệ thống.
Trong hướng dẫn này, chúng tôi sẽ xem xét:
- Đặc trưng
- Cài đặt
- Cấu hình
- Bắt đầu dịch vụ Systemd
- Cách sử dụng (từ dòng lệnh)
- Ví dụ
Đặc trưng
- nhanh chóng và đơn giản để cài đặt và chạy
- thu thập số liệu thống kê vẫn tồn tại thông qua khởi động lại hệ thống
- có thể giám sát nhiều giao diện cùng một lúc
- một số tùy chọn đầu ra
- tóm tắt, hàng giờ, hàng ngày, hàng tháng, hàng tuần, top 10 ngày
- đầu ra hình ảnh png tùy chọn (sử dụng libgd)
- tháng có thể được cấu hình để tuân theo thời hạn thanh toán
- sử dụng tài nguyên tối thiểu
- cùng sử dụng cpu thấp bất kể lưu lượng
- có thể được sử dụng mà không cần quyền root
- biên tập cấu hình màu trực tuyến
Cài đặt
nvStat nằm trong kho chính thức nên không cần liên kết với ppa mới. Để cài đặt, tạo một thể hiện Terminal bằng Ctrl+ Alt+ Tvà gõ tại dấu nhắc:
sudo apt-get install vnstat
Sau khi cài đặt, giữ cho Terminal của bạn mở cho các phần sau. Không cần phải khởi động lại.
Cấu hình
Chọn một giao diện mạng ưa thích và chỉnh sửa biến Giao diện /etc/vnstat.conf
tương ứng. Để liệt kê tất cả các giao diện có sẵn cho vnstat, hãy sử dụng:
vnstat --iflist
Để bắt đầu theo dõi một giao diện cụ thể, trước tiên bạn phải khởi tạo cơ sở dữ liệu. Mỗi giao diện cần cơ sở dữ liệu riêng. Lệnh để khởi tạo một cho giao diện eth0 là:
sudo vnstat -u -i eth0
Bắt đầu dịch vụ Systemd
Sau khi giới thiệu (các) giao diện và kiểm tra tệp cấu hình. Bạn có thể bắt đầu quá trình giám sát thông qua systemd
:
sudo systemctl start vnstat.service
Để sử dụng dịch vụ này vĩnh viễn:
sudo systemctl enable vnstat.service
Từ giờ trở đi vnstat
sẽ thu thập việc sử dụng mạng trong nền bằng cách sử dụng một tỷ lệ nhỏ CPU như vậy, nó không hiển thị trong danh sách 9 quy trình hàng đầu của conky (màn hình hệ thống) (trên máy của tôi).
Cách sử dụng (từ Dòng lệnh)
Truy vấn lưu lượng mạng:
vnstat -q
Xem sử dụng lưu lượng truy cập mạng trực tiếp:
vnstat -l
Để tìm thêm tùy chọn, sử dụng:
vnstat --help
Tổng số hàng tháng
Để xem tổng số hàng tháng, sử dụng:
rick@dell:~$ vnstat -m
eth0 / monthly
month rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
Nov '16 76.31 MiB | 2.03 MiB | 78.35 MiB | 10.45 kbit/s
------------------------+-------------+-------------+---------------
estimated 3.13 GiB | 84 MiB | 3.21 GiB |
Ví dụ
Conky là một System Monitor trọng lượng nhẹ phổ biến được sử dụng trên nhiều bản phân phối Linux. Bạn có thể tổng số băng thông vnStat vào màn hình conky của bạn như thế này:
Lưu ý khi hình ảnh được chụp Yesterday
là Chủ nhật, điều này giải thích tại sao tổng số hàng tuần ít hơn.
Mã conky để đạt được điều này là:
${color orange}${voffset 2}${hr 1}
${color1}Network using vnStat "-i", "-w" and "-m"
${color}${goto 5}Today ${goto 100}Yesterday ${goto 225}Week ${goto 325}Month ${color green}
${execi 300 vnstat -i eth0 | grep "today" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 110}${execi 300 vnstat -i eth0 | grep "yesterday" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 220}${execi 300 vnstat -i eth0 -w | grep "current week" | awk '{print $9" "substr ($10, 1, 1)}'} ${goto 315}${execi 300 vnstat -i eth0 -m | grep "`date +"%b '%y"`" | awk '{print $9" "substr ($10, 1, 1)}'}
${color orange}${voffset 2}${hr 1}
Để tiết kiệm không gian trên cửa sổ hẹp của tôi, tôi sử dụng "G" thay vì "GiB", "M" thay vì "MiB", vv Nếu bạn có nhiều thay đổi màn hình realestate substr ($10, 1, 1)
tới $10
và tương tự cho $9
.
Bạn có thể phải thay đổi eth0
để wlan0
hoặc eth1
, vv tùy thuộc vào tên mạng của bạn báo cáo ifconfig
.