Script: nome de usuário e permissões inválidos negados

0

Estou tentando escrever um script que crie vários usuários a partir de um arquivo de texto e, em seguida, adicione-os ao grupo que criei chamado "estagiários". Eu quero definir uma senha padrão de "AIST2330PASSWORD" e, em seguida, solicitar que os usuários alterem a senha quando fizerem login. O código que tenho agora é

for i in $(cat users.txt)
do
echo useradd -m -s /bin/bash -G interns $i
useradd -m -s /bin/bash -G interns $i
echo "AIST2330PASSWORD" | passwd --stdin $i
passwd -e $i
echo "User needs to chnage pw upon reentry"
done

Os erros que recebo são:

paaswd: Permission denied.
User needs to change pw upon reentry
useradd -m -s /bin/bash -G interns hmccoy
'seradd: invalid user name 'hmccoy 
passwd: unrecognized option '--stdin'

O que estou fazendo de errado?

    
por DJAY 27.02.2016 / 23:57

1 resposta

0

Você está recebendo o erro passwd: unrecognized option '--stdin' porque não existe essa opção como --stdin para fornecer senhas usando o comando passwd via STDIN no Ubuntu.

Você não pode passar senhas de forma não interativa usando o comando passwd , enquanto no shell interativo passwd usa STDIN para obter a senha. Isso só acontece para operações interativas, se você estiver usando procedimentos de shell, como tubulação, não funcionará.

Como você está procurando criar usuários em lote com a mesma senha para todos, talvez você deva examinar o comando newusers que seria exatamente o suficiente no seu caso.

    
por heemayl 28.02.2016 / 01:37