web-dev-qa-db-ja.com

1つのコマンドラインでwebminを使用して、rootのパスワードを変更するにはどうすればよいですか?

1台の古いサーバーのルートパスワードを失いました。通常のユーザーログインとwebminログインのみが可能です。 webminインターフェイス経由でコマンドを実行するオプションが1つありますが、次のことを試していますが失敗します:

> echo -e "newPassword\nnewPassword" | passwd root"
bash: -c: line 0: unexpected EOF while looking for matching `"'
bash: -c: line 1: syntax error: unexpected end of file
> whoami
root

webmin経由で、rootとしてログインしていることがわかります

1
YumYumYum

passwd root(またはecho -e "newPassword\nnewPassword" | passwd root")の代わりにpasswdを使用します。さらに、コマンドの最後にも予期しない「"」があります。

1
air-dex
line 0: unexpected EOF while looking for matching `"'

それは理にかなっている。バックスラッシュなしでコマンドラインに3つの引用符があるときはいつでも、あなたはトラブルを求めています。それらはペアで来ることになっています。

echo -e "newPassword\nnewPassword" | passwd root

それはちょっと不格好です。私はそれがうまくいくとは思わない。確かに私には向いていません。

これは少し良いですが、それでも悪いです:

usermod -p $(echo "newPassword" | openssl passwd -1 -stdin) root

更新:今日chpasswdについて学びました:

echo "root:password" | chpasswd
1
Steven K