Bmon Stands 是带宽监控工具的开源工具。 bmon是一个强大的基于 CLI 的网络带宽监控和调试工具,适用于 Unix / Linux 系统,用于捕获网络相关的统计信息,并以人性化的方式在命令行上直观地呈现它们。它捕获系统上所有网络接口的流量使用情况。它是一种有效且快速的实时网络带宽监控器和速率估算器。
它具有各种输出方法,例如:
- HTML 输出
- ASCII 输出
- 图形可视化
- 交互式诅咒用户界面
- 用于脚本的可编程文本输出
在 Linux 中安装 bmon:
它可以从默认包管理器轻松安装,因为几乎所有 Linux 发行版在默认存储库中都有 bmon 包,但可用版本可能稍旧。
在 RHEL/CentOS/Fedora 上:
$ sudo yum install bmon
在 Fedora 22+ 上:
$ sudo dnf install bmon
在 Debian/Ubuntu/Mint 上:
$ sudo apt-get install bmon
在 openSUSE 系统上:
$ sudo zypper in bmon
在基于 Arch Linux 的系统上:
$ pacman -S bmon
对于最新版本的 bmon(即 4.0 版),您必须针对不同的 Linux 发行版使用以下命令从其源代码构建它:
对于基于 Debian 的系统:
$ git clone https://github.com/tgraf/bmon.git
$ cd bmon
$ sudo apt-get install build-essential make libconfuse-dev libnl-3-dev libnl-route-3-dev libncurses-dev pkg-config dh-autoreconf
$ sudo ./autogen.sh
$ sudo ./configure
$ sudo make
$ sudo make install
$ bmon
对于 CentOS 6,基于 RHEL 的系统:
$ git clone https://github.com/tgraf/bmon.git
$ cd bmon
$ sudo yum install make libconfuse-devel libnl3-devel libnl-route3-devel ncurses-devel
$ sudo ./autogen.sh
$ sudo./configure
$ sudo make
$ sudo make install
$ bmon
对于 OSX 安装:
$ brew install bmon
通过以下命令提供完整帮助:
$ bmon --help
带宽监视器 (BMON):入门
运行 bmon 以捕获实时带宽使用情况
通过上述针对不同发行版的命令的帮助成功完成 bmon 安装后,只需键入以下命令即可运行 bmon 工具:
$ bmon
要查看 bmon 的快速参考,请按 [Shift + ?] :
bmon 默认只显示接口信息。要加载图形,请输入g, i , 或d (取决于发行版)用于详细的信息图形可视化。
设置具体界面显示:
为了监控 enp1s0 网络接口,我们将使用标志-p来设置策略,定义显示哪些网络接口,如下所示:
$ bmon -p enp1s0
要以每秒位数而不是每秒字节数查看结果,请使用-b标志,如下所示:
$ bmon -bp enp1s0
要定义每秒间隔,请使用-r标志,如下所示:
$ bmon -r 2 -p enp1s0
使用 bmon 输入模块:
- Netlink使用 Netlink 协议从内核收集接口和流量控制统计信息。
- 默认情况下,netlink 是输入模块。
- 将 netlink 显式设置为输入模块:
$ bmon -i netlink
- proc用于从 /proc/net/dev 文件中读取接口统计信息。
- 它被认为是一个遗留接口
- 它提供向后兼容,也作为后备模块,以防Netlink接口不可用。
- 将 proc 显式设置为输入模块:
$ bmon -i proc
- dummy是用于调试和测试目的的可编程输入模块。
- 显式设置 dummy 为输入模块:
$ bmon -i dummy
- Null用于禁用数据收集。
$ bmon -i null
- 要获取有关特定模块的更多信息,请使用“帮助”标志和输入模式,如下所示:
$ bmon -i dummy:help
使用 bmon 输出模块:
- 诅咒是一个交互式的基于诅咒的文本用户界面,
- 它提供实时速率估计
- 要获得每个属性的图形表示,使用curses 输出模式。
- 默认情况下,curses 是输出模式。
- 要获得curses的输出:
$ bmon -o curses
- ascii是一个简单的、人类可读的和可编程的文本输出。
- 可用于向控制台显示接口列表、详细计数器和图形。
- 默认情况下,当curses不可用时,它是回退输出模式。
- 要以ascii 格式获取输出:
$ bmon -o ascii
- 该格式是一种完全可编写脚本的输出模式。
- 供其他程序使用,即我们可以稍后在脚本/程序中使用其输出值进行分析和其他内容。
- 要以格式模式获取输出:
$ bmon -o format
- 要使用图形获得交互式诅咒输出:
$ bmon -o curses:ngraph=2
- 要获取有关特定模块的更多信息,请使用“帮助”标志,输出模式如下:
$ bmon -o ascii:help
- 要获得帮助或阅读有关 bmon 的更多信息,请使用手册页或“帮助”标志:
$ bmon --help
或者
$ man bmon