コンソールベースのネットワークトラフィックモニター vnstat を試してみた。詳しい解説は、このブログにある。
さっそく、インストールしてみた。
$ sudo portinstall vnstat
/usr/local/sbin/portinstall:880:in `get_notinstalled_depends’: undefined method `each’ for nil:NilClass (NoMethodError)
from /usr/local/sbin/portinstall:768:in `main’
from /usr/local/sbin/portinstall:746:in `each’
from /usr/local/sbin/portinstall:746:in `main’
from /usr/local/lib/ruby/1.8/optparse.rb:1303:in `call’
from /usr/local/lib/ruby/1.8/optparse.rb:1303:in `parse_in_order’
from /usr/local/lib/ruby/1.8/optparse.rb:1299:in `catch’
from /usr/local/lib/ruby/1.8/optparse.rb:1299:in `parse_in_order’
from /usr/local/lib/ruby/1.8/optparse.rb:1247:in `catch’
from /usr/local/lib/ruby/1.8/optparse.rb:1247:in `parse_in_order’
from /usr/local/lib/ruby/1.8/optparse.rb:1241:in `order!’
from /usr/local/lib/ruby/1.8/optparse.rb:1234:in `order’
from /usr/local/sbin/portinstall:565:in `main’
from /usr/local/lib/ruby/1.8/optparse.rb:785:in `initialize’
from /usr/local/sbin/portinstall:229:in `new’
from /usr/local/sbin/portinstall:229:in `main’
from /usr/local/sbin/portinstall:2170
エラーがでてしまった。
vnstat が ports にあるかどうか調べてみる。
$ whereis vnstat
vnstat:
あれ?ない。でも、ports にはちゃんと存在している。
$ ls /usr/ports/net/vnstat
ls: /usr/ports/net/vnstat: No such file or directory
うーむ、なんで家のサーバには入っていないのだろうか。
おかしいと思って、portsnap してみたら、入った!
$ sudo portsnap update
portsnap を cron に設定している場合は、手動で update する必要があるのか・・・。
気を取り直して、もう一度インストール。
$ sudo portinstall vnstat
…
===> Registering installation for vnstat-1.6_2
===> Cleaning for vnstat-1.6_2
[Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 179 packages found (-0 +1) . done]
無事インストール完了!
vnstat を cron に設定して、統計を取るコマンドを実行してみた。5分おきだと早すぎるので、1日おきにしてみた。
$ sudo vnstat -i bge0 -m
bge0 / monthly
month rx | tx | total
————————-+————–+————————————–
Feb ’08 0 kB | 1 kB | 1 kB ::::::::::::::::::::::
————————-+————–+————————————–
estimated – | – | –
なるほど、これは面白いツールだ。









