psutil mountpoint возвращает нулевое значение при мониторинге с помощью pyudev - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь создать функцию, используя psutil, которая с указанным именем диска, таким как "dev / sd c", вернет точку монтирования. Поэтому изначально был разработан сценарий nohup для непрерывного сканирования портов на наличие любых подключенных устройств, и он возвращает их соответствующее имя диска, такое как «dev / sd c», как указано выше. Но когда я немедленно запускаю функцию mount_point, она возвращает значение None.


from pyudev import Context, Monitor, MonitorObserver
import psutil

def mount_point(device_node):
    for partitions in psutil.disk_partitions():
        if partitions.device == device_node:
            return partitions.mountpoint


if __name__ == "__main__":
    node= None
    mount_point(node)
    context = Context()
    monitor = Monitor.from_netlink(context)
    monitor.start()
    monitor.filter_by(subsystem='block')
    for action, device in monitor:
        print(mount_point(device.device_node))

return None , когда устройство смонтировано, возвращает фактические точки монтирования, когда устройство размонтировано, например "/ media / имя пользователя / device_name "

...