vnstat不更新


18

我在Ubuntu 14.04服务器上安装了vnstat来跟踪我的互联网使用情况(我每月的传输量有限)。但是,数据库永远不会更新。我曾尝试卸载/重新安装,但这不起作用。我需要做什么才能使vnstat更新并保持准确?

Answers:


14

sudo chown -R vnstat:vnstat /var/lib/vnstat

这解决了我在Ubuntu 14.04上的问题。

确保在该文件夹中有以下文件,并具有适当的所有权。

boby@fwhlin:/var/lib/vnstat$ ls -la
total 16
drwxr-xrwx  2 vnstat vnstat 4096 May 16 01:50 .
drwxr-xr-x 78 root   root   4096 Jul 22 15:14 ..
-rw-r--rwx  1 vnstat vnstat 2792 Jul 26 00:26 eth0
-rw-rw-r--  1 vnstat vnstat 2792 Jul 26 00:26 .eth0
boby@fwhlin:/var/lib/vnstat$ 

.eth0是临时文件,有时可能会消失。


我有同样的问题,但是在Manjaro Archlinux上。sudo chown -R vnstat:vnstat /var/lib/vnstat输出chown: invalid user: ‘vnstat:vnstat’. I have only vnstat.db`中/var/lib/vnstat-rw-r--r-- 1 root root 68K Oct 23 13:07 vnstat.db。我想我需要添加wlp2s0b1此文件夹,尽管我不知道文件中应该包含什么。我已经在github.com/vergoh/vnstat/issues/143上为此提交了一个单独的问题。上面的说明可能不再适用,因为5年前已经回答了。
詹姆斯·雷

9

安装后 vnstat,需要创建数据库(一次)。要创建数据库,您可以使用更新开关,它在没有数据库的基础上创建新数据库。创建数据库:sudo vnstat -i eth0 -u其中eth0是网络接口的名称。如果不确定通过来更新所有接口sudo vnstat -u。一段时间(1分钟)后,您可以查看详细信息vnstat -i eth0或简单地查看vnstat

更新资料

看来vnstat没有运行!。通过运行启动守护程序,sudo /etc/init.d/vnstat start并在5分钟后检查结果。

sudo vnstat -u -i eth0

错误:无法读取数据库“ / var / lib / vnstat / eth0。信息:->一个新的数据库已创建。

sudo /etc/init.d/vnstat start
  • 启动vnStat守护程序vnstatd [确定]

初始化数据库后,即可监视带宽使用情况。您可以通过invoke命令查看报告vnstat


@Vaindil,您尝试过吗?
totti 2014年

1
是的,我在安装vnstat之后就这样做了。这样做vnstat确实显示了输出,但是它显示数据库在几周内没有更新。
vaindil 2014年

是否vnstat运行?ps aux | grep vnstat
totti 2014年

steven 6475 0.0 0.1 11744 916 pts/0 S+ 13:35 0:00 grep --color=auto vnstatvnstat如果有问题或有帮助,则在终端上显示红色)
vaindil 2014年

尝试运行时sudo /etc/init.d/vnstat start,得到以下信息:Starting vnStat daemon: vnstatd./ pidfile: No such file or directory然后它就好像在做某事一样坐着,但是它无限期地坐着。
vaindil

2

您确定vnstatd正在运行,即正在执行数据收集的守护程序(后台进程)吗?如果不是,请与

ps aux | grep vnstatd

您应该在那里看到它。

对我来说,升级到14.04之后,vnstatd在启动时一直崩溃。

我的解决方案是删除用于存储其数据(/var/lib/vnstat)的文件夹,然后创建一个新的空目录。之后,您可能需要vnstatd手动运行一次以创建数据库:

vnstatd -n -s

除此之外,我还需要申请

sudo chown -R vnstat:vnstat /var/lib/vnstat

如HostOnNet所建议。


2

同样的问题在这里。

在检查了详细信息之后,事实证明已在eth0, ppp0, wlan0其中创建了不同设备(等)的数据库,/var/lib/vnstat但是这些文件由USER拥有。之后 sudo chown -R vnstat:vnstat /var/lib/vnstat 似乎还可以。我还必须检查默认接口/etc/vnstat.conf-对我来说这是错误的接口,所以我只更改了它。


我要补充一点,我让“ vnstat -u -i wlan0”(与其他设备相同)作为ROOT运行。这也可能导致权限问题。还有一件事:您必须检查您使用的是systemd,init还是upstart,然后根据此启动守护程序。
布拉德利,2016年

1

抱歉,我不得不自己回答,而不是编辑Boby,因为我的编辑被拒绝了:|

默认情况下,安装vnstat时,它将自动启动vnstatd守护程序,该守护程序每30秒收集一次指标,并每5分钟“更新”(对于所有本地设备)。因此,实质上,在安装vnstat数据包后,您应该在5分钟后开始查看指标。

但是,有时似乎与安装软件包有关。它有时似乎产生了这样的/ var / lib中/ vnstat目录,它是不是由用户写入vnstat这样vnstat程序,只有当作为根(守护进程运行的用户vnstat)运行工作。

您可以通过运行以下命令检查这是否是您的问题:

ll /var/lib | grep vnstat
drwxr-xr-x 2 root        root        4096 Oct 25  2014 vnstat

如果它是由根拥有的(如本例所示),则可能是您的问题。您也可以在/ var / log / syslog文件中查找原因,它可能包含以下行:

Jul 27 22:06:19 xxx vnstatd[13276]: Error: Unable to open database "/var/lib/vnstat/eth0" for writing: Permission denied

 sudo chown -R vnstat:vnstat /var/lib/vnstat

这解决了我在Ubuntu 15.10上的问题。

确保在该文件夹中有以下文件并具有适当的所有权,完成后应如下所示:

/var/lib/vnstat$ ls -la
total 16
drwxr-xrwx  2 vnstat vnstat 4096 May 16 01:50 .
drwxr-xr-x 78 root   root   4096 Jul 22 15:14 ..
-rw-r--rwx  1 vnstat vnstat 2792 Jul 26 00:26 eth0
-rw-rw-r--  1 vnstat vnstat 2792 Jul 26 00:26 .eth0

如果vnstat守护程序sudo /etc/init.d/vnstat restart由于其最初的启动失败而死亡,则可能需要重新启动它。您应该在修复后的5分钟内开始获取所有设备的数据。


0

尝试从此帮助中输出一些信息:

$ vnstat --help
 vnStat 1.11 by Teemu Toivola 

         -q,  --query          query database
         -h,  --hours          show hours
         -d,  --days           show days
         -m,  --months         show months
         -w,  --weeks          show weeks
         -t,  --top10          show top10
         -s,  --short          use short output
         -u,  --update         update database
         -i,  --iface          select interface (default: eth0)
         -?,  --help           short help
         -v,  --version        show version
         -tr, --traffic        calculate traffic
         -ru, --rateunit       swap configured rate unit
         -l,  --live           show transfer rate in real time

See also "--longhelp" for complete options list and "man vnstat".

阅读更多

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.