【问题标题】:Is there any way to see on linux the USB devices on realtime?有什么办法可以在 Linux 上实时查看 USB 设备?
【发布时间】:2015-03-26 04:59:18
【问题描述】:

我的问题很简单,有没有办法在终端中实时查看我已将哪些 USB 设备连接到我的计算机? 我已经知道 lsusb,但它只是在我问它的那一刻向我显示设备,我希望能够查看某个设备是否在某个时候连接和断开连接。

编辑:认为下面标记的答案提供了一个很好的选择,为了调试我正在处理的程序,我发现使用 C++ 函数很有用

std::system("lsusb");

这样我可以检查我是否丢失了 USB 设备。

【问题讨论】:

    标签: linux usb linux-device-driver lsusb


    【解决方案1】:

    当然有,您可以使用udev 内核设备管理器。

    此外,您可以定义规则来检测您感兴趣的插入/拔出设备,例如在你的情况下是 USB 设备。

    Here是一个关于如何写udev rule的教程

    【讨论】:

    • 好的,我遵循了那个很棒的教程,并在我正在使用的规则(更改权限)中添加了一个 RUN 以便它可以执行一个通知我的脚本。现在的问题是脚本,因为似乎博客使用它的方式不再有效。我如何通知自己我已经插入了 USB?我正在使用他们解释的 notify-send 命令,但是由于启动脚本的是根它没有出现,你知道如何解决它吗?另外,我可以通过 udev 规则检查何时从 PC 上拔下某些东西吗?
    • 究竟是什么不工作,请提供更多信息?该博客还包含与notify-send 问题解决方法相关的说明。当然udev你也可以检测到拔掉的USB设备。
    • 周围的工作似乎已经过时了。对于我在互联网上发现的 gnome-panel 不再使用,这是他们过去修复它的方式。你知道是否有人更新了那项工作吗?现在我正在阅读 DBUS,对我来说这似乎是该工作的关键要素。
    • gnome-panel与你的问题无关!您无需对 gnome-panel 做任何事情!您已经运行了脚本,就是这样,因此您能够检测插入/拔出的设备。你为什么要潜入 notify-sendDbus ?当然,您可以使用dbus 通知服务实现更优雅的解决方案,但我认为这超出了您的问题范围。
    • 重点是,可证明是因为我的想象力不足,一旦我用udev检测到我的设备是否已插入并运行脚本,我不知道如何处理该脚本实际上将其视为用户(因为这样做的最初目的是纯粹的调试)。鉴于此,我认为除了调试之外,如果我在哪里做得足够好,这可能是我的驱动程序的一个很好的用户友好插件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-02
    • 1970-01-01
    • 2015-09-01
    • 2011-09-22
    • 2015-09-10
    • 1970-01-01
    • 2011-01-19
    相关资源
    最近更新 更多