Script iniciante para adm. de usuarios e quotas
Publicado por Anonymous Misteryous 01/05/2008
[ Hits: 8.263 ]
#!/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
Script para conversão do OpenOffice para a lingua portuguesa (pt-BR) a partir do BrOffice
Controle de banda com tc do pacote iproute2
Juntar arquivos divididos por HJsplit
Menu de saída para i3 (versão em Zenity)
Ver endereço IP externo com DuckDuckGo + wget
Nenhum comentário foi encontrado.
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
SystemD e mais polêmicas. (12)
Qual melhor distro para esse notebook? (5)
Novos requisitos de sistema para a versão 26.04 (7)









