Agora a segunda parte:
Impedir que usuário “guest” (aluno) desligue/reinicie o micro
Criar um arquivo “disable-shutdown.pkla” em /etc/polkit-1/localauthority/50-local.d/ contendo:
#-------disable-shutdown.pkla-----
[Disable Shutdown, etc.]
Identity=unix-group:aluno
Action=org.freedesktop.login1.reboot-multiple-sessions;org.freedesktop.login1.power-off-multiple-sessions;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no
#-------disable-shutdown.pkla-----
Adicione os usuários admin e professor ao grupo alunos para um melhor gerenciamento na hora de desligar.
O usuário guest (aluno) poderá desligar/reiniciar o micro se mais ninguém estiver logado (multiterminal), para ter acesso a esta funcionalidade deverá utilizar-se de um script pois o menu não mais exibe o botão de desligar/reiniciar.
Somente o professor verá este botão se nenhum outro usuário estiver logado.
Exemplo de script para desligar/reiniciar:
#----AlunoDesligar.sh--------
#!/bin/bash
#Desenvolvido por Ricardo Luis Madiuto
#20/12/2017
Logout(){
gnome-session-quit --logout
}
Desligar(){
qt_logados=$(who | cut -d’ ’ -f1|sort -u|wc -l)
if [ $qt_logados -eq 1 ];then
gnome-session-quit --power-off --force
else
erro_msg
fi
}
Reiniciar(){
qt_logados=$(who | cut -d’ ’ -f1|sort -u|wc -l)
if [ $qt_logados -eq 1 ];then
gnome-session-quit --reboot
else
erro_msg
fi
}
erro_msg(){
yad --center --on-top --title=“Erro!!!”
–image=’/usr/share/icons/system-shutdown.png’
–text-align=center
–text="\n\nNão Posso Continuar! \nExiste mais usuários logados! "
–width 400
–height 200
–button=“Ok”
}
menu(){ yad
–window-icon=’/usr/share/icons/system-shutdown.png’
–timeout=15
–timeout-indicator=bottom
–center
–dialog-sep
–borders=2
–title=“Encerrar Seção”
–form
–image=’/usr/share/icons/system-shutdown.png’
–field=’’:LBL ‘’
–field=‘Logout’:BTN “$0 Logout”
–field=’’:LBL ‘’
–field=‘Reiniciar!’:BTN “$0 Reiniciar”
–field=’’:LBL ‘’
–field=‘Desligar!’:BTN “$0 Desligar”
–width 400
–height 200
–button=“Sair”:3
}
case $1 in
’Desligar’) Desligar
;;
‘Reiniciar’) Reiniciar
;;
‘Logout’) Logout
;;
*) menu
;;
esac
exit 0
#----AlunoDesligar.sh--------
Salve em /usr/bin/AlunoDesligar.sh
Neste script foi utilizado o yad (Yet another dialoging program) que deverá ser instalado.
O icone /usr/share/icons/system-shutdown.png não existe originalmente no LE6, podendo ser substituído por outro.