Stai cercando il chpasswd
comando. Faresti qualcosa del genere:
echo 'pi:newpassword' | chpasswd # change user pi password to newpassword
Si noti che deve essere eseguito come root, almeno con la configurazione PAM predefinita. Ma presumibilmente eseguito come root non è un problema per uno script di distribuzione del sistema.
Inoltre, puoi eseguire più utenti contemporaneamente fornendogli più righe di input.
Un'altra alternativa è usare il yes
comando nello script.
yes newpassword | passwd youruser
Questo invierà newpassword
al passwd
comando per youruser
.
Va detto che l'impostazione/modifica delle password utente tramite script può presentare rischi per la sicurezza e dovrebbe essere evitata quando possibile.
MODIFICA:
Questa risposta richiede l'accesso root. Ci scusiamo per non averlo menzionato in precedenza. È un metodo che utilizzo quando eseguo attività di amministrazione che richiedono l'accesso come root.