chpasswd は、パスワードを要求するスクリプトの提供を停止します。

chpasswd は、パスワードを要求するスクリプトの提供を停止します。

ProxMaxで作成されたLXCコンテナを構成するために、Alpine LinuxではBusyBoxを使用しています。スクリプトは次のとおりです。私が経験している問題は、次の行がスクリプトの提供を停止し、パスワードを要求することです。

echo "${www_username}:${www_passwd}" | chpasswd

ただし、SSHを介してログインした状態で(変数が設定されている状態で)コマンドを実行すると、パスワードを要求するために一時停止せずにパスワードが変更されます。

なぜそんなことを知っていますか?

#!/usr/bin/env ash

set -o errexit
set -o pipefail
set -o nounset

www_username="www"
www_passwd="secret"

apk update && apk upgrade
apk add php php-fpm composer nginx curl

adduser "${www_username}" -G nginx
echo "${www_username}:${www_passwd}" | chpasswd

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
mv wp-cli.phar /usr/local/bin/wp

su www <<ILOVEBASH
wp --info
ILOVEBASH

関連情報