Script Para Manutenção de usuários do Sistema

Publicado por Jonathan Silva 08/03/2008

[ Hits: 7.758 ]

Download user




Escrevi este script para automatizar o processo de manutenção de contas de usuários do sistema linux.

OBS.:Não acentuei as palavras para não haver problemas de visualização em  outros computadores.

Espero que seja útil

Jonathan Silva

  



Esconder código-fonte

#!/bin/bash
# Script Para Manutencao de Usuarios no linux
# Criado por Jonathan Silva em 12/02/2008.
# jonathan_silva@msn.com
# Script Escrito e Testado em Conectiva Linux 9
clear
Principal () {
echo "============================================"
echo "|          Manutencao de Usuarios          |"
echo "--------------------------------------------"
echo "Opcoes:"
echo
echo "|1| Adicionar um Usuario no sistema"
echo "|2| Redefinir senha para um Usuario"
echo "|3| Bloquear acesso temporario de Usuario"
echo "|4| Desbloquear acesso de Usuario"
echo "|5| Excluir um Usuario do sistema"
echo "|6| Monitor de Usuarios Logados"
echo "|7| Sair"
echo
echo -n "Digite o Numero Referente a Opcao Desejada?  "
read opcao
case $opcao in
1) Adicionar ;;
2) Senha ;;
3) Bloquear ;;
4) Desbloquear ;;
5) Deletar ;;
6) Monitor ;;
7) clear ; exit ;;
*) "Opcao Desconhecida." ; echo ; clear ; Principal ;;
esac
}
Adicionar () {   
clear
echo "============================================"
echo "|            Adicionar Usuario             |"
echo "--------------------------------------------"
echo "============================================"
echo -n "Digite o nome do Usuario a se adicionar: "
read nome
useradd $nome 
if  [ $? -eq 0 ]; then
echo "Usuario Criado com Sucesso."
else 
echo "Nao foi possivel Criar Usuario."
fi
echo "=================================="
echo "Digite a Senha para este Usuario: "
echo "=================================="
passwd $nome 
sleep 1 
clear
echo "====================================="
echo -n "Deseja Adicionar Outro Usuario [y/n]?: "
read y
if [ $y = y ]
then
clear
Adicionar
else
clear
Principal
fi
}
Senha () {
clear
echo "============================================"
echo "|       Alteracao de Senha de Usuario      |"
echo "--------------------------------------------"
echo "============================================"
echo -n "Digite o nome de Usuario a modificar a senha: "
read nome
echo "======================================"
echo "Digite a nova senha para este Usuario:"
echo "======================================"
passwd $nome
if  [ $? -eq 0 ]; then
echo "==========================="
echo "Senha Alterada com Sucesso."
else 
echo "================================="
echo "Nao foi possivel Alterar a Senha."
fi
sleep 2
clear
Principal
}
Bloquear () {
clear
echo "================================================="
echo "|       Bloqueio de Acesso de Usuario           |"
echo "-------------------------------------------------"
echo "================================================="
echo -n "Digite o nome de Usuario a Bloquear o Acesso: "
read nome
passwd -l $nome
if  [ $? -eq 0 ]; then
echo "=============================="
echo "Usuario Bloqueado com Sucesso."
else 
echo "=================================="
echo "Nao foi possivel Bloquear Usuario."
fi
sleep 2
clear
Principal
}
Desbloquear () {
clear
echo "================================================="
echo "|      Desbloqueio de Acesso de Usuario         |"
echo "-------------------------------------------------"
echo "================================================="
echo -n "Digite o Nome de Usuario a Desbloquear o Acesso: "
read nome
passwd -u $nome
if  [ $? -eq 0 ]; then
echo "================================="
echo "Usuario Desbloqueado com Sucesso."
else 
echo "====================================="
echo "Nao foi possivel Desbloquear Usuario."
fi
sleep 2
clear
Principal
}
Monitor () {
clear
echo "========================================"
echo "  Lista de Usuarios Logados no Sistema  "
echo "----------------------------------------"
echo "Usuario  Terminal  Data  Hora  Usuario  "
echo "========================================"
who
sleep 1 
echo "========================================================"
echo -n "Pressione Qualquer tecla para retornar ao menu Principal"
read tecla
case $tecla  in
*) clear ; Principal ;;
esac
}
Deletar () {
clear
echo "================================================="
echo "|              Exclusao de Usuario              |"
echo "-------------------------------------------------"
echo "================================================="
echo "Para Sair da Lista pressione:(q)"
echo -n "Digite o Nome de Usuario a Excluir [l p/ listar]: "
read nome
if [ $nome = "l" ]
then
gawk -F: '{ print $1 }' /etc/passwd > /tmp/tmp001
less /tmp/tmp001
clear
Deletar
else
userdel -r $nome
if  [ $? -eq 0 ]; then
echo "============================="
echo "Usuario Excluido com Sucesso."
else 
echo "================================="
echo "Nao foi possivel Excluir Usuario."
fi
fi
sleep 1 
clear
echo "===================================="
echo -n "Deseja Excluir Outro Usuario [y/n]?: "
read y
if [ $y = y ]
then
clear
Deletar
else
clear
Principal
fi
}
Principal
#Fim do Script

Scripts recomendados

Backup de bases de dados individuais do PostgreSQL

Ubuntu Fácil

Script para bootsect.lnx

Backup de algumas databases, Remotamente.

Wget Interativo (Via shell)


  

Comentários
[1] Comentário enviado por Andre_A_Ferreira em 27/03/2008 - 10:36h

Simples e Funcional, Parabéns.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts