Your requirement
You want to change the password of root or another user by using a script. This should be performed without the need for user interaction.
A solution
The passwd
command reads the password from the standard input if you specify the --stdin
option. Examples:
root@linux# echo 'geheim' | passwd --stdin root
root@linux# echo '73/3g78' | passwd --stdin mk
Attention!
This procedure may involve security risks, as the password is transferred in clear text. Among other things, the password will be visible:
- in the Bash history, if you enter the command interactively
- for a short time in the process list (command
ps ax
)
However, this solution may still be suitable, for example, if no other users are logged on to the machine at the time of the password generation.