Adicionar usuarios em lote com senha padrao
Publicado por Jônatas Ramiro Goulat (última atualização em 05/07/2011)
[ Hits: 13.829 ]
Este é meu primeiro script que publico. Espero que ajude alguém :)
Ele cria varias contas no linux com senha "123456" e força a troca da mesma no primeiro login.
O arquivo com os nomes podem ser o nome completo , que vai ficar apenas o primeiro e o ultimo separados por ponto. Ou apenas um nome. ex:
[root@localhost tmp]# cat nome_contas
jonatas ramiro goulart
fulano rosa da silva
cicrano sousa
suzan
O resultado será a crianção das seguintes contas:
jonatas.goulart
fulano.silva
cicrano.sousa
suzan
Eu testei e funcionou no Fedora 15, Red Hat 5.6 e Centos 5.1 . Mais infelizmente não funcionou no Ubuntu por que o passwd não possui suporte para alterar a entrada padrão. Para saber se vai funcionar é preciso dar uma olhada no man do passwd se ele tem suporte a --stdin
E como é de bom costume , segue o link que ajudou-me
http://www.unix.com/shell-programming-scripting/41773-modify-users-password-via-script.html
peguei a dica do zazzybob ,
#!/bin/bash SENHA="123456" #Senha padrao para todos os logins USUARIO=`whoami` # Verifica qual usuario que executou o script LISTA_USUARIOS=/tmp/nome_contas # Arquivo com a lista de nomes # Verifica se é o root. se nao for, termina a execução if [ $USUARIO != "root" ] ; then echo "O script precisa ser executado como root" exit fi for CONTA in `sed 's/ .* /./;s/ /./' $LISTA_USUARIOS` do #Verifica se a conta nao existe. Se existir, não cria novamente if [ -z `cat /etc/passwd|grep "\b$CONTA\b"` ] ; then # cria a conta useradd -m -d /home/$CONTA $CONTA # altera a senha # Nem tudas as versoes do passwd possuem suporte ao parametro --stdin echo $SENHA | passwd --stdin $CONTA # força que a senha seja trocada no primeiro login chage -d 0 $CONTA fi done
Inventário e Análise de hardware
Script de controle do Alfresco para RHEL / CentOS / Fedora
Como escolher o melhor escalonador de CPU para melhorar o desempenho da máquina
Curiosidade sobre DOOM Guy e Isabelle de Animal Crossing
Inicializando servidor Ubuntu na AWS e rodando apache em Container
Conheça o Octopi, outro frontend para o Pacman com acesso ao ARU (Arch Linux e derivados)
Terminal transparente no Debian 12 com interface i3wm usando Xfce4-Terminal e Compton
Como compilar o DOOM RETRO no Linux
Stacer - um otimizador gráfico básico de Linux
Corrigindo o erro de "WARNING: Possibly missing firmware for module" no Arch Linux
Não consigo iniciar o Linux normalmente (0)
no kubuntu 24.04 apaga monitor e não acende mais (1)
Após atualização do Ubuntu 22.04.4 LTS perdi a instalação da placa de ... (1)
Como colocar uma assinatura digital em um código compilado ! (0)