diff options
author | Jeremy Katz <katzj@redhat.com> | 2001-07-17 18:49:21 +0000 |
---|---|---|
committer | Jeremy Katz <katzj@redhat.com> | 2001-07-17 18:49:21 +0000 |
commit | e0e0f42e7a82ace44730ba8b69739be305d3c987 (patch) | |
tree | c341bbf2cdeb2cb6809761cfe55812c25d686cd8 /partitioning.py | |
parent | b359ed47aa6ee7562ccd77ca7f4aef492ec4859b (diff) | |
download | anaconda-e0e0f42e7a82ace44730ba8b69739be305d3c987.tar.gz anaconda-e0e0f42e7a82ace44730ba8b69739be305d3c987.tar.xz anaconda-e0e0f42e7a82ace44730ba8b69739be305d3c987.zip |
add clearpart --initlabel support (43085)
Diffstat (limited to 'partitioning.py')
-rw-r--r-- | partitioning.py | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/partitioning.py b/partitioning.py index c52a747d9..2fbe7090e 100644 --- a/partitioning.py +++ b/partitioning.py @@ -644,6 +644,9 @@ class Partitions: # problems later on self.nextUniqueID = 1 + # reinitialize all partitions to default labels? + self.reinitializeDisks = 0 + # partition method self.useAutopartitioning = 1 self.useFdisk = 0 @@ -804,7 +807,7 @@ class Partitions: new.nextUniqueID = self.nextUniqueID new.useAutopartitioning = self.useAutopartitioning new.useFdisk = self.useFdisk - + new.reinitializeDisks = self.reinitializeDisks return new @@ -966,19 +969,19 @@ class DiskSet: del disk self.refreshDevices() - def refreshDevices (self, intf = None): + def refreshDevices (self, intf = None, initAll = 0): self.disks = {} - self.openDevices(intf) + self.openDevices(intf, initAll) def closeDevices (self): for disk in self.disks.keys(): del self.disks[disk] - def openDevices (self, intf = None): + def openDevices (self, intf = None, initAll = 0): if self.disks: return for drive in self.driveList (): - if drive in DiskSet.skippedDisks: + if drive in DiskSet.skippedDisks and not initAll: continue deviceFile = isys.makeDevInode(drive) if isys.driveIsRemovable(drive) and not flags.expert: @@ -989,6 +992,15 @@ class DiskSet: except parted.error, msg: DiskSet.skippedDisks.append(drive) continue + if initAll: + try: + dev.disk_create(getDefaultDiskType()) + disk = parted.PedDisk.open(dev) + self.disks[drive] = disk + except parted.error, msg: + DiskSet.skippedDisks.append(drive) + continue + try: disk = parted.PedDisk.open(dev) self.disks[drive] = disk @@ -1070,7 +1082,7 @@ def partitionObjectsInitialize(diskset, partitions, dir, intf): return # read in drive info - diskset.refreshDevices(intf) + diskset.refreshDevices(intf, partitions.reinitializeDisks) if len(diskset.disks.keys()) == 0: intf.messageWindow(_("No Drives Found"), |