vnstat setup guide/tutorial

yum -y install vnstat
chown nobody.nobody -R /var/lib/vnstat/

#replace venet0 below with your desired interface
sudo -u nobody vnstat -u -i venet0

#edit: vi /etc/sysconfig/vnstat
#VNSTAT_OPTIONS="-i venet0"
# only use the sed below if you are using venet0 instead of eth0 or replace accordingly
sed -i 's/eth0/venet0/g' /etc/sysconfig/vnstat


 

[root@monitor]# yum install vnstat
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: centos.mirror.netelligent.ca
 * base: centos.mirror.netelligent.ca
 * centosplus: centos.mirror.iweb.ca
 * contrib: centos.mirror.netelligent.ca
 * extras: centos.mirror.netelligent.ca
 * rpmforge: apt.sw.be
 * updates: centos.mirror.netelligent.ca
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vnstat.i386 0:1.10-1.el5.rf set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================================================================================================
 Package                            Arch                             Version                                      Repository                            Size
=============================================================================================================================================================
Installing:
 vnstat                             i386                             1.10-1.el5.rf                                rpmforge                              65 k

Transaction Summary
=============================================================================================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 65 k
Is this ok [y/N]: y
Downloading Packages:
vnstat-1.10-1.el5.rf.i386.rpm                                                                                                         |  65 kB     00:00    
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : vnstat                                                                                                                                1/1

Installed:
  vnstat.i386 0:1.10-1.el5.rf                                                                                                                               

Complete!
[root@monitor]# vnstat
vnstat       vnstat.cron 
[root@monitor]# vnstat
No database found, nothing to do. Use --help for help.

A new database can be created with the following command:
    vnstat -u -i eth0

Replace 'eth0' with the interface that should be monitored.

The following interfaces are currently available:
    lo venet0
[root@monitor]# vnstat -u -i venet0
Error: Unable to read database "/var/lib/vnstat/venet0".
Info: -> A new database has been created.
[root@monitor]#



-----------
vnstat

                      rx      /      tx      /     total    /   estimated
 ppp0: Not enough data available yet.

Let's check the cron log:
cat /var/log/cron

OK so it is executing the vnstat.cron:
crond[10880]: (nobody) CMD (/usr/sbin/vnstat.cron)

Let's execute the cron script as nobody:
sudo -u nobody /usr/sbin/vnstat.cron
Error: Unable to write database "/var/lib/vnstat/eth0".

Let's check the permissions on that path:
# ls -al /var/lib/vnstat
total 20
drwxr-xr-x  2 nobody nobody 4096 Apr  5 10:40 .
drwxr-xr-x 24 root   root   4096 Apr  5 10:38 ..
-rw-r--r--  1 root   root   2272 Apr  5 10:38 eth0
-rw-r--r--  1 nobody nobody 2272 Apr  5 10:53 .eth0
-rw-r--r--  1 root   root   2272 Apr  5 10:38 venet0

Fix:
chown nobody.nobody -R /var/lib/vnstat/.*

sudo -u nobody /usr/sbin/vnstat.cron
[root@ vnstat]# vnstat

                      rx      /      tx      /     total    /   estimated
 eth0:
       Apr '11     19.70 MiB  /  424.90 MiB  /  444.60 MiB  /    2.91 GiB
         today     19.70 MiB  /  424.90 MiB  /  444.60 MiB  /     967 MiB

The problem is that whenever you add an interface with vnstat as root is that it creates it as root in /var/lib/vnstat
The other solution (not preferable I admit) is to edit the cron script to run as root:

change:
*/5 * * * * nobody /usr/sbin/vnstat.cron

to

*/5 * * * * /usr/sbin/vnstat.cron
 


Tags:

vnstat, tutorialyum, install, chown, var, lib, venet, desired, interface, sudo, edit, vi, etc, sysconfig, vnstat_options, quot, sed, eth, accordingly, yum, plugins, fastestmirror, loading, speeds, cached, hostfile, addons, centos, netelligent, ca, centosplus, iweb, contrib, extras, rpmforge, apt, sw, updates, resolving, dependencies, transaction, rf, updated, dependency, resolution, resolved, repository, installing, summary, upgrade, download, ok, downloading, packages, rpm, kb, rpm_check_debug, succeeded, installed, cron, database, monitored, interfaces, currently, unable, info, rx, tx, estimated, ppp, executing, crond, cmd, usr, sbin, execute, permissions, ls, drwxr, xr, apr, rw, mib, gib, creates, preferable,

Latest Articles

  • ssh Too many authentication failures not prompting for password
  • LightDM Mint Ubuntu Debian won't start errors Nvidia Graphics
  • WARNING: Unable to determine the path to install the libglvnd EGL vendor library config files. Check that you have pkg-config and the libglvnd development libraries installed, or specify a path with --glvnd-egl-config-path. Linux Ubuntu Mint Debian E
  • How To Upgrade Linux Mint 18.2 to 18.3 to 19.x and 20.x
  • MP3s Won't Play / ID3 Version 2.4 Issues in Cars and Other MP3 Players/CDs/DVDs Solution
  • LXC Containers LXD How to Install and Configure Tutorial Ubuntu Debian Mint
  • GlusterFS HowTo Tutorial For Distributed Storage in Docker, Kubernetes, LXC, KVM, Proxmox
  • Ubuntu Mint audio output not working pulseaudio "pulseaudio[13710]: [pulseaudio] sink-input.c: Failed to create sink input: too many inputs per sink."
  • How To Shrink Dynamically Allocated VM QEMU KVM VMware Disk Image File
  • How To Enable Linux Swapfile Instead of Partition Ubuntu Mint Debian Centos
  • 404 Not Found [IP: 151.101.194.132 80] apt update Debian 11 Bullseye Solution The repository 'http://security.debian.org bullseye/updates Release' does not have a Release file.
  • WARNING: Can't download daily.cvd from db.local.clamav.net freshclam clamav error solution
  • (firefox:9562): LIBDBUSMENU-GLIB-WARNING **: Unable to get session bus: Failed to execute child process "dbus-launch" (No such file or directory) Solution
  • Debian Mint Ubuntu Which Package Provides missing top, ps and w Solution
  • Vbox Virtualbox DNS NAT Network Mode NOT working
  • Docker Tutorial HowTo Install Docker, Use and Create Docker Container Images Clustering Swarm Mode Monitoring Service Hosting Provider
  • Zoom Password Error 'That passcode was incorrect' - Solution Wrong Passcode Wrong Meeting Name
  • How To Startup and Open Remote/Local Folder/Directory in Ubuntu Linux Mint automatically upon login
  • How To Reset Windows Server Password 2019, 2022, 7, 8, 10, 11 Recovery and Removal Guide Using Linux Ubuntu Mint Debian
  • How To Create OpenVPN Server for Secure Remote Corporate Access in Linux Debian/Mint/Ubuntu with client public key authentication