Administração de Usuários
Publicado por Messias Manoel da Silva Junior 14/07/2009
[ Hits: 8.903 ]
Permite em modo gráfico ( kdialog ) adicionar usuário, remover usuário, listar usuários,
adicionar um usuário num grupo, listar grupos, adicionar grupos, remover grupos...
O script é todo intuitivo. Espero que gostem.
#!/bin/bash # Autor: Messias Manoel da Silva Junior #Script: Gerenciamento de Sistema #Data: 15/05/2009 # # ----- Variáveis ---- addusuario=$(which useradd) delusuario=$(which userdel) blqusuario=$(which passwd) addgrupo=$(which addgroup) remgrupo=$(which groupdel) addusergrp=$(which gpasswd) # ---- Tela de Boas vinda kdialog \ --title " ------------ Seja Bem Vindo ------------ " \ --msgbox "Este script te ajudará nas tarefas de administração do sistema." while [ 1 = 1 ]; do # ----- Exibi o menu na tela. resultado=$( kdialog --title "- Admin de Usuários" \ --menu " O que você gostaria de fazer? " \ 1 "Adicionar usuário" \ 2 "Remover usuário" \ 3 "Bloquear usuário" \ 4 "Desbloquear usuário" \ 5 "Adicionar grupo" \ 6 "Remover grupo" \ 7 "Adicionar usuário ao grupo" \ 8 "Verificar usuários existentes" \ 9 "Verificar grupos existentes" \ 0 "Sair" ) # --- Se for presionado CANCELAR ou ESC, sai do script [ $? -ne 0 ] && break case $resultado in 1) nome=`kdialog --inputbox "Digite o nome do usuário"` # --- Verifica se o sudo está ativo souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$addusuario -d /home/$nome -s /bin/bash $nome" clear kdialog --msgbox "Usuário Adicionado com Sucesso" fi ;; 2) kdialog --msgbox "Listando a relação de usuários para você:" awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Lista de Usuários" \ --textbox /tmp/usuarios.txt 290 80 nomedel=`kdialog --inputbox "Digite o nome do usuário que deseja remover:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$delusuario -r $nomedel" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Usuário "$nomedel" removido com sucesso." fi ;; 3) kdialog --msgbox "Listando a relação de usuários para você:" awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Lista de Usuários" \ --textbox /tmp/usuarios.txt 290 80 nomebloq=`kdialog --inputbox "Digite o nome do usuário que deseaja bloquear:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$blqusuario -l $nomebloq" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Usuário "$nomebloq" bloqueado com sucesso" fi ;; 4) kdialog --msgbox "Listando a relação de usuários para você:" awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Relação dos Usuários no Sistema" \ --textbox /tmp/usuarios.txt 290 80 nomedesbloq=`kdialog --inputbox "Digite o nome do usuário que deseaja desbloquear:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$blqusuario -u $nomedesbloq" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Usuário "$nomedesbloq" desbloqueado com sucesso." \ fi ;; 5) kdialog --msgbox "Listando a relação de grupos para você:" awk -F : '$3 > 1000 {print"Grupo: " $1 }' /etc/group > /tmp/grupos.txt kdialog --title "Relação dos Grupos no Sistema" \ --textbox /tmp/grupos.txt 290 80 nomegrupo=`kdialog --inputbox "Digite o nome do grupo que deseaja criar: "` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo $addgrupo $nomegrupo fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Grupo "$noegrupo" adicionado com sucesso" fi ;; 6) awk -F : '$3 > 1000 {print"Grupo: " $1 }' /etc/group > /tmp/grupos.txt kdialog --title "Relação dos Grupos no Sistema" \ --textbox /tmp/grupos.txt 290 80 grupo=$`kdialog --msgbox "Digite o nome do grupo que deseja remover: "` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$remgrupo $GROUP" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Grupo "$regrupo" removid coom sucesso" fi ;; 7) # ---- Lista de usuários -------------- awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt # -------------------------------------- # ---- Lista de grupos -------------- awk -F : '$3 > 1000 {print" Grupo: "$1 }' /etc/group > /tmp/grupos.txt # ------------------------------------ # ---- Cocatenando os dois arquivos --------- paste -d" " /tmp/usuarios.txt /tmp/grupos.txt > /tmp/cocat.txt # ------------------------------------------- kdialog --title "Lista de usuários e grupos para você:" \ --textbox /tmp/cocat.txt 290 80 usergrupo=`kdialog --inputbox "Digite o nome do usuário existente que deseja adicionar no grupo:"` grupouser=`kdialog --inputbox "Digite o nome do grupo existente que o usuário deve ser adicionado:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$addusergrp -a $usergrupo $grupouser" fi if [ $? = 0 ]; then kdialog --msgbox "Usuário "$usergrupo" adicionado no grupo "$grupouser" com sucesso" else kdialog --msgbox "Comando invalido." fi ;; 8) awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Relação dos Usuários no Sistema" \ --textbox /tmp/usuarios.txt 290 80 ;; 9) awk -F : '$3 > 1000 {print"Grupo: " $1 }' /etc/group > /tmp/grupos.txt kdialog --title "Relação dos Grupos no Sistema" \ --textbox /tmp/grupos.txt 290 80 ;; 0) break ;; *) kdialog -- msgbox "Cancelado" ;; esac done
Instalar última versão do Java automaticamente em "todas as plataformas"
Conversor de logs do svn para rss
Conversor de Dicionarios do Babylon
Cluster multi-master com MariaDB 10.1 + Galera
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
O Que Fazer Após Instalar Ubuntu 25.04
O Que Fazer Após Instalar Fedora 42
Debian 12 -- Errata - Correções de segurança
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Música que eu compus, será que ficou boa? (5)
Instalação de Drivers da Placa de Vídeo [RESOLVIDO] (5)
NAT LoopBack - Hairpin NAT (0)
Alguém poderia me ajudar a escolher peças pra montar um desktop? (3)