Adicionando novo usuário manualmente
Publicado por Gabriel Falcão Gonçalves de Moura 10/12/2007
[ Hits: 10.223 ]
Homepage: http://gabrielfalcao.com
Este é um exemplo de como adicionar usuários manualmente no sistema.
Cria usuário e script para que no primeiro logon o usuário tenha que definir sua senha.
#!/bin/sh if [ $USER != 'root' ]; then echo "Voce precisa ser root para adicionar usuarios!" exit 1 fi UIDSX=`cat /etc/passwd| cut -d: -f3` USERSX=`cat /etc/passwd| cut -d: -f1` BIGUID=0 for UiD in $UIDSX; do if [ $UiD -gt $BIGUID ]; then BIGUID=$UiD fi done MYUID=$(($BIGUID + 1)) GIDSX=`cat /etc/group | cut -d: -f3` GROUPSX=`cat /etc/group | cut -d: -f1` BIGGID=0 for GiD in $GIDSX; do if [ $GiD -gt $BIGGID ]; then BIGGID=$GiD fi done MYGID=$(($BIGGID + 1)) UsuarioExiste(){ FLAG=1 for USUARIO in $USERSX; do if [ $1 == $USUARIO ]; then echo $GRUPO FLAG=0 fi done return $FLAG } GrupoExiste(){ FLAG=1 for GRUPO in $GROUPSX; do if [ $1 == $GRUPO ]; then echo $GRUPO FLAG=0 fi done return $FLAG } echo "Digite um novo USERNAME nos padroes posix:" read MYUSER UsuarioExiste $MYUSER if [ $? == 0 ]; then echo "Usuario $MYUSER ja existe!" exit 1 fi GrupoExiste $MYUSER if [ $? == 0 ]; then echo "Ja existe um grupo com o nome de usuario escolhido, tente novamente com outro nome" exit 1 fi echo "Digite o nome real do usuario" echo "(Letras, numeros e/ou espacos)" echo "Nome:" read NOME echo "Adicionando usuario $MYUSER com o uid $MYUID..." sleep 1 echo "$MYUSER::$MYUID:$MYGID:$NOME:/home/$MYUSER:/bin/bash" >> /etc/passwd echo "Adicionando grupo $MYUSER com o gid $MYGID..." sleep 1 echo "$MYUSER:x:$MYGID:$MYUSER" >> /etc/group echo "Criando home do usuario: /home/$MYUSER..." mkdir /home/$MYUSER sleep 0.5 if [ $? == 1 ]; then echo "Erro ao criar home do usuario, tente criar manualmente..." sleep 0.5 else echo "Usuario $MYUSER criado com sucesso!" fi echo "Criando configuracoes basicas para o usuario $MYUSER..." sleep 0.5 cp -R /etc/skel/.bash* /home/$MYUSER/ if [ $? == 0 ]; then echo 'Sucesso!' else echo 'Falhado. Algumas configuracoes podem nao ter sido feitas...' sleep 1 fi chown -R $MYUSER /home/$MYUSER chgrp -R $MYUSER /home/$MYUSER echo "Proximo login vai criar senha..." echo '#!/bin/sh' >> /home/$MYUSER/criasenha.sh echo 'clear' >> /home/$MYUSER/criasenha.sh echo 'echo "Crie uma senha para o seu usuario:"' >> /home/$MYUSER/criasenha.sh echo 'echo ""' >> /home/$MYUSER/criasenha.sh echo 'passwd' >> /home/$MYUSER/criasenha.sh echo '[ -f /etc/skel/.bashrc ] && cat /etc/skel/.bashrc > .bashrc' >> /home/$MYUSER/criasenha.sh echo 'rm -f `echo $0`' >> /home/$MYUSER/criasenha.sh chmod +x /home/$MYUSER/criasenha.sh echo './criasenha.sh' > /home/$MYUSER/.bashrc echo 'PRONTO!' "Usuario $MYUSER criado com sucesso!"
Backup Automatizado (atualizado)
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - RESUMO DE MSGS COM VIRUS
Instalação e configuração do celular Nokia 6670 no Ubuntu 8.10
Shell Script / Perl para sincronizar base de usuários do AD com o Zimbra
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
erro ao clonar repo github (7)
ASRock H310CM-HG4 vs Linux (1)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (26)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba