Adicionando novo usuário manualmente
Publicado por Gabriel Falcão Gonçalves de Moura 10/12/2007
[ Hits: 10.710 ]
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!"
Criação de servidores de arquivos simples com Samba
Ativando o MRTG para Roteadores via SNMP
Dicionário e tradutor baseado no Michaelis
Berry Bank: Criando um Banco Digital Gamificado para seus Filhos com Gentoo, Flask e Tailscale
Papagaiando o XFCE com temas e recursos
Instale o DOOM Retro no Gentoo facilmente via Overlay
Steam (Flatpak) rodando jogos em partição NTFS
O dock Plank + U-Launcher deixam qualquer desktop mais produtivo
Instalar Linux em notebook Sony Vaio VPCEG13EB (17)
Alguém tem que acabar com ANATEL!!! (10)
O que você está ouvindo agora? [2] (229)









