首先对不起我的英语!
我的环境:
Python:2.7.3
wxwidgets:2.9.4-1
wxpython:2.9.4-1
ubuntu:12.04
上下文:
我必须检测usb硬盘驱动器何时插入或拔出,并对其执行一些操作。
例如,当一个磁盘被插入时,我要得到挂载点(ex:/media/usb0)和系统点(ex:/dev/sdb1)。我需要两条路径,我不想进行类似于(子进程:mount-l)的系统调用。
我尝试了几种方法:
-pyudev:仅获取添加的EVT_设备上的系统路径(如/dev/sdb1)
-Gio(gi.repository):使用“mount added”(如/media/usb0)获取装载点,并在第二个事件“volume added”中获取系统点,但Gio add and remove event fail有问题,或者有可疑行为取决于我在其上尝试应用程序的计算机
-DBusGMainLoop(dbus.mainloop.glib):可以工作,但取决于我尝试过的计算机(所有配置都相同)启动2个事件“DeviceAdded”,有时一个设备被更改,但有时磁盘被插入时不会更改。
你知道一种方法(可能是我暴露的3种方法中的一种,我做了一些不好的事情)来检测U盘何时被插入,调用一个方法,在这个方法中得到我需要的2条路径吗?
提前谢谢。
奥雷恩。