Script iniciante para adm. de usuarios e quotas
Publicado por Anonymous Misteryous 01/05/2008
[ Hits: 8.140 ]
#!/bin/bash
#Organizando os menus
trap '' 2
Principal() {
echo -e '\e[33;1m UNIVERSIDADE FEDRAL DE MATO GROSSO - CPD\e[m'
echo "------------------------------------------"
echo "Opções:"
echo
echo "1. Criar conta de usuarios "
echo "2. Mudar senha de usuarios"
echo "3. Verifica quota de usuario"
echo "4. Limpa Area de usuarios de email com quota estourada"
echo "5. Desliga quota Geral"
echo "6. Desliga quota de um usuario especifico"
echo "7. Liga novamente a quota do usuario do item 6 "
echo "8. Liga quota Geral "
echo "9. SAIR"
echo -n "Qual a opção desejada? "
read -n1 opcao
#read -n1 -t15 opcao
echo ' '
# trap 'echo \$\$ Iniciando Menu.;return' 2
case $opcao in
1) Criar ;;
2) Mudar ;;
3) Verificar ;;
4) Limpar ;;
5) Desligar ;;
6) Desligaruser ;;
7) Ligaruser ;;
8) Ligar ;;
9) Sair ;;
*) clear; echo "Você tem de entrar com um parâmetro válido" ; Principal ;;
# *) "Opcao Desconhecida." ; echo ; Principal ;;
esac
}
Criar() {
#if [ $opcao -eq 1 ];then
echo -n "Digite o nome do usuario ( ate 20 caracteres)[]: "
read usuario
adduser $usuario
echo -e "{FONTE}33[33;1mUsuario $usuario criado com sucesso! {FONTE}33[m"
Principal
}
Mudar() {
#elif [ $opcao -eq 2 ];then
echo -n "Digite o nome do usuario[]: "
read usuario
passwd $usuario
echo "Senha do usuario $usuario alterada!"
Principal
}
Verificar() {
#elif [ $opcao -eq 3 ]; then
echo -n "Digite o nome do usuario[]: "
read usuario
repquota -a |grep $usuario
Principal
}
Limpar() {
#elif [ $opcao -eq 4 ];then
echo -n "Esta opcao limpara a area dos usuarios de email com quota
estourada. Deseja Continuar? (s/n)"
read var
if [ $var = "s" ]; then
for i in $(repquota -a| grep --color '+' | awk -F " " '{print $1}')
do
cp /usr/local/openwebmail/users/$i/mail/sent-mail /root/bkpMAIL/sent-mail_$i 2> /dev/null
if [ -e /root/bkpMAIL/sent-mail_$i ]
then
cat /dev/null >/usr/local/openwebmail/users/$i/mail/sent-mail
cat /dev/null >/usr/local/openwebmail/users/$i/mail/mail-trash
else
echo -e "Nao foi possivel copiar. Nao sera apagado o sent-mail do usuario $i"
#exit
echo -e "backup -> $i"
fi
done
Principal
elif [ $var = "n" ];
then
Principal
fi
}
Desligar() {
echo "Esta opcao desligara a quota para todos os usuarios. Deseja
continuar?(s/n)"
read var
if [ $var = "s" ];
then
/sbin/quotaoff -avug; echo "quota Desligada"
else
Principal
fi
}
Desligaruser() {
echo -n "Digite o nome do usuario[]: "
read user
setquota -u $user 0 0 0 0 -a
echo -e "\e[33;1mQuota do usuario desligada com sucesso! Nao esqueca de religa-la dentro de alguns minutos!\e[m"
Principal
}
Ligaruser() {
setquota -u $user 40000 40000 0 0 -a
echo -e "\e[33;1mA quota para o usuario foi religada com sucesso!"
Principal
}
Ligar() {
/sbin/quotaon -avug
echo "Quotas ligadas com sucesso"
Principal
}
Sair() {
echo "Deseja sair? (s/n)"
read var
if [ $var = "s" ];
then
exit
else
Principal
fi
}
Principal
Corrigindo problema com Splash no Ubuntu
Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
Data e Hora (Observatório Nacional) usando o "Lynx"
Nenhum comentário foi encontrado.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
Erro no suitable vídeo mode (0)
Erro no suitable vídeo mode (0)
Erro no suitable vídeo mode (0)
ERRO: LAZARUS 4.2 64 no Linux MINT não entra mais apos ajustar desktop... (0)









