显然有可能使用udisks二进制文件获得许多有关附加磁盘的信息:
udisks --show-info /dev/sda1
udisks显然只是枚举udev可用的数据。
是否可以使用python获取此信息?例如说,如果我只是想检索设备序列号,安装点和大小。
您可以直接在python中通过dbus使用Udisk。
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")
可用属性的完整列表在此处http://hal.freedesktop.org/docs/udisks/Device.html