【发布时间】:2014-07-06 12:18:25
【问题描述】:
我正在编写一个列出 USB 大容量存储设备的 python 脚本。我想打印制造商、设备尺寸和安装位置。 USB 大容量存储设备由操作系统自动挂载。
我已经让制造商的东西和设备尺寸工作了;但我正在努力获得挂载点。当我做df -h 我得到这个:
FS:/dev/sda1
尺寸:980M
二手:0
可用:980M
已使用:0%
安装在:/media/usb0
这是我所追求的。这是我已经得到的代码:
def fetchExternals():
bus = dbus.SystemBus()
ud_manager_obj = bus.get_object("org.freedesktop.UDisks", "/org/freedesktop/UDisks")
ud_manager = dbus.Interface(ud_manager_obj, 'org.freedesktop.UDisks')
for dev in ud_manager.EnumerateDevices():
device_obj = bus.get_object("org.freedesktop.UDisks", dev)
device_props = dbus.Interface(device_obj, dbus.PROPERTIES_IFACE)
if device_props.Get('org.freedesktop.UDisks.Device', "DeviceIsRemovable"):
print device_props.Get('org.freedesktop.UDisks.Device', "DriveVendor")
print str(math.ceil(device_props.Get('org.freedesktop.UDisks.Device', "PartitionSize")/1048576.0)/1000)+' GB'
谁能告诉我是否有可能获取驻留在设备上的分区的挂载点?
编辑:我是 linux 和 python 的新手,如果这真的是一个菜鸟问题,我很抱歉。
edit2:我还想在分区上留下可用空间。
【问题讨论】: