@ -221,7 +221,10 @@ class process:
else :
else :
stdin = kwarg [ " stdin " ] . getStdout
stdin = kwarg [ " stdin " ] . getStdout
self . stdout = kwarg . get ( " stdout " , PIPE )
self . stdout = kwarg . get ( " stdout " , PIPE )
self . envdict = kwarg . get ( " envdict " , None )
self . envdict = kwarg . get ( " envdict " , { } )
if " lang " in kwarg :
self . envdict [ " LANG " ] = kwarg . get ( ' lang ' )
self . langc = " langc " in kwarg
self . stderr = kwarg . get ( " stderr " , PIPE )
self . stderr = kwarg . get ( " stderr " , PIPE )
self . command = [ command ] + list ( params )
self . command = [ command ] + list ( params )
@ -364,7 +367,7 @@ class processProgress(process):
pass
pass
def runOsCommand ( cmd , in_str = None , env_dict = None ) :
def runOsCommand ( cmd , in_str = None , env_dict = None ) :
""" Выполняет внешнюю программу
""" Run system command
Параметры :
Параметры :
cmd внешняя программа
cmd внешняя программа
@ -392,30 +395,17 @@ def runOsCommand(cmd,in_str=None, env_dict=None):
return retcode , res
return retcode , res
def genpassword ( passlen = 9 ) :
def genpassword ( passlen = 9 ) :
''' Вернуть случайный набор символов указанной длины
""" Return random charset specified lenght (passlen) """
return ' ' . join ( map ( lambda x : choice ( string . ascii_letters + string . digits ) ,
Параметры :
xrange ( 0 , passlen ) ) )
passlen длина пароля который нужно сгенерировать
Возвращаемые параметры :
Сгенерированный пароль указанной длины
'''
res = ' ' . join ( [ choice ( string . ascii_letters + string . digits ) \
for i in xrange ( passlen ) ] )
return res
def getpathenv ( ) :
def getpathenv ( ) :
""" Вернуть пути для запуска утилит """
""" Return path for run utilities """
bindir = [ ' /sbin ' , ' /bin ' , ' /usr/sbin ' , ' /usr/bin ' ]
bindir = set ( filter ( path . exists ,
[ ' /sbin ' , ' /bin ' , ' /usr/sbin ' , ' /usr/bin ' ] ) )
env = os . environ
env = os . environ
if env and env . has_key ( ' PATH ' ) :
envPath = set ( env . get ( ' PATH ' , ' ' ) . split ( " : " ) ) | bindir
lpath = env [ ' PATH ' ] . split ( " : " )
return " : " . join ( envPath )
npath = [ ]
for dirname in bindir :
if path . exists ( dirname ) and dirname not in lpath :
npath . append ( dirname )
lpath = npath + lpath
return " : " . join ( lpath )
class MultiReplace :
class MultiReplace :
""" MultiReplace function object
""" MultiReplace function object
@ -627,7 +617,6 @@ def isFstabMount(pathname,mapDevUuid={},listFstab=[]):
absPath = " swap "
absPath = " swap "
else :
else :
absPath = path . abspath ( pathname )
absPath = path . abspath ( pathname )
devuuid = ' /dev/disk/by-uuid '
if not mapDevUuid :
if not mapDevUuid :
mapDevUuid . update ( getUUIDDict ( ) )
mapDevUuid . update ( getUUIDDict ( ) )
# convert fstab to
# convert fstab to
@ -844,8 +833,7 @@ def readFile(filename):
return open ( filename , ' r ' ) . read ( )
return open ( filename , ' r ' ) . read ( )
except ( OSError , IOError ) :
except ( OSError , IOError ) :
pass
pass
finally :
return " "
return " "
def getUUIDDict ( revers = False ) :
def getUUIDDict ( revers = False ) :
""" Get dict UUID -> dev """
""" Get dict UUID -> dev """
@ -893,7 +881,7 @@ def getProgPath(progname):
return False
return False
def checkUtils ( * utils ) :
def checkUtils ( * utils ) :
""" Check utils and exit if it not found """
""" Check utils , exit if it not found and return fullpath """
retval = [ ]
retval = [ ]
for util in utils :
for util in utils :
utilPath = getProgPath ( util )
utilPath = getProgPath ( util )