显然可以使用udisks二进制文件获取有关附加磁盘的大量信息:
udisks --show-info /dev/sda1
Run Code Online (Sandbox Code Playgroud)
udisks显然只是枚举udev可用的数据.
是否可以使用python获取此信息?比方说,如果我只想检索设备序列,安装点和大小.
小智 13
您可以直接在python中通过dbus使用Udisks.
import dbus
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)
print device_props.Get('org.freedesktop.UDisks.Device', "DriveVendor")
print device_props.Get('org.freedesktop.UDisks.Device', "DeviceMountPaths")
print device_props.Get('org.freedesktop.UDisks.Device', "DriveSerial")
print device_props.Get('org.freedesktop.UDisks.Device', "PartitionSize")
Run Code Online (Sandbox Code Playgroud)
完整的可用属性列表在http://hal.freedesktop.org/docs/udisks/Device.html