Administração de Usuários
Publicado por Edersom 26/11/2004
[ Hits: 9.991 ]
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
Ferramenta para o CBQ - parte 1
mailnow - Envia mensagens pelo shell
Gerar arquivos CSV no postgresql
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Quebra de linha na data e hora no Linux Mint
Organizando seus PDF com o Zotero
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (9)
Problema com Conexão Outlook via Firewall (OpenSUSE) com Internet Fibr... (5)