Você pode simplesmente verificar usando:
Nota: - Execute o seguinte comando usando sudo
, porque /etc/shadow
tem apenas acesso de leitura ao usuário root & grupo.
awk -F: '$2 == ""' /etc/shadow
OR
awk -F: 'length($2) == 0' /etc/shadow
Usando o Bash
#!/usr/bin/env bash
set -f # do not expand *
while IFS=":" read -a user
do
[[ -z ${user[1]} ]] &&
echo "User : ${user[0]} has no password"
done < /etc/shadow
Atualização 1:
Can i output the users or give them a temporary password?
Acima de Bash Script já está dando nomes de usuário de saída.
você pode configurar uma senha temporária para o usuário usando:
echo "username:password" | chpasswd
Em seguida, você pode informar seus usos para alterar a senha no primeiro login:
chage -d 0 username
Atualização 2: Algumas informações para verificar segundo arquivado com base em, porque OP mencionar que o segundo arquivado está em branco, mas isso não é possível a menos que seja editado à mão.
/etc/passwd
file O segundo campo denota x
significa que a senha está no arquivo /etc/shadow
e em
/etc/shadow
2º campo tem:
-
!{ecrypted passwd}
== o usuário está bloqueado -
*
ou!
==*
é principalmente para conta do sistema / daemon. o usuário não poderá usar uma senha unix para efetuar login (mas o usuário pode efetuar login no sistema por outros meios).