如何在 Linux 上查找 USB 设备带宽使用情况

前几天,我想检查在将文件从本地硬盘驱动器传输到外部驱动器时,我的外部 USB 驱动器使用了多少带宽。 在寻找一种简单的方法时,我遇到了一个名为的命令行实用程序 “优盘”. Usbtop 是一个类似于 top 的 CLI 实用程序,它可以帮助我们查找 Linux 上的 USB 设备带宽使用情况。 它 显示 USB 总线和设备上的估计瞬时带宽s。 使用此工具,我们可以轻松检查哪些设备正在使用多少带宽。

安装 Usbtop

Usbtop 可在 AUR,因此您可以使用任何 AUR 助手将其安装在 Arch linux 及其变体上,例如 example .

$ yay -S usbtop

在 Debian 上,它在默认存储库中可用。 运行以下命令来安装它:

$ sudo apt install usbtop

在 Ubuntu 及其衍生产品上,您需要从源代码编译和安装它,如下所示。

安装所需的依赖项:

$ sudo apt update
$ sudo apt install cmake git libboost-dev libpcap-dev libboost-thread-dev libboost-system-dev

本地系统上的 Git 克隆 Usbtop 存储库:

$ git clone https://github.com/aguinet/usbtop.git

上述命令将克隆当前工作目录中“usbtop”目录中的 Usbtop 存储库的所有内容。 cd 进入 usbtop 目录:

$ cd usbtop

接下来创建本地构建目录并 cd 进入它:

$ mkdir _build && cd _build 

最后,通过一一运行以下命令来安装 Usbtop:

$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ make
$ sudo make install

安装后,请确保 usbmon 模块已加载。

$ sudo modprobe usbmon

使用 Usbtop 在 Linux 上查找 USB 设备带宽使用情况

连接您的 USB 驱动器并在其中复制一些文件。 打开终端并运行 usbtop 命令 sudo 估计带宽使用的特权。

$ sudo usbtop

样本输出:

使用 Usbtop 实用程序在 Linux 上查找 USB 设备带宽使用情况

正如您在上面的输出中看到的,Usbtop 显示带宽使用情况 在 USB 总线和设备上。 在顶部,您将看到所有 USB 总线上的总体带宽使用情况,在其下方,您将看到每条总线上的带宽。

要列出所有可用的 USB 总线,请运行:

$ usbtop --list
Name Description
---------------------------
usbmon1 USB bus number 1
usbmon2 USB bus number 2
usbmon3 USB bus number 3
usbmon4 USB bus number 4

要监控特定 USB 总线上的带宽流量,请运行:

$ sudo usbtop --bus usbmon1

此命令将仅监控 usbmon1 总线上的带宽流量。

有关详细信息,请参阅帮助部分。

$ usbtop --help

我已经使用 USB 外置驱动器和拇指驱动器进行了测试。 但是,您可以将它用于所有设备,例如 USB 网络摄像头、打印机等,以监控带宽。

建议阅读:

  • 如何在 Linux 中通过命令行监控 WiFi 连接
  • 带有初学者示例的顶级命令教程
  • 您可能想知道的“顶级”命令行实用程序的一些替代方案

我将继续寻找更多实用程序来检查 USB 总线和设备的带宽使用情况,并相应地更新本指南。 收藏并稍后访问。

资源:

感谢您的光临!

帮助我们帮助您:

祝你有美好的一天!!