domingo, 5 de outubro de 2008

Adicionando múltiplos usuários no Linux com VIM

Às vezes você quer adicionar vários usuários em lote no sistema, o que pode dar muito trabalho dependendo da quantidade. Usar o comando newusers adianta muito o seu trabalho, e o vim pode te ajudar ainda mais caso os usuários sejam uma sequência, como por exemplo: usuário1, usuário2 etc.

Usando o newusers
Supondo que você queira adicionar vários usuários, mas bate aquela preguiça de escrever o tempo todo, ou queira replicá-los em vários computadores, como fazer isso?

Edite um arquivo de texto qualquer, que terá um formato semelhante ao passwd, por exemplo:

# vim usuários.txt

usuário1:senha:10001:10001:nome:/home/usuário1:/bin/bash
usuário2:senha:10002:10002:nome:/home/usuário2:/bin/bash
usuário3:senha:10003:10003:nome:/home/usuário3:/bin/bash

Label:

login : senha : uid : gid : nome do usuário : pasta home do usuário : shell do usuário

Beleza! Agora é só rodar:

# newusers usuários.txt

E pronto, todos eles serão adicionados!

Ajudinha do vim para usuários em sequência
Pois é. Até aí está tudo beleza, já é um adianto de vida. Mas caso queira adicionar os usuários como o exemplo anterior (usuário1, usuário2 etc), o vim ainda pode te ajudar um pouco com macros. ;)

Crie um arquivo novo:

$ vim usuários.txt

E escreva a primeira linha dele:

usuário1:senha:10001:10001:nome:/home/usuário1:/bin/bash

Agora vem mais mágica, digite:

qa
Y
p
Pare em cima dos números 1 que deseja transformar para 2 e aperte , feito isso, digite:
q

Pronto! Quantas vezes quer repetir? 19?

19@a

Explicando:

* qa inicia a gravação da macro 'a';
* Y copia a linha toda;
* p cola a linha;
* serve para incrementar um número ( decrementa, caso esteja curioso ;));
* q termina a gravação da macro;
* @a serve para executar a macro e o 19 antes disso é o número de repetições.


Dá pra ganhar um baita tempo. Fiz isso na configuração de um servidor LTSP, onde o processo de inclusão de usuários é em sequência de números (um para cada máquina cliente) e deve ser replicado em vários servidores. Não é exatamente para mim, mas vai adiantar o lado do sysadmin responsável por isso.

Espero ter ajudado!

Fica a dica, vou colocar as dicas do blog por aqui sempre que possível, com a referência: http://www.gallois.com.br/blog/2008/09/28/criando-usu%C3%A1rios-em-batch-vim/

Nenhum comentário:

Os melhores podcasts do spotify