3

我不确定这是否是提出这个问题的正确站点,但我把它放在这里是因为这是一个编程问题,而且我认为 SO 人群是三个站点中最面向 Linux 的。

无论如何,我试图找到一种方法来模拟从软件方面断开设备,就像用户物理断开它一样。到目前为止,我已经在 /etc/udev/rules.d 中制定了一个名为 10-nano.rules 的 udev 规则:

SYSFS{idVendor}=="05ac", OPTIONS+="ignore_device"

此规则适用于忽略设备,但仅在它们已断开连接并重新连接之后。但我想要做的是能够编写规则,然后让设备被忽略,就好像它已断开连接一样。我已经尝试使用和不使用 sudo 的“udevadm 触发器”,但由于某种原因,我无法在设备连接时应用此规则。有什么建议么?

顺便说一句,我可以通过删除 10-nano.rules,然后运行“sudo udevadm trigger”来重新连接已被忽略的设备,但就像上面所说的那样,而不是相反。(由于某种原因,当我运行该命令时,我的系统时间和互联网变得一团糟)

4

1 回答 1

1

您是否尝试过rmmod控制设备的模块?

您还可以使用udevadm test, pe 模拟删除事件:

sudo udevadm test --action="remove" <devpath>

udevadm monitor您可以在物理连接或移除设备时查看 devpaths 如何查看,或将它们签入/sys/<devpath>.

于 2009-10-07T11:45:54.643 回答