fabricUbuntu 10.4
を使用してリモートボックスでパスワードを更新する方法が必要です。
私は次のfabfile.py
ようになると思います:
def update_password(old_pw, new_pw):
# Connects over ssh with a public key authentication
run("some_passwd_cmd --old %s --new %s" % (old_pw, new_pd))
残念ながら、私が知っている唯一のコマンドでパスワードを変更できるのpasswd
はpasswd
.
Ubuntu 10.4でユーザーのパスワードを変更するには、どのコマンドを使用できますfabric
か?
EDIT:私は見てきたがusermod -p
、それはうまくいくかもしれないが、マニュアルページでは推奨されていない.
編集:何らかの理由usermod -p
で、ファブリック上でも機能していませんでした。
同様に、問題を解決したmikejの回答の(やや安全でない)バリエーションを試しました:
# connecting & running as root.
from fabric.api import *
from fabric.contrib import files
files.append("%s\n%s" % (passwd, passwd), '.pw.tmp')
# .pw.tmp:
# PASSWD
# PASSWD
run("passwd %s < .pw.tmp" % user)
run("rm .pw.tmp")
これは非常にエレガントなソリューションではありませんが、機能します。
読んでくれてありがとう。
ブライアン