diff options
author | Chris Lumens <clumens@redhat.com> | 2008-03-18 13:15:11 -0400 |
---|---|---|
committer | Chris Lumens <clumens@redhat.com> | 2008-03-18 13:15:29 -0400 |
commit | 0af7118d1d9e1df878cdeee8bd47d17edc7a1b1c (patch) | |
tree | 994502bded93fa8a8ceccc186d8ec1a9167ebaf5 /partedUtils.py | |
parent | 962560c6d0804f189a86d76f4904fe8b5b069e5d (diff) | |
download | anaconda-0af7118d1d9e1df878cdeee8bd47d17edc7a1b1c.tar.gz anaconda-0af7118d1d9e1df878cdeee8bd47d17edc7a1b1c.tar.xz anaconda-0af7118d1d9e1df878cdeee8bd47d17edc7a1b1c.zip |
Support reading the UUID from the disk like we do with labels.
This fixes mounting disks by UUID in upgrades and probably rescue mode
as well.
Diffstat (limited to 'partedUtils.py')
-rw-r--r-- | partedUtils.py | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/partedUtils.py b/partedUtils.py index 0f1c6b5ba..4c050efa5 100644 --- a/partedUtils.py +++ b/partedUtils.py @@ -669,9 +669,12 @@ class DiskSet: while DiskSet.mdList: DiskSet.mdList.pop() - def getLabels(self): - """Return a list of all of the labels used on partitions.""" - labels = {} + def getInfo(self, readFn=lambda d: isys.readFSLabel(d)): + """Return a dict keyed on device name, storing some sort of data + about each device. This is typially going to be labels or UUIDs, + as required by readFstab. + """ + ret = {} if self.anaconda is not None: encryptedDevices = self.anaconda.id.partitions.encryptedDevices @@ -701,9 +704,9 @@ class DiskSet: if crypto and not crypto.openDevice(): node = crypto.getDevice() - label = isys.readFSLabel(node) - if label: - labels[node] = label + val = readFn(node) + if val: + ret[node] = val if crypto: crypto.closeDevice() @@ -721,9 +724,9 @@ class DiskSet: if crypto and not crypto.openDevice(): dev = crypto.getDevice() - label = isys.readFSLabel(dev) - if label: - labels[dev] = label + val = readFn(dev) + if val: + ret[dev] = val if crypto: crypto.closeDevice() @@ -741,9 +744,9 @@ class DiskSet: if crypto and not crypto.openDevice(): node = crypto.getDevice() - label = isys.readFSLabel("/dev/" + node) - if label: - labels[node] = label + val = readFn("/dev/" + node) + if val: + ret[node] = val if crypto: crypto.closeDevice() @@ -751,7 +754,7 @@ class DiskSet: if not active: lvm.vgdeactivate() - return labels + return ret def findExistingRootPartitions(self, upgradeany = 0): """Return a list of all of the partitions which look like a root fs.""" |