Administração de Usuários
Publicado por Edersom 26/11/2004
[ Hits: 9.879 ]
Script criado, inicialmente, para auxiliar na manutenção dos usuários em um servidor NIS, onde qualquer pessoa posia adicionar um usuário. mesmo não conhecendo o linux, mas eu transformei ele em um script de manutenção de usuários bem simples, com as funcionalidades básicas (adicionar e remover usuários).
Ele é todo feito usando a ferramenta Dialog, que deixa o script com uma carinha mais amigável.
#!/bin/bash # # SCRIPT: manut.sh # AUTOR: EDERSOM ANGELO DA SILVA (maxmaxine@pop.com.br) # DATA 26/11/2004 # REV: 1.1.0p # PLATAFORMA: Linux (para Slackware deve ser modificado) # # FINALIDADE: # AUXILIAR NA MANUTENÇÃO DE USUÁRIOS # # # LISTA DE REVISÃO: # DATA: # POR: # MODIFICAÇÃO: # # LICENÇA: GLP # # # set -n #Tire o comentário para verificar a sintaxe # #Sem executar o Script # set -x #Retire o comentário para depurar o script (apenas com ksh (korn shell)) # ########################################### #### AQUI ESTAO INDICADAS AS VARIAVEIS #### ########################################### ESCOLHA_MENU=menu DIALOG=${DIALOG=dialog} BACK=${BACK=Tux o Pinguim Selvagem} TITU=${TITU=Sistema Para Manutenção de Usuários} tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$ passwd=`tempfile 2>/dev/null` || passwd=/tmp/test$$ user=`tempfile 2>/dev/null` || user=/tmp/user$$ trap "rm -f $tempfile" 0 1 2 5 15 ######################################## #### INICIO DE MAIN #### ######################################## while : do # case $ESCOLHA_MENU in menu) $DIALOG \ --cancel-label "SAIR" \ --clear \ --title "$TITU" \ --backtitle "$BACK" \ --menu " \n\ Data: `date` \n\ A ultima opçao escolhida foi: $ESCOLHA_MENU \n\ Escolha uma das opçoes abaixo: \n\n\ " 24 68 8 \ "Au" "Adicionar Usuário" \ "Ru" "Remover usuário" \ "Lu" "Listar usuários logados (inútil mas interessante" \ "Qu" "Sair" 2>$tempfile retval=$? case $retval in 1) exit 0 ;; esac ESCOLHA_MENU=`cat $tempfile` ;; #------------------------------------------------------------------------------------------------------------------------------- #Adiciona Usuário Au) $DIALOG \ --no-cancel \ --backtitle "$BACK" \ --title "$TITU" \ --inputbox \ "Insira o nome para o qual deseja adicionar o usuário" 0 0 2>$user retval=$? if ["$retval" != 0 ] then ESCOLHA_MENU=menu else $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --passwordbox \ "Insira a senha para o usuário `cat $user`" 0 0 2>$passwd retval=$? if [ "$retval" == 0 ] then #cria o usuário adduser `cat $user` echo `cat $passwd` | passwd `cat $user` --stdin # cd /var/yp;make #Atualiza a lista de usuários no servidor NIS ESCOLHA_MENU="menu" else ESCOLHA_MENU="menu" fi fi ;; #------------------------------------------------------------------------------------------------------------------------------- # Remove usuário Ru) $DIALOG \ --no-cancel \ --backtitle "$BACK" \ --title "$TITU" \ --inputbox \ "Digite o loguim do usuário a ser removido" 0 0 2>$user if [ "$?" == 0 ] then userdel -r `cat $user` # cd /var/yp;make # groupdel $user # cd /var/yp;make $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --msgbox \ "Usuário removido com êxitto (eu acho =D)" 0 0 2>$user ESCOLHA_MENU=menu else ESCOLHA_MENU=menu fi ;; #------------------------------------------------------------------------------------------------------------------------------- # Exibe usuários Logados Lu) w >$user user1=`cat $user` $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --textbox \ "$user" 0 0 ESCOLHA_MENU=menu ;; #------------------------------------------------------------------------------------------------------------------------------- # Sai do sistema Qu) exit 0 ;; esac done
Player de música em Shell com Yad
Criação de usuario / gerando senha automatica
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Criando uma VPC na AWS via CLI
Multifuncional HP imprime mas não digitaliza
Dica básica para escrever um Artigo.
Como Exibir Imagens Aleatórias no Neofetch para Personalizar seu Terminal
Instalação Uefi com o instalador clássico do Mageia [RESOLVIDO] (2)
Melhorando a precisão de valores flutuantes em python[AJUDA] (11)
GLPI - Configuração de destinatário com conta Microsoft Exchange (0)