vnstat ne se met pas à jour


18

J'ai installé vnstat sur mon serveur Ubuntu 14.04 pour suivre mon utilisation d'Internet (j'ai un transfert mensuel limité). Cependant, la base de données n'est jamais mise à jour. J'ai essayé de désinstaller / réinstaller, mais cela ne fonctionne pas. Que dois-je faire pour que vnstat se mette à jour et soit précis?

Réponses:


14

Courir

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

Cela a résolu mon problème sur Ubuntu 14.04.

Assurez-vous d'avoir les fichiers suivants dans ce dossier et d'avoir la propriété appropriée.

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 est un fichier temporaire, qui peut parfois disparaître.


J'ai le même problème, mais sur Manjaro Archlinux. sudo chown -R vnstat:vnstat /var/lib/vnstatsorties chown: invalid user: ‘vnstat:vnstat’. I have only vnstat.db` dans /var/lib/vnstat: -rw-r--r-- 1 root root 68K Oct 23 13:07 vnstat.db. Je suppose que je dois ajouter wlp2s0b1ce dossier, bien que je ne sache pas ce qui devrait être dans le fichier. J'ai déposé un problème distinct à ce sujet sur github.com/vergoh/vnstat/issues/143 . Les instructions ci-dessus peuvent ne plus être applicables, car cela a été répondu il y a 5 ans.
James Ray

9

Après l'installation, vnstatla base de données doit être créée (une fois). Pour créer la base de données, vous pouvez utiliser le commutateur de mise à jour, qui crée une nouvelle base de données dans la base d'aucune base de données. Créer une base de données: sudo vnstat -i eth0 -uoù eth0 est le nom de l'interface réseau. Si vous n'êtes pas sûr de mettre à jour toutes les interfaces par sudo vnstat -u. Après un certain temps (1 minute), vous pouvez afficher les détails vnstat -i eth0ou simplement vnstat.

Mise à jour

Il vnstatne semble pas fonctionner! . Démarrez le démon en exécutant sudo /etc/init.d/vnstat startet vérifiez le résultat après 5 minutes.

Exemple

sudo vnstat -u -i eth0

Erreur: impossible de lire la base de données “/ var / lib / vnstat / eth0. Info: -> Une nouvelle base de données a été créée.

sudo /etc/init.d/vnstat start
  • Démarrage du démon vnStat vnstatd [OK]

Une fois la base de données initialisée, elle est prête à surveiller l'utilisation de la bande passante. Vous pouvez afficher le rapport en appelant la commande vnstat.


@Vaindil, avez-vous essayé cela?
totti

1
Oui, je l'ai fait après avoir installé vnstat. Faire vnstatmontre la sortie, mais cela montre que la base de données n'a pas été mise à jour depuis des semaines.
vaindil

Courir vnstat? Quelle est la sortie deps aux | grep vnstat
totti

steven 6475 0.0 0.1 11744 916 pts/0 S+ 13:35 0:00 grep --color=auto vnstat( vnstats'affiche en rouge dans le terminal, si cela importe ou aide)
vaindil

Lorsque j'essaie d'exécuter sudo /etc/init.d/vnstat start, j'obtiens ce qui suit: Starting vnStat daemon: vnstatd./ pidfile: No such file or directoryet puis il s'assoit comme s'il faisait quelque chose, mais il reste indéfiniment.
vaindil

2

Êtes-vous sûr qu'il vnstatdest en cours d'exécution, c'est-à-dire le démon (processus d'arrière-plan) qui effectue la collecte de données? Sinon, vérifiez avec

ps aux | grep vnstatd

Vous devriez le voir là-bas.

Pour moi, après la mise à niveau vers 14.04, je vnstatdn'arrêtais pas de planter au démarrage.

Ma solution était de supprimer le dossier qu'il utilise pour stocker ses données ( /var/lib/vnstat) et de créer un nouveau répertoire vide à la place. Vous devrez peut-être exécuter vnstatdmanuellement une fois pour créer la base de données après cela:

vnstatd -n -s

En dehors de cela, je devais également postuler

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

comme suggéré par HostOnNet.


2

Mêmes problèmes ici.

Après avoir vérifié les détails, il s'est avéré que les bases de données des différents appareils ( eth0, ppp0, wlan0, etc.) ont été créées /var/lib/vnstatmais que ces fichiers étaient la propriété de l'UTILISATEUR. Après sudo chown -R vnstat:vnstat /var/lib/vnstat ça semble aller. J'ai également dû vérifier l'interface par défaut /etc/vnstat.conf- c'était la mauvaise pour moi, alors je l'ai juste changée.


J'ai oublié d'ajouter que je laisse courir "vnstat -u -i wlan0" (et même pour les autres appareils) comme ROOT. Cela pourrait également entraîner des problèmes d'autorisation. Et encore une chose: vous devez vérifier si vous utilisez systemd, init ou upstart et démarrer le démon en conséquence.
bradley

1

Désolé, j'ai dû en faire sa propre réponse au lieu de modifier Boby car ma modification a été rejetée: |

Par défaut, lorsque vous installez vnstat, il démarre automatiquement un démon vnstatd, qui collecte des métriques toutes les 30 secondes et les "met à jour" (pour tous les périphériques locaux) toutes les 5 minutes. Donc, en substance, après avoir installé le paquet vnstat, vous devriez commencer à voir les mesures 5 minutes plus tard.

Semble toutefois parfois être un problème avec le package d'installation. Il semble parfois créer le répertoire / var / lib / vnstat de telle manière qu'il ne soit pas accessible en écriture par l'utilisateur vnstat, donc le programme vnstat ne fonctionne que lorsqu'il est exécuté en tant que root (le démon s'exécute en tant qu'utilisateur vnstat).

Vous pouvez vérifier si c'est votre problème en exécutant ceci:

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

S'il appartient à root (comme dans cet exemple), cela peut être votre problème. Vous pouvez également rechercher la cause dans votre fichier / var / log / syslog, il aura probablement des lignes comme celle-ci:

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

Courir

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

Cela a résolu mon problème sur Ubuntu 15.10.

Assurez-vous que vous avez les fichiers suivants dans ce dossier et que vous en avez la propriété appropriée, devrait ressembler à ceci lorsque vous avez terminé:

/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

Vous devrez peut-être redémarrer votre démon vnstat via sudo /etc/init.d/vnstat restarts'il est mort suite à l'échec de sa tentative de démarrage initiale. Vous devez commencer à obtenir des données pour tous les appareils dans les 5 minutes suivant la correction.


0

Essayez d'en sortir une partie de cette aide:

$ 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".

LIRE LA SUITE

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.