質問: PHPからexecコマンドを使い、実行ユーザーを切り替えたいと思っています。 通常、コマンドラインでのユーザー切り替えは、 ``` su - [ユーザー名] password: ``` と、応答式になっていますが、 PHPから呼び出す場合は ``` exec('su - [ユーザー名]'); ``` までしか書き方がわからず、 パスワードの入力ができないため、切り替えに失敗してしまいます。 1行でパスワードを渡す書き方などはあるのでしょうか? ご存知の方、ご教示のほどよろしくお願いいたします。 参考: (このような書き方ができるのでしょうか?) Linuxのユーザパスワードをコマンドラインで設定
回答: たまに expectコマンド 使って力技でやったりしますが、セキュリティを考えた場合、アプリケーションでスイッチユーザは好ましくないため他の方法を考えた方が良いと思います。それか nopasswd に変更するとか。