diff --git a/ironic_lib/disk_utils.py b/ironic_lib/disk_utils.py
index 3655891..f2d165d 100644
--- a/ironic_lib/disk_utils.py
+++ b/ironic_lib/disk_utils.py
@@ -325,10 +325,15 @@ def populate_image(src, dst):
 
 
 def block_uuid(dev):
-    """Get UUID of a block device."""
+    """Get UUID of a block device.
+    
+    Try to fetch the UUID, if that fails, try to fetch the PARTUUID.
+    """
     out, _err = utils.execute('blkid', '-s', 'UUID', '-o', 'value', dev,
-                              run_as_root=True,
-                              check_exit_code=[0])
+                              run_as_root=True, check_exit_code=[0])
+    if out is '':
+        out, _err = utils.execute('blkid', '-s', 'PARTUUID', '-o', 'value',
+                                  dev, run_as_root=True, check_exit_code=[0])
     return out.strip()