问题标签 [udev]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 以编程方式获取链接速度?
我正在编写一个报告本地机器上网络设备属性的应用程序。我需要mac地址、mtu、链接速度和其他一些。我为此使用了udev。我已经想出了如何获取mac地址和mtu,但不知道如何获取链接速度。我可以从终端使用 ethtool 获取它,但我需要一种以编程方式获取它的方法。
有谁知道如何使用 udev 或其他库获取链接速度属性?
c - 监听来自 linux 内核或 udev 的硬件更改事件
我需要在存储设备安装和卸载上运行一些代码。
我如何在 linux 上监听这些事件?
- 我正在考虑添加一些udev规则来运行一些脚本(对此问题的任何专业知识表示赞赏)。
- 但我更愿意用我的守护进程(就像 udev 一样)或类似的东西在一些 netlink 套接字中监听来自内核的事件。
linux - 如何在 Linux 上以编程方式获取 USB 供应商和产品信息?
使用 udev 我已经能够获得某个 USB 设备的这些信息:
现在我想获取与供应商和产品 ID 关联的完整字符串。我发现该文件/usr/share/misc/usb.ids
包含我正在寻找的信息:
但是,我不清楚我应该如何在我的应用程序中检索这些数据。是否有可用的 API 或者我应该只解析文件?如果我选择解析它,那么/usr/share/misc/usb.ids
总是正确的位置?
gnome - Gnome 2.30 中自动挂载的工作流程是什么?
我有一台装有 Fedora 13 的华硕笔记本电脑。我的问题是我连接的任何 USB 存储设备都不会自动挂载。我有另一台装有 Fedora 13 的计算机,它没有问题。
我无法在我的笔记本电脑和其他可用的计算机之间找到任何配置差异。
因此,为了尝试追查问题,我开始寻找有关它应该如何工作的文档。我看过 udev、devkit、hal、dbus、polkit、gnome 等。
我想知道我可以使用哪些事件、日志、配置文件和监视程序来跟踪从我连接 USB 记忆棒到我在 GNOME 中启动并运行一个窗口所发生的事件。
到目前为止,我已经跟踪到 udev 检测到磁盘并创建 /dev/sdb(和分区 1 的 /dev/sdb1),并且有关添加设备的事件作为消息在 dbus 上发送。我可以使用 udisk 手动挂载磁盘,但不能使用 gnome-disk-utility (palmiset)。
自动挂载磁盘涉及许多不同的应用程序,我想找出它在事件链中的哪个位置失败。
mount - 如何在使用 UDEV 挂载设备后运行 shell 脚本
我想知道如何在插入 USB 笔式驱动器并自动安装后运行脚本直到知道我能够在插入设备后立即运行脚本,但是设备的安装发生在 shell 脚本操作之后结束了
linux - 如何分配/dev/fbX?
我想分配 /dev/fbX 设备,如下所示。
/dev/fb0 用于 USB-LCD 设备。
/dev/fb1 用于主显示设备。
我试试看。
版本 1:创建 /etc/udev/rules.d/91-udev-fb.rules
结果。
ls /dev 仅显示 /dev/fb0。
版本 2:创建 /etc/udev/rules.d/91-udev-fb.rules
结果。
ls /dev 显示 /dev/fb0 和 /dev/fb1,但 /dev/fb0 是 VESA VGA。udevadm 测试 /dev/fb0
和 udevadm info -a -n /dev/fb0 显示与 VESA VGA 相同。
我认为我创建的规则不正确。请建议我如何有效地使用 udev 规则。
这个环境是 VMware 上的 Debian Lenny。
目标是通过 udev assign 测试从引导过程中更改主监视器。
VESA VGA <-- 通过 udev assign 切换 --> USB-LCD。
这是默认的,没有添加到 /etc/udev/rules.d 中。
当我启动 linux 时,/dev/fb0 是主显示器,/dev/fb1 是 USB-LCD。
这是开发信息。
感谢您对此的任何建议:-)
linux - Bash 脚本检测我的 USB 何时插入,然后将其与目录同步
是否有我可以编写的 Bash 脚本和/或守护进程来检测特定的 USB 驱动器,然后将该驱动器与目录同步?
linux - 发现我的 USB 扬声器(设备)在哪里
我正在运行 Debian Sid,我想知道我的 USB 扬声器在系统中的位置。例如:当我插入笔式驱动器时,dmesg 会显示它的位置(sda、sdb 等)。但是当我插入我的 USB 扬声器时,它没有显示任何内容:
我怎么能发现它在哪里?是否有显示已连接设备的命令?谢谢你。
xlib - XOpenDisplay 因 udev 事件而失败
我正在尝试像这样打开 X 显示器:
当我从我的用户 shell 运行它时,它工作正常,但如果它从 udev 事件(Ubuntu 10.10)运行,则函数调用返回 NULL。我想知道这是否与不同的环境有关,所以也尝试过 XOpenDisplay(":0.0") 但无济于事。
有谁知道为什么会这样?
python - 轮询文件以进行更改如何工作?
问题
我希望下面的脚本最多打印一个事件然后停止(它只是为了说明问题而编写的)。
但是,它每秒打印大约 70000 个事件。为什么?
背景
我编写了一个在内部使用pyudev.Monitor类的类。除其他外,它使用poll object 轮询由 fileno() 方法提供的 fileno 以进行更改。
现在我正在尝试为我的班级编写单元测试(我意识到我应该先编写单元测试,所以无需指出),因此我需要为我的班级编写自己的 fileno() 方法模拟 pyudev.Monitor 对象,我需要控制它,以便我可以触发 poll 对象报告事件。正如上面的代码所示,我不能让它停止报告看似不存在的事件!
我在民意调查类中找不到确认事件()或类似的东西来使事件消失(我怀疑只有一个事件以某种方式卡住了),搜索谷歌并且这个网站没有产生任何结果。我在 Ubuntu 10.10 上使用 python 2.6.6。