Я пытаюсь создать функцию, используя 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 "