だから私はこの学校用にこのファイルサーバーを持っています。基本的に、すべての学生は、Windows と ubuntu の両方で 1 つのパブリック ログインを使用します。カスタム アプリを使用して、独自のパスワードを使用して Samba Ubuntu Server にログインし、個人用ディレクトリにアクセスします。ときどき、このログイン用のパスワードを変更する必要があります。Samba smbpasswd と ubuntu の passwd の両方に対して、bash スクリプトで実行できるように、誰かのパスワードを完全に変更する方法が必要です。これを要約すると、bash スクリプトを使用して、ユーザーの介入なしで誰かのパスワードを変更するために使用できるコマンドを知る必要があります。passwd ユーザー名を入力すると、パスワードを入力するように求められるため、ユーザーがパスワードを変更したいときに、その bash スクリプトを編集するだけでよいように、bash スクリプトでこれを行う必要があります。「passwd user --current-password=CURRENTPASS --new-password=NEWPASS」のようなものを探していると、その行に返されます。また、smbpasswd に対しても機能する必要があるため、samba もパスワードを変更できます。
編集 見つけた!うわー、これは素晴らしい、私は以前にこれを知っていました。次のコマンドを使用すると機能します。
echo -e "newpass\nnewpass" | (smbpasswd -s username)
echo -e "newpass\nnewpass" | (passwd --stdin username)
もちろん、root を実行していない場合は、古いパスワードも追加する必要があります。自分の問題を解決するのが大好きです!