Script iniciante para adm. de usuarios e quotas
Publicado por Anonymous Misteryous 01/05/2008
[ Hits: 8.102 ]
#!/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
Tabela do Campeonato Brasileiro Direto no Terminal
Gerador de Pacotes de Instalação
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (0)
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)