Systemd-Nspawn

nspawn 容器的非互動式密碼更改

  • July 12, 2018

我想更改nspawn容器的root密碼,因為我在創建rootfs之後通過ansible創建容器,因為最初它沒有任何root密碼。

通過使用替換模組替換文件中的根行來更改密碼是個好主意/etc/shadow嗎?

還有其他方法可以非互動方式更新密碼嗎?

我試過了 :

echo user:pass | /usr/sbin/chpasswd

但迴聲不起作用,我得到 execv()failed: No such file or directory

passwd適用於這種情況。它有一個選項--stdin。不要使用echo my-secret-password | passwd --stdin,因為echo my-secret-password如果有人執行,可能會變得可見ps,或者如果你不走運,甚至可能在日誌文件中。

#!/bin/sh

PASSWORD=...

passwd root --stdin <<EOF
$PASSWORD
EOF

引用自:https://unix.stackexchange.com/questions/454860