Enviado em 29/08/2014 - 09:05h
Bom dia amigos, estou com uma missão aqui na empresa e preciso de ajuda de vocês. Preciso determinar no servidor que os usuários desloguem automaticamente após 5 minutos. Só que será apenas algum usuarios, como vendedores, PDV, etc. Para evitar o login duplo eu uso o seguinte script abaixo:
# limite de logins do usuario
LIMIT=`grep $USER /home/usuarios.txt | cut -d "=" -f2`
# Rotina para checagem do limite estabelecido
trap "logout" 2 20
TTY=$(tty | sed 's/\/dev\///g')
nlog=$(who | cut -d ' ' -f1 | grep $USER | wc -l)
if [ $nlog -gt $LIMIT ]; then
clear;
echo -e '\e[33;1m'
echo -n "
==================================================================
Voce ja tem $((nlog-1)) $IDLE sessao aberta. Deseja elimina-la? (s/n): "
read op
echo -e '\e[m'
case $op in [sS]) for i in `ps U $USER | grep -vw $TTY | \
awk '{print $1}'`; do kill -9 $i 2> /dev/null;
trap 2 20;
done;;
*) exit; logout;;
esac
fi
Dentro do arquivo /home/usuarios.txt contém cada usuário e a quantidade de sessões que podem ser abertas. Gostaria de saber se os amigos conhecem alguma forma de definir um tempo máximo de timeout para alguns usuarios, pode ser até mesmo no bash_profile de cada um.
# limite de logins do usuario
LIMIT=`grep $USER /home/usuarios.txt | cut -d "=" -f2`
# Rotina para checagem do limite estabelecido
trap "logout" 2 20
TTY=$(tty | sed 's/\/dev\///g')
nlog=$(who | cut -d ' ' -f1 | grep $USER | wc -l)
if [ $nlog -gt $LIMIT ]; then
clear;
echo -e '\e[33;1m'
echo -n "
==================================================================
Voce ja tem $((nlog-1)) $IDLE sessao aberta. Deseja elimina-la? (s/n): "
read op
echo -e '\e[m'
case $op in [sS]) for i in `ps U $USER | grep -vw $TTY | \
awk '{print $1}'`; do kill -9 $i 2> /dev/null;
trap 2 20;
done;;
*) exit; logout;;
esac
fi
Dentro do arquivo /home/usuarios.txt contém cada usuário e a quantidade de sessões que podem ser abertas. Gostaria de saber se os amigos conhecem alguma forma de definir um tempo máximo de timeout para alguns usuarios, pode ser até mesmo no bash_profile de cada um.