[Uludag-commits] r16232 - trunk/python-modules/pardus-python/pardus

uludag-commits at pardus.org.tr uludag-commits at pardus.org.tr
4 Ara 2007 Sal 19:32:39 EET


Author: bahadir.kandemir
Date: Tue Dec  4 19:32:39 2007
New Revision: 16232

Modified:
   trunk/python-modules/pardus-python/pardus/diskutils.py
Log:
Get all block devices except floppy and ram disks and loop devices.

Modified: trunk/python-modules/pardus-python/pardus/diskutils.py
=================================================================
--- trunk/python-modules/pardus-python/pardus/diskutils.py	(original)
+++ trunk/python-modules/pardus-python/pardus/diskutils.py	Tue Dec  4 19:32:39 2007
@@ -13,9 +13,9 @@
 """sysutils module provides basic file I/0 utility functions."""
 
 import binascii
+import fnmatch
 import struct
 import os
-import glob
 
 class EDD:
     def __init__(self):
@@ -25,10 +25,12 @@
 
     def blockDevices(self):
         devices = []
-        for dev_type in ["hd*", "sd*"]:
-            sysfs_devs = glob.glob("/sys/block/" + dev_type)
-            for sysfs_dev in sysfs_devs:
-                devices.append("/dev/" + os.path.basename(sysfs_dev))
+        for sysfs_dev in os.listdir("/sys/block"):
+            if filter(lambda x: fnmatch.fnmatch(sysfs_dev, x), ["fd*", "loop*", "ram*"]):
+                continue
+            dev_name = os.path.basename(sysfs_dev)
+            dev_name = dev_name.replace("!", "/")
+            devices.append("/dev/" + dev_name)
         devices.sort()
         return devices
 


Uludag-commits mesaj listesiyle ilgili daha fazla bilgi