Sie suchen nach chpasswd
Befehl. Sie würden etwa so vorgehen:
echo 'pi:newpassword' | chpasswd # change user pi password to newpassword
Beachten Sie, dass es als root ausgeführt werden muss, zumindest mit der Standard-PAM-Konfiguration. Aber vermutlich ist die Ausführung als root kein Problem für ein Systembereitstellungsskript.
Sie können auch mehrere Benutzer gleichzeitig bearbeiten, indem Sie mehrere Eingabezeilen eingeben.
Eine weitere Alternative ist die Verwendung von yes
Befehl in Ihrem Skript.
yes newpassword | passwd youruser
Dies sendet newpassword
bis passwd
Befehl für youruser
.
Es sollte erwähnt werden, dass das Festlegen/Ändern von Benutzerkennwörtern über Skripte Sicherheitsrisiken darstellen kann und nach Möglichkeit vermieden werden sollte.
BEARBEITEN:
Diese Antwort erfordert Root-Zugriff. Entschuldigung, dass ich das vorher nicht erwähnt habe. Es ist eine Methode, die ich verwende, wenn ich Verwaltungsaufgaben durchführe, die Root-Zugriff erfordern.