|
|
|
@ -18,6 +18,8 @@ import os, sys, re, time
|
|
|
|
|
from cl_utils import pathJoin
|
|
|
|
|
from cl_print import color_print
|
|
|
|
|
from encrypt import encrypt
|
|
|
|
|
from os import path
|
|
|
|
|
from cl_utils import pathJoin
|
|
|
|
|
|
|
|
|
|
from cl_lang import lang
|
|
|
|
|
lang().setLanguage(sys.modules[__name__])
|
|
|
|
@ -440,6 +442,22 @@ class migrate(color_print):
|
|
|
|
|
return False
|
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
def createHomeDirs(self,addUsersList,existsMigrateUsers):
|
|
|
|
|
"""Create home directories for all migreate users"""
|
|
|
|
|
def createHome(userdata):
|
|
|
|
|
if not userdata[5].startswith('/dev/'):
|
|
|
|
|
homedir = pathJoin(self.prefixNewSystem,userdata[5])
|
|
|
|
|
if not path.exists(homedir):
|
|
|
|
|
os.mkdir(homedir)
|
|
|
|
|
os.chown(homedir,int(userdata[2]),int(userdata[3]))
|
|
|
|
|
|
|
|
|
|
users = list(set(map(lambda x:x[0],addUsersList)+existsMigrateUsers)-\
|
|
|
|
|
set(["root"]))
|
|
|
|
|
try:
|
|
|
|
|
map(createHome,filter(lambda x:x[0] in users, self.dataUsers))
|
|
|
|
|
except Exception,e:
|
|
|
|
|
raise DistributiveError(_("Cann't create user home directory"))
|
|
|
|
|
|
|
|
|
|
def migrate(self, addUsersList=[], pwdUsersList=[], existsMigrateUsers=[]):
|
|
|
|
|
"""Migrate users ang groups to new system"""
|
|
|
|
|
if not self.checkPermFiles():
|
|
|
|
@ -480,6 +498,7 @@ class migrate(color_print):
|
|
|
|
|
if not self.createUserGuest():
|
|
|
|
|
return False
|
|
|
|
|
self.saveNewFiles()
|
|
|
|
|
self.createHomeDirs(addUsersList,existsMigrateUsers)
|
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
class currentUsers(migrate):
|
|
|
|
|