Ansibleアドホックコマンドを実行する必要があります。
$ ansible somehost -m command -a "cat /etc/passwd"-u someuser --ask-Sudo-pass
Sudo
特権を持つユーザーアカウント(someuser)を持っています。通常、私はルートSudo su -
になりました。
アドホックコマンドをSudo su -
で使用する方法
ansibleバージョンは2.0.0.2です
正しいansibleコマンドは
ansible all -mコマンド-a "docker info" -u myuser --become-user root --ask-pass --ask-become-pass
Ansibleバージョン1.9以降の場合は、代わりに--ask-become-pass
を使用する必要があります。古いバージョンの場合、--ask-Sudo-pass
が機能するはずです。
1.9より前のAnsibleでは、ほとんどの場合Sudoの使用と、suの限定的な使用により、ログイン/リモートユーザーが別のユーザーになることができましたユーザーとタスクの実行、2番目のユーザーの権限を持つリソースの作成。 1.9以降は、下位互換性を維持しながら、古いSudo/suに取って代わります。この新しいシステムにより、pbrun(Powerbroker)、pfexec、dzdo(Centrify)、その他。
インベントリ内のサーバーと共有するSSHキーがあり、ルートにSudo
したい場合は、コマンドをさらに次のように減らすことができます。
$ ansible all -m command -a "docker info" -u myuser --become --ask-become-pass