À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 <Ctrl a>, 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;
- <Ctrl a> serve para incrementar um número (<Ctrl x> 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:
Criando usuários em batch + vim - gallois' blag
Abraços.
gallois