-
nicstat, czyli proste statystyki interfejsów w systemie CentOS i nie tylko
Jakiś czas temu opisywałem vnstat, który jest bardzo użytecznym narzędziem służącym do monitorowania łącza / ruchu sieciowego. Dzisiaj czas na coś nieco prostszego. Mam tu na myśli „nicstat”, które nazwę można by rozwinąć do „network cards interfaces stats”. Wspomniane narzędzie nie jest integralną częścią systemu. Mamy dwa wyjścia. Możemy pobrać je z naszego serwera http://download.centos.com.pl/app/nicstat/, gdzie znajdują się paczki rpm dla systemów 32 i 64 bitowych oraz źródła. RPM-y nie były przez nas budowane. Z tego co zauważyłem, bez żadnych problemów instalują się na szóstej wersji CentOS-a. Na piątej mogą wystąpić problemy z zależnościami.
[edit 11 luty 2013]Dodane zostały paczki przekompilowane przez nas, które powinny się bez problemu instalować na CentOS-ie 5 i 6.
[edit 11 luty 2013]
Inną metodą pozyskania nicstat-a jest strona http://sourceforge.net/projects/nicstat/files/. Pobieramy odpowiedni plik i instalujemy:
wget http://downloads.sourceforge.net/project/nicstat/nicstat-src-1.92.tar.gz
tar xvsf nicstat-src-1.92.tar.gz
root@yum ~ $ tar xvsf nicstat-src-1.92.tar.gz
nicstat-src-1.92/
nicstat-src-1.92/nicstat.c
nicstat-src-1.92/enicstat
nicstat-src-1.92/nicstat.sh
nicstat-src-1.92/nicstat.1
nicstat-src-1.92/README.txt
nicstat-src-1.92/LICENSE.txt
nicstat-src-1.92/ChangeLog.txt
nicstat-src-1.92/Makefile.Solaris
nicstat-src-1.92/Makefile.Linux
nicstat-src-1.92/dladm.shcd nicstat-src-1.92
mv Makefile.Linux Makefile
make
[root@yum nicstat-src-1.92]# make
gcc -O3 -m32 nicstat.c -o nicstat
nicstat.c:99:1: warning: "DUPLEX_UNKNOWN" redefined
In file included from nicstat.c:84:
/usr/include/linux/ethtool.h:519:1: warning: this is the location of the previous definition
mv nicstat `./nicstat.sh --bin-name`
Jeśli wyświetlił się nam komunikat zbliżony do powyższego, oznacza to, że nicstat został skompilowany. Teraz czas na instalację.make install
[root@yum nicstat-src-1.92]# make install
gcc -O3 -m32 nicstat.c -o nicstat
nicstat.c:99:1: warning: "DUPLEX_UNKNOWN" redefined
In file included from nicstat.c:84:
/usr/include/linux/ethtool.h:519:1: warning: this is the location of the previous definition
sudo install -o root -g root -m 4511 `./nicstat.sh --bin-name` /usr/local/bin/nicstat
sudo install -o bin -g bin -m 555 enicstat /usr/local/bin
sudo install -o bin -g bin -m 444 nicstat.1 /usr/local/share/man/man1/nicstat.1
Wygląda na to, że zainstalowane 🙂 Czas na uruchomienie.
[root@yum ~]# nicstat
Time Int rKB/s wKB/s rPk/s wPk/s rAvs wAvs %Util Sat
21:27:47 lo 0.28 0.28 1.39 1.39 206.6 206.6 0.00 0.00
21:27:47 eth0 0.98 1.02 6.96 6.27 143.9 165.8 0.00 0.00
21:27:47 tun1 0.00 0.01 0.02 0.02 77.21 496.5 0.00 0.00
21:27:47 ppp1 0.00 0.00 0.00 0.00 9.25 9.14 0.00 0.00
Time- aktualna godzina
Int- interfejs
rKB/s- prędkość odbierania danych
wKB/s- prędkość wysyłania danych
rPk/s- ilość pakietów (segmentów/datagramów) odebranych na sekundę
wPk/s- ilość pakietów (segmentów/datagramów) wysłanych na sekundę
rAvs- średnia wielkość pakietu odebranego
wAvs- średnia wielkość pakietu wysłanego
Najbardziej przydatnymi parametrami jest „-M”- przełącza jednostki na Mb/s; „liczba” oznaczająca czas odświeżania wyświetlania danych; „-i nazwa_interfejsu”- zawężenie źródła danych do konkretnego interfejsu. Więcej opcji uruchomieniowych znajdziecie w manualu nicstat-a.man nicstat
Powodzenia 🙂