58 lines
1.5 KiB
Python
Executable File
58 lines
1.5 KiB
Python
Executable File
#!/usr/bin/python
|
|
#
|
|
# raidstart-stub
|
|
#
|
|
# Copyright (C) 2007 Red Hat, Inc. All rights reserved.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
|
|
import os
|
|
import sys
|
|
|
|
# for testing
|
|
if (os.path.exists('rpmmodule')):
|
|
sys.path.append('rpmmodule')
|
|
sys.path.append('libfdisk')
|
|
sys.path.append('balkan')
|
|
sys.path.append('gnome-map')
|
|
sys.path.append('isys')
|
|
|
|
sys.path.append('/usr/lib/anaconda')
|
|
|
|
import anaconda_log
|
|
import fsset
|
|
import raid
|
|
import isys
|
|
from sys import argv
|
|
|
|
if len(argv) != 2 or argv[1][:7] != "/dev/md":
|
|
print "usage: raidstart /dev/md[minornum]"
|
|
sys.exit(1)
|
|
|
|
targMinor = int(argv[1][7:])
|
|
|
|
drives = isys.hardDriveDict().keys()
|
|
drives.sort (isys.compareDrives)
|
|
|
|
raidDevices = raid.scanForRaid(drives)
|
|
for (minor, devices, level, totalDisks) in raidDevices:
|
|
if targMinor == minor:
|
|
devName = "md%d" % (minor,)
|
|
isys.raidstart(devName, devices[0])
|
|
sys.exit(0)
|
|
|
|
print "could not find devices associated with raid device md%d" % targMinor
|
|
sys.exit(1)
|