diff --git a/data/login b/data/login index e82d6bd..8e03584 100644 --- a/data/login +++ b/data/login @@ -3,15 +3,23 @@ env-update source /etc/profile +PATH_LOG='/var/log/calculate' +FILE_LOG="${PATH_LOG}/cl_login-error.log" + +if [ ! -e $PATH_LOG ]; +then + # Создадим директорию логов + mkdir $PATH_LOG +fi # Очистим лог ошибок -echo "" > /var/log/cl_login-error.log +echo -n > $FILE_LOG if [ -e '/usr/bin/cl-sync' ]; then ERRORLOG=`/usr/bin/cl-sync --progress --color=never --login $USER` # при неудачном выполнении, сгенерируем ошибку if [ "$?" -gt "0" ]; then - echo $ERRORLOG > /var/log/cl_login-error.log + echo $ERRORLOG >> $FILE_LOG xmessage -buttons OK:0 -default OK "cl-sync: $ERRORLOG" exit 1 @@ -24,7 +32,7 @@ then # при неудачном выполнении, сгенерируем ошибку if [ "$?" -gt "0" ]; then - echo $ERRORLOG >> /var/log/cl_login-error.log + echo $ERRORLOG >> $FILE_LOG ERRORLOG2=`/usr/bin/cl-sync --color=never --logout --nosync $USER` if [ "$?" -gt "0" ]; then diff --git a/pym/cl_client.py b/pym/cl_client.py index fed2d2d..45ebd85 100644 --- a/pym/cl_client.py +++ b/pym/cl_client.py @@ -1953,7 +1953,18 @@ or ld_bind_dn or ld_bind_pw") skipDirs))==len(skipDirs): pathNewProfile = os.path.join(pathOldProfile,".CLD") # Копируем профиль в новое место - self.copyProfileDir(pathNewProfile, pathOldProfile) + try: + self.copyProfileDir(pathNewProfile, pathOldProfile) + except: + self.printERROR(_("Error updating user profile")) + self.printERROR(_("path: %s")%pathNewProfile) + return False + pathNewProfile = os.path.join(pathOldProfile, + "." + osLinuxShort) + if not os.path.exists(pathNewProfile): + # Создаем директорию для хранения профиля + os.mkdir(pathNewProfile) + os.chmod(pathNewProfile, 0700) return True def syncUser(self, userName, userHome, sync, uid, gid, progress=False,\