|
|
|
@ -62,7 +62,9 @@ class migrateGroups(_shareData):
|
|
|
|
|
"""Get data system groups in new system"""
|
|
|
|
|
fileName = pathJoin(self.prefixNewSystem, self.fileGroups)
|
|
|
|
|
return filter(lambda x:\
|
|
|
|
|
self._reNumb.match(x[2]) and int(x[2])<self.minGid, self.getData(fileName=fileName))
|
|
|
|
|
self._reNumb.match(x[2]) and\
|
|
|
|
|
(int(x[2])>self.maxGid or int(x[2])<self.minGid),
|
|
|
|
|
self.getData(fileName=fileName))
|
|
|
|
|
|
|
|
|
|
def getNewProcessedData(self):
|
|
|
|
|
"""Get processed data migrate groups in new system"""
|
|
|
|
@ -115,7 +117,8 @@ class migrateUsers(_shareData):
|
|
|
|
|
"""Get data system users in new system"""
|
|
|
|
|
fileName = pathJoin(self.prefixNewSystem, self.filePasswd)
|
|
|
|
|
return filter(lambda x:\
|
|
|
|
|
self._reNumb.match(x[2]) and int(x[2])<self.minId, self.getData(fileName=fileName))
|
|
|
|
|
self._reNumb.match(x[2]) and\
|
|
|
|
|
(int(x[2]>self.maxId) or int(x[2])<self.minId), self.getData(fileName=fileName))
|
|
|
|
|
|
|
|
|
|
def getNewProcessedData(self):
|
|
|
|
|
"""Get processed data migrate groups in new system"""
|
|
|
|
@ -279,7 +282,10 @@ class migrate(color_print):
|
|
|
|
|
if data[0]==userName:
|
|
|
|
|
indexFoundUser = i
|
|
|
|
|
break
|
|
|
|
|
#self.dataShadow = filter(lambda x: x[0]!=userName, self.dataShadow)
|
|
|
|
|
if callable(pwdHash):
|
|
|
|
|
pwdHash = pwdHash(userName)
|
|
|
|
|
if pwdHash is False:
|
|
|
|
|
return False
|
|
|
|
|
shadowDict = {"user":userName,
|
|
|
|
|
"hash":pwdHash,
|
|
|
|
|
"days":str(int(time.time()/86400)),
|
|
|
|
@ -315,9 +321,11 @@ class migrate(color_print):
|
|
|
|
|
userList = userline.split(":")
|
|
|
|
|
self.dataUsers.append(userList)
|
|
|
|
|
# add shadow
|
|
|
|
|
self.changePassword(userName, pwdHash)
|
|
|
|
|
if not self.changePassword(userName, pwdHash):
|
|
|
|
|
return False
|
|
|
|
|
# add user to defaulr groups
|
|
|
|
|
self.addUserToDefaultGroups(userName)
|
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
def checkPermFiles(self):
|
|
|
|
|
"""Check permission files"""
|
|
|
|
@ -362,7 +370,8 @@ class migrate(color_print):
|
|
|
|
|
pwdHash = encryptObj.getHashPasswd(pwd, "shadow_ssha256")
|
|
|
|
|
if pwdHash is False:
|
|
|
|
|
return False
|
|
|
|
|
self.addUser("guest", pwdHash)
|
|
|
|
|
if not self.addUser("guest", pwdHash):
|
|
|
|
|
return False
|
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
def migrate(self, addUsersList=[], pwdUsersList=[]):
|
|
|
|
@ -380,16 +389,17 @@ class migrate(color_print):
|
|
|
|
|
self.dataUsers = reduce(lambda x,y: x+y, dataUsers, [])
|
|
|
|
|
self.dataShadow = reduce(lambda x,y: x+y, dataShadow, [])
|
|
|
|
|
self.addThisUsersToGroups(thisUsers)
|
|
|
|
|
for userName, pwdHash in addUsersList:
|
|
|
|
|
if self.isSystemUser(userName):
|
|
|
|
|
self.printERROR(_("%s is a system user") %userName)
|
|
|
|
|
return False
|
|
|
|
|
self.addUser(userName, pwdHash)
|
|
|
|
|
for userName, pwdHash, maxDays, warnDays in pwdUsersList:
|
|
|
|
|
if not self.changePassword(userName, pwdHash,
|
|
|
|
|
maxDays=maxDays,
|
|
|
|
|
warnDays=warnDays):
|
|
|
|
|
return False
|
|
|
|
|
for userName, pwdHash in addUsersList:
|
|
|
|
|
if self.isSystemUser(userName):
|
|
|
|
|
self.printERROR(_("%s is a system user") %userName)
|
|
|
|
|
return False
|
|
|
|
|
if not self.addUser(userName, pwdHash):
|
|
|
|
|
return False
|
|
|
|
|
if not addUsersList:
|
|
|
|
|
# add user guest
|
|
|
|
|
if not self.createUserGuest():
|
|
|
|
|