You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
calculate-utils-2.1-client/data/login

67 lines
1.6 KiB

#! /bin/sh
xmes() {
echo "$1:
$2" | iconv -f utf8 -t koi8-r - | xargs xmessage -buttons OK:0 -default OK
}
if [[ "`ps axeo command | grep xdm/logout | grep -v grep | \
sed -n -r 's/.* USER=([^ ]+) .*/\1/p'`" == "$USER" ]];
then
xmessage -buttons "" "Please wait to ending previous session" &
while [[ "`ps axeo command | grep xdm/logout | grep -v grep | \
sed -n -r 's/.* USER=([^ ]+) .*/\1/p'`" == "$USER" ]]
do
sleep 1
done
kill -9 `ps ax | sed -n -r '/grep/!{s/([0-9]+) .*xmessage -buttons Please.*/\1/p}'` &>/dev/null
fi
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 -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 >> $FILE_LOG
xmes cl-sync "$ERRORLOG"
exit 1
fi
fi
if [ -e '/usr/bin/cl-createhome' ];
then
ERRORLOG=`/usr/bin/cl-createhome --progress --color=never $USER`
# при неудачном выполнении, сгенерируем ошибку
if [ "$?" -gt "0" ];
then
echo $ERRORLOG >> $FILE_LOG
ERRORLOG2=`/usr/bin/cl-sync --color=never --logout --nosync $USER`
if [ "$?" -gt "0" ];
then
xmes cl-sync "$ERRORLOG2"
fi
xmes cl-createhome "$ERRORLOG"
exit 1
fi
fi
#очистим кэш
/bin/rm -rf /var/tmp/kdecache-$USER
exit 0