Установил, настроил (спасибо форуму) vnstat на подсчёт pppoe соединения.
Для домочадцев решил прикрутить vnStat PHP frontend.
Установил php-thttpd, подправил и подложил скрипты от vnStat PHP frontend.
Имею: страничка открывается статистика отображается, но картинка, которая должна динамически генерироваться (для пущей наглядности) отсутствует.
Вопрос: Если кто-то имел дело подскажите чего не хватает для нормального отображения?
Список всего что имею на борту:
Code:[root@GATEWAY root]$ ipkg list_installed bzip2 - 1.0.4-2 - cron - 4.1-7 - Standard vixie cron, with cron.d addition cyrus-sasl-libs - 2.1.22-2 - Provides client or server side authentication (see RFC 2222). e2fsprogs - 1.40.2-4 - gdbm - 1.8.3-2 - GNU dbm is a set of database routines that use extensible hashing. It works similar to the standard UNIX dbm routines. ggrab - 0.22a-2 - Grabbing and streaming of mpeg2 streams to/from. Good with dreambox. glib - 2.9.6-1 - gzip - 1.2.4a-3 - GNU Zip data compression program ipkg-opt - 0.99.163-9 - The Itsy Package Manager libdb - 4.2.52-3 - Berkeley DB Libraries libuclibc++ - 0.2.2-4 - libxml2 - 2.6.31-1 - Libxml2 is the XML C parser and toolkit developed for the Gnome project. libxslt - 1.1.22-1 - An XML Stylesheet processor based on libxml2 mc - 4.6.1-3 - Midnight Commander File Manager minicom - 2.2-1 - ncurses - 5.6-3 - NCurses libraries openldap-libs - 2.3.38-1 - Open Lightweight Directory Access Protocol openssl - 0.9.7m-3 - pcre - 7.6-2 - Perl-compatible regular expression library php - 5.2.5-1 - The php scripting language php-thttpd - 2.25b-5.2.5-1 - php-thttpd is thttpd webserver with php support screen - 4.0.3-2 - A screen manager that supports multiple logins on single terminal slang - 2.1.2-1 - tar - 1.18-3 - termcap - 1.3.1-2 - Terminal emulation library uclibc-opt - 0.9.28-12 - vnstat - 1.6-1 - Network traffic monitor with log wget-ssl - 1.10.2-4 - zlib - 1.2.3-2 - zlib is a library implementing the 'deflate' compression system. Successfully terminated.
Спасибо.
Начитался что скрипт пользует библиотеку gd, и ставил gd*, а сообразить на php-gd* ума нехватило.
Ещё раз благодарю за помощь.
Просили инструкцию по установке и настройке vnstat. Типа вот.
1. Подразумевается, что роутер настроен, установлен сервер lighttpd (подробности -в моей "настройке с нуля".
2. Устанавливаем:
3. Настраиваем:Code:ipkg install vnstat
Должны быть следующие строки:Code:nano /opt/etc/vnstat.conf
4. Создаем базы:Code:# location of the database directory DatabaseDir "/opt/var/lib/vnstat"
4.1. Определяемся с интерфейсами:
a. Для обладателей прямого коннекта:
b. Для обладателей дополнительного подключения по VPN добавляем:Code:vnstat -u -i vlan1 vnstat -u -i br0
5. Качаем отсюда веб морду v. 1.4 (на данный момент последняя):Code:vnstat -u -i ppp0
6. Настраиваем:Code:wget http://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.4.tar.gz tar zvxf ./vnstat_php_frontend-1.4.tar.gz mkdir /opt/share/www/vnstat mw ./vnstat_php_frontend-1.4/* /opt/share/www/vnstat/*
6.1. Делаем, чтобы было так:Code:nano /opt/share/www/vnstat/config.php
7. Создаем скрипт создания дампов:Code:// list of network interfaces monitored by vnStat $iface_list = array('ppp0', 'vlan1', 'br0'); // Если нет VPN, убираем 'ppp0', // // optional names for interfaces // if there's no name set for an interface then the interface identifier // will be displayed instead // $iface_title['vlan1'] = 'WAN'; $iface_title['br0'] = 'internal'; // Если нет VPN, то нижняя строчка не нужна. $iface_title['ppp0'] = 'Internet'; // // There are two possible sources for vnstat data. If the $vnstat_bin // variable is set then vnstat is called directly from the PHP script // to get the interface data. // // The other option is to periodically dump the vnstat interface data to // a file (e.g. by a cronjob). In that case the $vnstat_bin variable // must be cleared and set $data_dir to the location where the dumps // are stored. Dumps must be named 'vnstat_dump_$iface'. // // You can generate vnstat dumps with the command: // vnstat --dumpdb -i $iface > /path/to/data_dir/vnstat_dump_$iface // $vnstat_bin = '/opt/bin/vnstat'; $data_dir = '/opt/var/lib/vnstat/dumps';
7.1. Заполняем:Code:nano /opt/etc/cron.5mins/vnstat.sh
7.2. Делаем исполняемым:Code:#!/bin/sh dump_dir="/opt/var/lib/vnstat/dumps" vnstat --dumpdb -i br0 > $dump_dir/vnstat_dump_br0 vnstat --dumpdb -i vlan1 > $dump_dir/vnstat_dump_vlan1 # Если есть VPN, добавляем третий интерфейс vnstat --dumpdb -i ppp0 > $dump_dir/vnstat_dump_ppp0
8. Устанавливаем пакет, чтобы графики рисовало:Code:chmod +x /opt/etc/cron.5mins/vnstat.sh
9. Заходим на свой сайт по адресу:Code:ipkg install php-gd
http://IP_adress/vnstat
И наблюдаем красивые циферки и графики.
Last edited by vectorm; 29-09-2008 at 07:35.
Было: WL500gP (fw 1.9.2.7-10-USB-1.71) + Toshiba TravelStar 250Gb 2.5" inside router.
(ADOS + rTorrent WebUI+rtorrent + samba + rrdtool + XMail + QuiXplorer + ClamAV)
> Мои инструкции < Для новичков и ленивых > Wiki переехало сюда < "Ночные" сборки >
vectorm
У меня в таком виде vnstat не заработал.
Причина оказалась в стандартных для vnstat настройках cron.
При установке ipkg install vnstat в директорию /opt/etc/cron.d/ пишется файл vnstat с ежепятиминутной командой /opt/bin/vnstat -u
При ее выполнении vnstat находит директорию /opt/var/lib/vnstat/dumps, почему-то думает, что это его база, не может ее прочитать и стопорится.
Поэтому файл /opt/etc/cron.d/vnstat я убил, а /opt/etc/cron.5mins/vnstat.sh сделал следующим:
N.B. eth1 - это WLAN интерфейс, мне такой набор просто удобнее.PHP Code:
#!/bin/sh
dump_dir="/opt/var/lib/vnstat/dumps"
vnstat -u -i ppp0
vnstat -u -i vlan1
vnstat -u -i eth1
vnstat --dumpdb -i ppp0 > $dump_dir/vnstat_dump_ppp0
vnstat --dumpdb -i vlan1 > $dump_dir/vnstat_dump_vlan1
vnstat --dumpdb -i eth1 > $dump_dir/vnstat_dump_eth1
Еще, имхо, следует обратить внимание на workaround глюка 4Гиг:
http://wl500g.info/showpost.php?p=108736&postcount=7
Результат довольно мило смотрится:
Last edited by bbsc; 27-09-2008 at 07:25.
У некоторых еще вместь vlan1 работает через eth1.
Проблема глюка 4Gb, на сколько я в курсе, в последней версии решена, у меня за день больше выходит, все нормально показывает.
Еще заметил 1 фичу у некоторых: входишь в статистику, а там нули, нажал F5 и все данные восстановились.
Было: WL500gP (fw 1.9.2.7-10-USB-1.71) + Toshiba TravelStar 250Gb 2.5" inside router.
(ADOS + rTorrent WebUI+rtorrent + samba + rrdtool + XMail + QuiXplorer + ClamAV)
> Мои инструкции < Для новичков и ленивых > Wiki переехало сюда < "Ночные" сборки >
Было: WL500gP (fw 1.9.2.7-10-USB-1.71) + Toshiba TravelStar 250Gb 2.5" inside router.
(ADOS + rTorrent WebUI+rtorrent + samba + rrdtool + XMail + QuiXplorer + ClamAV)
> Мои инструкции < Для новичков и ленивых > Wiki переехало сюда < "Ночные" сборки >
vectorm, после разрыва-восстановления связи лишний трафик не добавляет?
Скрипты ppp0-ip-up, ppp0-ip-down используются?
З.Ы. Посмотрел графики по ссылке в подписи .
Вопрос: вчера с 20 до 00 не рвалось ли соединение раз пять? А то очень уж in-out похожи, подозрительно , особенно если еще на графики rrdtool взгялнуть....
Куда девался трафик с 20 до 22 часов? Судя по vnstat, за это время получено/отдано по 12 Гиг, а rrdtool говорит, что никто ничего не потреблял и не отдавал
Last edited by bbsc; 28-09-2008 at 06:45.
Скрипты не кастомизировал, пока нет нужды.
1. С 20-50 по 00-00 было 8 разрывов Это любимое время провайдера, каждый день такая ботва.
2. С 22 до 00 помимо 5 скачек rtorrent был включен uTorrent на компе, скачивал и раздавал по полной - в логе куча nvram commit - out of memory, но данные не круглые.
3. С 20 до 22 - х.з. В 20-50 был 1 разрыв, с 21 до 22 - 4 и с 22 до 00 было 4, но с 22 до 00 вроде совпадающие графики.
Мне, в принципе, все равно, трафик безлимитный. За месяц накачивается гигов 40-60, а раздается больше 400.
UPD: сегодня опять куча мнимого трафика. Прописал "костыли", завтра посмотрю результат.
Last edited by vectorm; 28-09-2008 at 20:08.
Было: WL500gP (fw 1.9.2.7-10-USB-1.71) + Toshiba TravelStar 250Gb 2.5" inside router.
(ADOS + rTorrent WebUI+rtorrent + samba + rrdtool + XMail + QuiXplorer + ClamAV)
> Мои инструкции < Для новичков и ленивых > Wiki переехало сюда < "Ночные" сборки >
А можно поподробнее- что за проблема 4Г?
ЗЫ vectorm - спасибо за инструкцию (в nano /opt/etcvnstat.conf слеш сбежал , bbsc - спасибо за ключик -u =)
WL-500gPv2 (1.9.2.7-10) + Seagate 80G IDE (Jou Jye UB-102B2) + hp1022
lighttpd vhosts, auth + logrotate + rtorrent + ADOS + rTorrent WebUI + rrdtool + vsftpd + nodupdate +openvpn
asp, проблема заключается в том, что при обрыве и последующем восстановлении соединения ppp0 (PPTP, PPPoE) vnstat добавляет лишний трафик в статистику. Вроде бы как по 4 Гига.
В моем посте выше "выброс" в период 13-00 - 14-00 это и есть лишний трафик, соединение рвалось в 13-49. Почему-то меньше, чем 4 Гига.
Кроме того, есть проблема 1970-го года, который устанавливается по умолчанию при ребуте роутера и стоИт до обновления времени с сервера.
С эффектом борются с помощью скриптов /tmp/local/sbin/ppp0-ip-up и /tmp/local/sbin/ppp0-ip-down
З.Ы. Ключик -u там был и до меня
Last edited by bbsc; 29-09-2008 at 06:22.
А, т.е. мне это не грозит из-за отсутствия ppp.
А с временем - это да. Правда после настройки его уже ребутать особо не приходится, да и упса тоже помогает )
WL-500gPv2 (1.9.2.7-10) + Seagate 80G IDE (Jou Jye UB-102B2) + hp1022
lighttpd vhosts, auth + logrotate + rtorrent + ADOS + rTorrent WebUI + rrdtool + vsftpd + nodupdate +openvpn
У меня cron запускает скрипт для создания дампов, но дампы эти нулевого размера. Если руками запускать скрипт создания дампа, то все ок.
Куда рыть?
Решил свою проблему. Оказывается, что в crontab в переменную PATH надо было добавить путь к vnstat-у:/opt/bin.
Любопытно то, что про это ни в одном описании не сказано. Ну да ладно...
Теперь проблема номер 2:
Не рисуются графики на веб-морде. Php-gd установлен.
Установлено:
Code:adduser - 1.10.3-1 - a multi-call binary for login and user account administration apache - 2.2.9-1 - The most popular web server on the internet apr - 1.3.2-1 - Apache Portable Runtime library apr-util - 1.3.2-1 - Apache Portable Runtime utilities library bzip2 - 1.0.5-1 - Very high-quality data compression program cron - 4.1-7 - Standard vixie cron, with cron.d addition cyrus-sasl-libs - 2.1.22-2 - Provides client or server side authentication (see RFC 2222). diffutils - 2.8.1-6 - contains gnu diff, cmp, sdiff and diff3 to display differences between and among text files e2fslibs - 1.41.2-1 - Ext2 Filesystem Libraries e2fsprogs - 1.41.2-1 - Ext2 Filesystem Utilities expat - 2.0.1-1 - XML Parser library findutils - 4.2.32-1 - File finding utilities fontconfig - 2.5.0-0 - Font configuration library freetype - 2.3.6-1 - Free truetype library gconv-modules - 2.2.5-7 - Provides gconv modules missing from the firmware. These are used by glibc iconv() implementation. gdbm - 1.8.3-2 - GNU dbm is a set of database routines that use extensible hashing. It works similar to the standard UNIX dbm routines. glib - 2.12.13-1 - The GLib library of C routines. hdparm - 8.9-1 - Linux hard drive parameter utility ipkg-opt - 0.99.163-10 - The Itsy Package Manager less - 418-1 - Less file browser libdb - 4.2.52-3 - Berkeley DB Libraries libgd - 2.0.35-2 - An ANSI C library for the dynamic creation of images libjpeg - 6b-2 - collection of jpeg tools libpng - 1.2.32-1 - Portable Network Graphics Libraries libuclibc++ - 0.2.2-8 - C++ standard library designed for use in embedded systems libxml2 - 2.7.1-1 - Libxml2 is the XML C parser and toolkit developed for the Gnome project. lighttpd - 1.4.19-5 - A fast webserver with minimal memory footprint. mc - 4.6.1-3 - Midnight Commander File Manager nano - 2.1.5-1 - A pico like editor ncurses - 5.6-3 - NCurses libraries ncursesw - 5.6-2 - NCurses libraries with wide char support. openldap-libs - 2.3.43-1 - Open Lightweight Directory Access Protocol openssl - 0.9.7m-4 - Openssl provides the ssl implementation in libraries libcrypto and libssl, and is needed by many other applications and librari pcre - 7.8-1 - Perl-compatible regular expression library php - 5.2.6-2 - The php scripting language php-fcgi - 5.2.6-1 - The php scripting language, built as an fcgi module php-gd - 5.2.6-2 - libgd extension for php slang - 2.1.4-1 - S-Lang is a multi-platform library designed to allow a developer to create robust multi-platform software. uclibc-opt - 0.9.28-13 - micro C library for embedded Linux systems unrar - 3.7.8-1 - unrar is an application that can decompress files and archives created using the RAR compression scheme unzip - 5.52-3 - A (de)compression library for the ZIP format vnstat - 1.6-2 - Network traffic monitor with log wget - 1.11.4-1 - A network utility to retrieve files from the Web whois - 4.7.24-1 - Perform whois lookups to identify site owners zlib - 1.2.3-3 - zlib is a library implementing the 'deflate' compression system. Successfully terminated.
Last edited by Rucha; 10-10-2008 at 12:53.