Consommation Bande passante
Vnstat est un utilitaire Linux qui permet d'analyser la consommation de la bande passante d'une ou plusieurs interfaces réseaux. L'utilisation de cet outil peut être également couplé à Vnstat PHP Frontend, une interface écrite en php, qui permet de visualiser des graphiques de consommation.

Vnstat Frontend

1. Installation et utilisation de vnstat

Ouvrez un terminal en root et lancez la commande suivante pour une distribution à base de rpm :

yum install vnstat

Ou celle-ci pour une distribution à base de debian :

sudo apt-get install vnstat

Pour fonctionner, vnstat à besoin de connaître quelle interface réseau vous souhaitez monitorer. La première étape consistera donc à ajouter une interface à la base de données, grâce à la commande suivante :

vnstat -u -i eth0

Ou celle-ci si vous êtes dans les sudoers :

sudo vnstat -u -i eth0

Après quelques minutes, des statistiques de consommation de la bande passante devraient apparaitre. Vous pourrez vérifier en utilisant simplement la commande vnstat dans un shell sans aucun argument.

Vnstat

2. Installation de Vnstat PHP Frontend

Vnstat PHP Frontend est une interface graphique en php qui permet d'analyser et de monitorer les données de Vnstat. Pour la faire fonctionner, vous devrez au préalable installer Apache et php sur la machine.

Récupérez ensuite les sources depuis le site officiel et lancez les commandes suivantes dans un terminal en root :

cd /var/www/html
tar zxvf vnstat_php_frontend-*.tar.gz
rm -f vnstat_php_frontend-*.tar.gz
ln -s vnstat_php_frontend-* vnstat
mkdir /var/www/html/vnstat/dumps

Une fois installée, on modifiera la configuration (fichier vnstat/config.php) pour indiquer à Vnstats PHP Frontend les cartes réseaux que l'on souhaite surveiller :

$iface_list = array('eth0');
$iface_title['eth0'] = 'Internal';

On notera au passage la présence de l'option :

$data_dir = './dumps';

Celle-ci indique le dossier où sont stockées les valeurs générées par vnstat. On pourra donc mettre en place la crontab suivante, qui s'exécutera toutes les 5 minutes pour venir alimenter le dossier de dumps.

*/5 * * * * vnstat --dumpdb -i eth0 > /var/www/html/vnstat/dumps/vnstat_dump_eth0

L'interface PHP de vnstat sera ensuite capable de générer des graphiques que l'on pourra visionner en ouvrant un navigateur à l'adresse : http://localhost/vnstat


5 Commentaires pour "Consommation graphique de la bande passante sous Linux"

Flux des commentaires de cet article Ajouter un commentaire
  •  

    Bonjour, J'ai essayé de suivre ce billet-tutoriel, mais j'ai un souci avec la crontab.
    L'installation de vnstat et phpFrontEnd s'est passée correctement, mon LAMP fonctionne aussi, mais je n'arrive pas à faire fonctionner la crontab.
    En root, lorsque je tape celle de l'exemple dans le terminal, j'obtiens ce message d'erreur : bash: */5: Aucun fichier ou dossier de ce type
    J'ai essayé de l'ajouter dans l'éditeur (crontab -e) et via gnome-schedule, mais aucune statistique n'apparait dans phpFrontEnd (no data available).
    Pour info j'ai mailutils d'installé.
    Je n'ai jamais utilisé de crontab avant, j'ai regardé le manuel mais je ne sais pas quoi faire... Quelqu'un aurait une idée du problème ?

    Au passage j'ai une autre question : pourquoi dans la crontab faut-il entrer ce chemin : /var/www/html/vnstat/dumps/vnstat_dump_eth0 alors que le fichier ce situe dans /var/www/html/vnstat/dump/vnstat _dump_eth0 ?

    Ninux , le 15 avril 2009 à 08:24
  •  

    @Ninux : la première chose que je vois c'est que tu confond crontab et commande bash. La syntaxe d'une crontab est la suivante :

    mm hh jj MMM JJJ tâche

    Et elle s'ajoute avec la commande crontab -e. Dans l'article, */5 * * * * signifie que la commande sera valable tous les jours (symbole *), tous les mois et tous les ans. Elle sera exécuté précisément toutes les 5 minutes.

    C'est donc normal si tu obtiens une erreur avec un copier-collé dans un terminal. En faite, pour tester la crontab, il faudrait que tu ne recopie que la partie "tâche".

    Donc dans un premier temps, je lancerais cette commande dans un shell (en adaptant ton interface réseau si ce n'est pas eth0) :
    vnstat --dumpdb -i eth0 > /var/www/html/vnstat/dumps/vnstat_dump_eth0

    Et je vérifirais que les données arrivent dans le dossier /var/www/html/vnstat/dumps/.

    Sinon, pour la dernière question tu mentionne deux chemins différents. J'ai l'impression que tu a une erreur de config quelque part, le vrai dossier est dumps avec un s, vérifie bien que celui-ci existe et qu'il est bien indiqué dans le fichier config.php.

    pti-seb , le 15 avril 2009 à 16:20
  •  

    Merci pour l'info sur crontab, comme dis je n'avais jamais utilisé et ne savais pas si je devais la taper dans le shell ou l'éditeur. J'avais bien saisi l'utilisation et le rôle de chaque paramètre, mais vu que le répertoire n'était pas bon, elle ne pouvait pas fonctionner.

    Le problème venait bien du répertoires /dumps qui n'existait pas car selon la version originale de ton article au point 2 on voit bien "mkdir /var/www/html/vnstat/dump" et c'est ce qui me faisait bloquer. J'ai donc renommé mon /dump et maintenant tout fonctionne.

    Merci pour l'aide.

    Ninux , le 15 avril 2009 à 16:49
  •  

    @Ninux : oui, je me suis aperçu de l'erreur au niveau de mkdir un peu après, j'ai donc corrigé.

    pti-seb , le 15 avril 2009 à 17:03
  •  

    Hello,

    J'ai suivis le tutorial à la lettre, pas d'erreur. Mais rien ne se passe, mes graphiques ne sont pas mis à jour ? Il s'est remplis une première fois. Puis ... plus rien. Les chemins de mes répertoires sont bon pourtant, je ne vois pas d'où sa peut venir ..

    Merci d'avance

    VinSe , le 21 décembre 2011 à 18:43

actualité android apache apple astuce astuces bash bilboblog blog boot chrome clavier commande commandes conky date debian Desktop développement elementary exploit faille fedora firefox flash gimp gnome google graphique Graphisme hack hacking Hardware humour intel internet iphone jailbreak Jeux Kde kernel libre Linux log logiciels Logiciels Libres lucid lynx maemo mail maquette metasploit microsoft mobile mockup monitoring mozilla multi-touch musique mysql n900 nautilus nokia noyau openoffice open source password photos php Planet publicité redhat red hat rpm réseau screenshot script serveur serveurs shell sql ssh statistiques sysadmin system Sécurité thème tux-planet tv twitter ubuntu unity vidéo vidéos vlc voyage wallpaper windows wordpress yum