Làm thế nào bạn có thể theo dõi tổng mức sử dụng dữ liệu internet trên các lần khởi động lại?


55

Một số nhà cung cấp băng thông rộng áp đặt giới hạn tải xuống hàng tháng, tính phí thêm nếu bạn đi qua. Nó cũng khá dễ dàng để vượt quá một số giới hạn thấp hơn chỉ bằng cách cài đặt / cập nhật các gói và duyệt 'bình thường' (với tôi bao gồm các chương trình truyền hình và phim trực tuyến).

Điều này có nghĩa là bạn cần giới hạn số lượng bạn sử dụng internet, nhưng thật khó để biết khi nào.

Giám sát hệ thống giúp một chút với điều này bằng cách đưa ra tổng số nhận / tổng số được gửi trong phần kết nối của tab Tài nguyên. Tuy nhiên, điều này được thiết lập lại mỗi lần khởi động lại. Sẽ tốt hơn nếu có một cách để có tổng số tiền nhận được hàng tháng để bạn có thể biết mức độ vượt quá giới hạn của mình và thậm chí có thể được đưa ra cảnh báo nếu có vẻ như bạn sẽ vượt quá giới hạn.

Có ai biết một cách để đạt được điều này?


Câu trả lời:


38

Bạn có thể kiểm tra vnstat . Nó dựa trên dòng lệnh và có sẵn trong kho lưu trữ.

Bạn có thể bắt đầu nó với sudo vnstat -u -i [interface]

Để xem số liệu thống kê sudo vnstat -i [interface]


27

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.conftươ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 vnstatsẽ 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:

nhập mô tả hình ảnh ở đây

Lưu ý khi hình ảnh được chụp Yesterdaylà 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 $10và tương tự cho $9.

Bạn có thể phải thay đổi eth0để wlan0hoặc eth1, vv tùy thuộc vào tên mạng của bạn báo cáo ifconfig.


Có thể "lọc" lưu lượng mạng cục bộ? Tôi có rất nhiều lưu lượng truy cập địa phương và không muốn tính nó cho việc sử dụng internet của mình.
JPelletier

@JPelletier Tác giả vnStat được trích dẫn nói rằng điều đó là không thể. Anh ta đã trích dẫn chủ đề này trong đó khoảng 20 người đã quyên góp $ 280 để trả tiền cho ai đó để làm chính xác những gì bạn đang yêu cầu: forum.netgate.com/topic/29677/ ( Doug Smythies là một chuyên gia giám sát lưu lượng trên mỗi địa chỉ IP và tôi sẽ yêu cầu anh ấy nhìn vào bình luận của bạn
WinEunuuchs2Unix

Cảm ơn vi đa trả lơi! Hiện tại tôi đang sử dụng iftopđể chẩn đoán sử dụng internet trực tiếp nhưng có thông tin lịch sử sẽ rất tốt
JPelletier

@JPelletier: bộ định tuyến của tôi là một máy chủ Ubuntu chạy tập lệnh iptables cho chức năng định tuyến / tường lửa. Lưu lượng truy cập chỉ có thể được theo dõi qua giao diện WAN. Đối với máy tính Ubuntu trong mạng LAN, người ta có thể thu thập mọi thứ bằng tcpdump và sau đó lọc mạng LAN và phát các gói tin như một cách để trích xuất các gói WAN đến / từ máy tính đó. Xem thêm tại đây
Doug Smythies

@DougSmythies Cảm ơn bạn đã bình luận! Tôi đang tự hỏi liệu có thể tạo ra hai giao diện: eth0 và eth1 liên kết với cùng một NIC không? Sau đó, tất cả lưu lượng truy cập cục bộ được chuyển qua eth1 và mọi thứ khác được chuyển qua eth0 vnstatsẽ thu thập số liệu thống kê trên? Xin lỗi nếu nó nghe có vẻ như một câu hỏi ngớ ngẩn ...
WinEunuuchs2Unix

6

Mặc dù không phải là câu trả lời "ubfox", tôi sử dụng phần mềm Tomato trên bộ định tuyến WRT54G của mình cho việc này. Nó mang lại cho tôi mức sử dụng lên / xuống hàng tháng trong vài năm qua và điều tuyệt vời (trong bối cảnh câu hỏi của bạn) là nó dành cho toàn bộ mạng, không chỉ cho một hệ thống mà nó đang chạy (mặc dù điểm này là moot nếu hệ thống trong câu hỏi là bộ định tuyến của bạn hoặc kết nối trực tiếp).


3
Cà chua ngon. Tuyệt vời trên bánh sandwich, thậm chí tốt hơn trên các bộ định tuyến.
Ryan Thompson

6

Chỉ để mở rộng rickys anwer:

Với ifconfig | cut -c 1-8 | sort | uniq -ubạn có thể liệt kê các giao diện:

enp0s31f
lo      
wlp3s0

Đối với một giao diện, sau đó bạn có thể hình dung lưu lượng truy cập như thế này:

vnstati -vs -i wlp3s0 -o ~/summary.png

đưa ra một bản tóm tắt tốt đẹp:

nhập mô tả hình ảnh ở đây

  • rx là lưu lượng nhận được
  • tx là lưu lượng đã chuyển

Chỉ cần chắc chắn rằng bạn đã cài đặt vnstati ngoài vnstat. sudo apt install vnstat vnstati
Nghiện hữu cơ

3

Tôi khuyên bạn nên tiện ích ntop có sẵn từ kho lưu trữ, nó chạy như một dịch vụ và giữ các bản ghi sử dụng lưu lượng. Các báo cáo có sẵn từ máy chủ http nội bộ (cổng 3000). Bạn có thể dễ dàng kiểm tra chúng bằng trình duyệt,http://localhost:300/

Kiểm tra những gì bạn có thể nhận được từ ntop tại trang web ntop .


ntop không theo dõi việc sử dụng giữa các lần khởi động lại, phải không?
Erigami

Theo tài liệu có thể sử dụng plugin rrd, tôi đã không tự kiểm tra.
João Pinto

Làm thế nào để bạn sử dụng plugin rrd sau đó?
Anwar

2

Ngoài bất kỳ giải pháp phần mềm nào, tôi sẽ đề nghị xem xét nhà cung cấp của bạn. Nhiều người trong số họ có các công cụ giám sát gửi cảnh báo cho bạn khi bạn đạt đến một giới hạn nhất định hoặc tạm thời chặn quyền truy cập của bạn. Điều này có lợi thế là bạn có được một số "chính thức".


Một vài năm sau bữa tiệc muộn, điều bạn không nhận ra là ISP không được xác nhận nếu bạn đi qua, thực tế đó là cách họ kiếm tiền, vì vậy các công cụ của họ sẽ không tính đến nhiều yếu tố như. ISP của tôi cung cấp 40 GB trợ cấp cho một khoản phí £ 20 nhưng tính phí £ 20 mỗi Gigabyte mà bạn đã vượt qua trợ cấp của mình một lần trước đây và tôi nhớ rằng nó đã phá hỏng Giáng sinh nhưng làm cho ISP vui mừng khi tính cho tôi một khoản tiền mặt khổng lồ. Tôi nói rằng mạng internet của tôi bị tắt, họ đã bình tĩnh. Sau đó tôi thấy ai đó liên kết trực tiếp đến MUX khỏi các tài khoản ngẫu nhiên, nó đã giải thích rất nhiều
Mark Giblin

0

Tôi thấy " màn hình tải xuống " là công cụ rất tốt và dễ sử dụng để hiển thị số liệu thống kê. Nó có giao diện GUI giúp sử dụng rất dễ dàng. Nó có sẵn trên Trung tâm phần mềm Ubuntu.

Tải xuống màn hình

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.