|
|
|
@ -648,7 +648,10 @@ conjunction with the 'login' or 'logout'")
|
|
|
|
|
def errorExit(self):
|
|
|
|
|
"""Отмонтирование пользовательских ресурсов при ошибке"""
|
|
|
|
|
if self.errorAndUnmountUserRes and self.userName:
|
|
|
|
|
self.umountUserResNoSync(self.userName, False, False, False, True)
|
|
|
|
|
# Установка ошибки в профиль пользователя на сервере
|
|
|
|
|
# и отмонтирование ресурсов
|
|
|
|
|
self.umountUserResNoSync(self.userName, False, False, False, True,
|
|
|
|
|
flagErrorSync=True)
|
|
|
|
|
|
|
|
|
|
def __del__(self):
|
|
|
|
|
"""Выполняется при удалении объекта"""
|
|
|
|
@ -1865,7 +1868,8 @@ or ld_bind_dn or ld_bind_pw")
|
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
def umountUserResNoSync(self, userName, printError=True, printSuccess=True,
|
|
|
|
|
isXsession=True, killRsync=False, progress=False):
|
|
|
|
|
isXsession=True, killRsync=False, progress=False,
|
|
|
|
|
flagErrorSync=False):
|
|
|
|
|
"""Отмонтирование пользовательских ресурсов
|
|
|
|
|
|
|
|
|
|
без синхронизации настроек"""
|
|
|
|
@ -1909,6 +1913,23 @@ or ld_bind_dn or ld_bind_pw")
|
|
|
|
|
flagError = False
|
|
|
|
|
if self.isMount(serverHomePath, "cifs"):
|
|
|
|
|
self.moveHomeDir(homeDir)
|
|
|
|
|
# Записываем ошибку синхронизации
|
|
|
|
|
if flagErrorSync:
|
|
|
|
|
pathProfileCurr = dictRes["profile"]["path"]
|
|
|
|
|
osLinuxShort = self.clVars.Get("os_linux_shortname")
|
|
|
|
|
# Находим директорию профиля
|
|
|
|
|
homeProfile = os.path.join(path, osLinuxShort)
|
|
|
|
|
if not os.path.exists(homeProfile):
|
|
|
|
|
homeProfile = os.path.join(path, "." + osLinuxShort)
|
|
|
|
|
if os.path.exists(homeProfile):
|
|
|
|
|
configFileName = os.path.join(homeProfile, self.pathConfig,
|
|
|
|
|
self.configFileDesktop)
|
|
|
|
|
logOutFile = os.path.join(homeProfile,self.logOutFile)
|
|
|
|
|
uid = os.stat(homeProfile).st_uid
|
|
|
|
|
gid = os.stat(homeProfile).st_gid
|
|
|
|
|
self.createUserFile(logOutFile,"ERROR", uid, gid)
|
|
|
|
|
self.setVarToConfig("main", {"status_sync":"error"},
|
|
|
|
|
configFileName, uid, gid)
|
|
|
|
|
for name in names:
|
|
|
|
|
path = dictRes[name]["path"]
|
|
|
|
|
if self.isMount(path ,"cifs"):
|
|
|
|
@ -2528,6 +2549,11 @@ or ld_bind_dn or ld_bind_pw")
|
|
|
|
|
if not self.unpackProfile(homeDir, archPathSuccess,
|
|
|
|
|
progress, remoteServer):
|
|
|
|
|
flagError = True
|
|
|
|
|
if archPathSuccess:
|
|
|
|
|
# Удаление архивного файла
|
|
|
|
|
if os.path.exists(archPathSuccess):
|
|
|
|
|
# Удаляем файл архива
|
|
|
|
|
os.remove(archPathSuccess)
|
|
|
|
|
break
|
|
|
|
|
# Cканирование домашней директории и получение списка
|
|
|
|
|
# файлов
|
|
|
|
|