Script iniciante para adm. de usuarios e quotas
Publicado por Anonymous Misteryous 01/05/2008
[ Hits: 8.194 ]
#!/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
InstallDPKG reformulado - instalando pacotes DEB no Slackware
Shell Script para consulta a Wikipedia utilizando linhas de comando
Reduz ou aumenta o tamanho da imagem
Instalador de Lutris com winehq-staging para rodar Origin em Debian Bullseye (Kernel 5.10.0-23) - 64
Papel de parede mundial ( para quem usa GUI )
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (11)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









