0 вниз фаворит голосования у меня есть сценарий Python для получения включенных деталей usb. Я пользуюсь udev библиотекой для управления подключенными устройствами.
Я хочу получить идентификатор устройства USB-устройства, когда я удаляю его из системы.
Если я удаляю устройство без размонтирования, я получаю идентификатор устройства с помощью device.get ('ID_FS_UUID').
Но Если я удаляю устройство после размонтирования, затем я не получаю идентификационное использование устройства выше кода. Я получаю значение как Ни один.
У меня есть класс наблюдателя монитора udev для обнаружения дополнения и демонтажа USB-устройства.
*от pyudev.glib импортируют GUDevMonitorObserver как MonitorObserver
def device_event(observer, action, device):
if action == 'add':
DeviceListener.deviceAdded(device)
else:
DeviceListener.deviceRemoved(device)*
на основе события это назовет соответствующий метод.
def deviceRemoved(device):
print "REMOVED DEVICE IS="+device.get('ID_FS_UUID')
Если я удаляю устройство без размонтирования, я получаю следующий вывод, УДАЛЕННОЕ УСТРОЙСТВО IS=5F96-58D0
Если я размонтировал и удаляю устройство, я получаю следующий вывод, УДАЛЕННОЕ УСТРОЙСТВО IS=None
Помогите мне найти идентификатор устройства во втором случае.
Заранее спасибо...
AFAIK, не возможно получить такую информацию от живого дерева состояния как SYSFS. Те inf очищены с чистым umount.
Лучший способ ко мне состоит в том, чтобы сохранить копию такой информации о включенных устройствах, затем проверить их, когда устройство отключается.