summaryrefslogtreecommitdiffstats
path: root/fsset.py
diff options
context:
space:
mode:
authorJeremy Katz <katzj@redhat.com>2002-06-12 06:47:10 +0000
committerJeremy Katz <katzj@redhat.com>2002-06-12 06:47:10 +0000
commit601e202c578f3944c32e6df844e9667eef7b16aa (patch)
tree7b9aedc11bc821c58a228c864bd15c9ab7b63739 /fsset.py
parente218d7a11a6d2dca8a3419c8504dacd9dcd72ff7 (diff)
downloadanaconda-601e202c578f3944c32e6df844e9667eef7b16aa.tar.gz
anaconda-601e202c578f3944c32e6df844e9667eef7b16aa.tar.xz
anaconda-601e202c578f3944c32e6df844e9667eef7b16aa.zip
setup devices properly for preexisting lvm and raid
Diffstat (limited to 'fsset.py')
-rw-r--r--fsset.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/fsset.py b/fsset.py
index 04aa2edf8..8b2268d10 100644
--- a/fsset.py
+++ b/fsset.py
@@ -1504,6 +1504,8 @@ class RAIDDevice(Device):
raid.register_raid_device(self.device, self.members[:],
self.level, self.numDisks)
self.isSetup = 1
+ else:
+ isys.raidstart(self.device, self.members[0])
return node
def getDevice (self, asBoot = 0):
@@ -1538,14 +1540,12 @@ class VolumeGroupDevice(Device):
self.physicalextentsize = pesize
def setupDevice (self, chroot, devPrefix='/tmp'):
- if not self.isSetup:
- lvm.vgscan()
-
- nodes = []
- for volume in self.physicalVolumes:
- # XXX the lvm tools are broken and will only work for /dev
- node = volume.setupDevice(chroot, devPrefix="/dev")
+ nodes = []
+ for volume in self.physicalVolumes:
+ # XXX the lvm tools are broken and will only work for /dev
+ node = volume.setupDevice(chroot, devPrefix="/dev")
+ if not self.isSetup:
# now make the device into a real physical volume
# XXX I don't really belong here. should
# there be a PhysicalVolumeDevice(PartitionDevice) ?
@@ -1560,6 +1560,7 @@ class VolumeGroupDevice(Device):
nodes.append(node)
+ if not self.isSetup:
# rescan now that we've recreated pvs. ugh.
lvm.vgscan()
@@ -1576,6 +1577,9 @@ class VolumeGroupDevice(Device):
raise SystemError, "vgcreate failed for %s" %(self.name,)
self.isSetup = 1
+ else:
+ lvm.vgscan()
+ lvm.vgactivate()
return "/dev/%s" % (self.name,)