Criar usuários em grupos [RESOLVIDO]

1. Criar usuários em grupos [RESOLVIDO]

Helton Oliveira
heltonoliveira

(usa Debian)

Enviado em 20/11/2014 - 21:01h

Olá galera!

Preciso fazer a seguinte questão: Crie os seguintes usuários: usuario01 a usuário50 pertencentes ao grupoA e
usuario51 a usuario100 pertencentes ao grupoB.

Se alguém puder me ajudar eu agradeço.
Vlw :D


  


2. MELHOR RESPOSTA

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 21/11/2014 - 20:05h

Prezado, segue abaixo o novo script. Testei no Fedora 20 sem problemas, caso apresente algum erro na execução do script, pode ser decorrente de algum compilador para o perl. Acredito que não vá dar problemas.

----------------------------------------------

#!/bin/bash

# Declaração das variáveis #
USERADD=/usr/sbin/useradd
GROUPADD=/usr/sbin/groupadd
GPASSWD=/usr/bin/gpasswd
#--------------------------#

# Criptograr a senha dos usuários
PASSWORD="OC@2015"
PASS=$(perl -e 'print crypt($ARGV[0], "PASSWORD")' $PASSWORD)
#------------------------------------------------------------#

$GROUPADD grupoA
$GROUPADD grupoB

for((i=1; i <= 50; i++))
do

$USERADD -m -d /home/usuario$i -s /bin/bash -p $PASS usuario$i
$GPASSWD -a usuario$i grupoA

done

for((i=51; i <= 100; i++))
do

$USERADD -m -d /home/usuario$i -s /bin/bash usuario$i
$GPASSWD -a usuario$i grupoB

done

----------------------------------

Se o comando useradd for utilizado com o -p "senha" sem esta está criptografada já no formato hash, por isso, utilizei os comandos em perl para esta finalidade.

De uma boa olhada no código, estude-o e procure aprendê-lo, Qualquer coisa é só postar.

3. Re: Criar usuários em grupos [RESOLVIDO]

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 20/11/2014 - 22:22h

Prezado, segue abaixo uma possível resolução para o seu problema:

#!/bin/bash

# Declaração das variáveis #
USERADD=/usr/sbin/useradd
GROUPADD=/usr/sbin/groupadd
GPASSWD=/usr/bin/gpasswd
#--------------------------#

$GROUPADD grupoA
$GROUPADD grupoB

for((i=1; i <= 50; i++))
do

$USERADD -m -d /home/usuario$i -s /bin/bash usuario$i
$GPASSWD -a usuario$i grupoA

done

for((i=51; i <= 100; i++))
do

$USERADD -m -d /home/usuario$i -s /bin/bash usuario$i
$GPASSWD -a usuario$i grupoB

done


Fiz os testes aqui e funcionou de boa. Qualquer dúvida, é só postar.

P.S: O script acima apenas cria os usuários sem as senhas. Caso precise ser inserida senhas para os usuário, o script terá que ser ajustado, porém, vai ser um trabalho grande. :)

Gostaria de indicar a leitura deste artigo http://www.vivaolinux.com.br/artigo/Algoritmos-em-Shell-Script?pagina=1


4. Re: Criar usuários em grupos [RESOLVIDO]

Helton Oliveira
heltonoliveira

(usa Debian)

Enviado em 21/11/2014 - 18:36h

Sim, é disso que eu preciso! Só mais uma coisa, tem como vc me passar o comando com senha? Todos os usuários devem ter a seguinte senha OC@2015.
Obrigado.


5. Re: Criar usuários em grupos [RESOLVIDO]

Helton Oliveira
heltonoliveira

(usa Debian)

Enviado em 21/11/2014 - 20:45h

Muito obrigado, vou passar a estuda-lo para entender melhor, ajudou muito!

Obrigado :D


6. Re: Criar usuários em grupos [RESOLVIDO]

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 21/11/2014 - 20:50h

Peço apenas que encerre este tópico e voto a minha solução como melhor resposta. Qualquer coisa é só avisar.


7. Re: Criar usuários em grupos [RESOLVIDO]

Helton Oliveira
heltonoliveira

(usa Debian)

Enviado em 24/11/2014 - 20:12h

Ei k666.
Poderia me esclarecer só mais uma dúvida?
Porque quando eu tento executar o script ele da um erro de sintaxe, dizendo "fim prematuro do arquivo" ?


8. Re: Criar usuários em grupos [RESOLVIDO]

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 24/11/2014 - 20:45h

Verifique com atenção se o script foi copiado de maneira correta. Você possui as bibliotecas de compilação em sua distribuição?

Execute o scritp com o comando abaixo:

# sh -x script


Esse é o mode de debug e vai executá-lo por partes aí vai dar para ver onde está o erro.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts