ファブリックを使用して、いくつかのサーバーで行っている管理作業を自動化しようとしています。大まかな流れは次のとおりです。
- ローカル ユーザーとの SSH
- run:
sudo su -
root になります (ローカル ユーザーのパスワードを再度入力します) - ルートとして作業を行います:)
残念ながら、使用run('sudo su -')
するとスクリプトの実行がブロックされ、ユーザー入力が可能になります。入力するexit
かCtrl+D
スクリプトを再開すると、ルート権限がありません。
Fabric でのユーザーの切り替えで同様の問題を見たことがありますが、次の行を含むファイルをsudo su -
変更することが許可されていないため、制限されています。/etc/sudoers
localuser ALL = /usr/bin/su -
回避策を見つけようとして生地のソースを参照しましたが、成功しませんでした。