Linux
Ansible adhoc 命令使用 sudo 執行
我需要執行 ansible adhoc 命令。
$ ansible somehost -m command -a "cat /etc/passwd"-u someuser --ask-sudo-pass
我有一個具有
sudo
特權的使用者帳戶(someuser)。通常我成為 rootsudo su -
。如何使用 adhoc 命令
sudo su -
?ansible 版本是 2.0.0.2
如果您將 SSH 密鑰共享到您的庫存中的伺服器,並且您想要
sudo
root,您可以進一步將命令簡化為:$ ansible all -m command -a "docker info" -u myuser --become --ask-become-pass
對於 Ansible 1.9 或更高版本,您需要
--ask-become-pass
改用。對於舊版本--ask-sudo-pass
應該可以工作。在 1.9 之前,Ansible 主要允許使用sudo和有限使用 su以允許登錄/遠端使用者成為不同的使用者並執行任務,創建具有第二個使用者權限的資源。從 1.9 開始取代舊的 sudo/su,同時仍然向後兼容。這個新系統還可以更輕鬆地添加其他權限提升工具,例如pbrun (Powerbroker)、pfexec、dzdo (Centrify) 等。