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.
74 lines
1.8 KiB
74 lines
1.8 KiB
#! /bin/sh
|
|
|
|
|
|
xmes() {
|
|
xmessage -buttons OK:0 -default OK "`echo \"$1:
|
|
$2\" | iconv -f utf8 -t koi8-r - `"
|
|
}
|
|
|
|
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
|
|
# если права на файл не ровны
|
|
if [[ "`stat /var/log/calculate | sed -n -r '/Access: \(/ {s/.*\([0-9]([^/]+).*/\1/;p}'`" != "755" ]];
|
|
then
|
|
chmod 755 $PATH_LOG
|
|
fi
|
|
|
|
# Очистим лог ошибок
|
|
echo -n "" > $FILE_LOG
|
|
if [ -e '/usr/bin/cl-sync' ];
|
|
then
|
|
ERRORLOG=`/usr/bin/cl-sync --progress --color=never --login $USER 2>&1`
|
|
# при неудачном выполнении, сгенерируем ошибку
|
|
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 2>&1`
|
|
# при неудачном выполнении, сгенерируем ошибку
|
|
if [ "$?" -gt "0" ];
|
|
then
|
|
echo "$ERRORLOG" >> $FILE_LOG
|
|
ERRORLOG2=`/usr/bin/cl-sync --color=never --logout --nosync $USER 2>&1`
|
|
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
|