dv3*_*0ea 78 networking bandwidth system-monitor
一些宽带提供商规定了每月下载限制,如果你超过了,会收取额外费用。仅仅通过安装/更新软件包和“正常”浏览(对我来说包括流媒体电视节目和电影),也很容易超过一些下限。
这意味着您需要限制使用互联网的数量,但很难知道何时使用。
系统监视器通过在资源选项卡的网络部分提供接收/发送总数来对此有所帮助。但是,每次重新启动都会重置。如果有一种方法可以让您每月收到总数,这样您就可以知道自己离超出限制有多近,甚至可能会在您看起来要超出限制时收到警告。
有谁知道实现这一目标的方法?
Win*_*nix 59
vnStat是一个基于控制台的 Linux 和 BSD 网络流量监视器,它为所选接口保留网络流量日志。它使用内核提供的网络接口统计信息作为信息源。这意味着 vnStat 实际上不会嗅探任何流量,并确保系统资源的少量使用。
在本教程中,我们将回顾:
nvStat 位于官方存储库中,因此无需链接到新的 ppa。要安装使用创建终端实例Ctrl+ Alt+T和在提示符下键入:
sudo apt-get install vnstat
Run Code Online (Sandbox Code Playgroud)
安装后,请保持终端打开以进行以下部分。无需重新启动。
选择一个首选的网络接口并相应地编辑 Interface 变量 /etc/vnstat.conf。要列出 vnstat 可用的所有接口,请使用:
vnstat --iflist
Run Code Online (Sandbox Code Playgroud)
要开始监视特定接口,您必须先初始化数据库。每个接口都需要自己的数据库。为 eth0 接口初始化一个的命令是:
sudo vnstat -u -i eth0
Run Code Online (Sandbox Code Playgroud)
介绍接口并检查配置文件后。您可以通过systemd以下方式启动监控过程:
sudo systemctl start vnstat.service
Run Code Online (Sandbox Code Playgroud)
要永久使用此服务:
sudo systemctl enable vnstat.service
Run Code Online (Sandbox Code Playgroud)
从现在开始,vnstat将使用如此小的 CPU 百分比在后台收集网络使用情况,它不会显示在 conky(系统监视器)的前 9 个进程列表(在我的机器上)中。
查询网络流量:
vnstat -q
Run Code Online (Sandbox Code Playgroud)
查看实时网络流量使用情况:
vnstat -l
Run Code Online (Sandbox Code Playgroud)
要查找更多选项,请使用:
vnstat --help
Run Code Online (Sandbox Code Playgroud)
要查看每月总计,请使用:
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 |
Run Code Online (Sandbox Code Playgroud)
Conky 是一种流行的轻量级系统监视器,用于许多 Linux 发行版。您可以像这样将 vnStat 带宽总数添加到您的 conky 显示中:
请注意拍摄照片的时间Yesterday是星期日,这解释了为什么每周总数较少。
实现这一目标的 conky 代码是:
${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}
Run Code Online (Sandbox Code Playgroud)
为了节省我狭窄的窗户上的空间,我用“G”,而不是“吉布”,“M”,而不是“MIB”等,如果您有更多的屏幕房地产的变化substr ($10, 1, 1),以$10与同为$9。
根据 报告的网络名称,您可能需要更改eth0为wlan0或eth1等ifconfig。
ric*_*cky 45
您可以查看vnstat。它是基于命令行的,可在存储库中使用。
你可以用 sudo vnstat -u -i [interface]
查看统计数据 sudo vnstat -i [interface]
Mar*_*oma 13
只是为了扩展rickys anwer:
有了ifconfig | cut -c 1-8 | sort | uniq -u你可以列出接口:
enp0s31f
lo
wlp3s0
Run Code Online (Sandbox Code Playgroud)
对于一个界面,您可以像这样可视化流量:
vnstati -vs -i wlp3s0 -o ~/summary.png
Run Code Online (Sandbox Code Playgroud)
给出了一个很好的总结:
rx 是接收到的流量tx 是转移的流量