コマンドでユーザー権限が拒否された sudo

コマンドでユーザー権限が拒否された sudo

こんにちは、sudoを使用してwp-cliをユーザーとして実行するスクリプトをrootとして実行する際に実際の問題があります。

私が使用するコマンドは

sudo -u hstestsite1 -s "cd /home/hstestsite1/public_html; /usr/local/bin/wp plugin list"

私は受け取った

/bin/bash: cd /home/hstestsite1/public_html; /usr/local/bin/wp plugin list: Permission denied

しかし、そのユーザーにsuを要求してコマンドを実行すると、すべてがうまく機能します。

su - hstestsite1
cd /home/hstestsite1/public_html; /usr/local/bin/wp plugin list
+---------+----------+--------+---------+
| name    | status   | update | version |
+---------+----------+--------+---------+
| akismet | inactive | none   | 3.3.3   |
| hello   | inactive | none   | 1.6     |
+---------+----------+--------+---------+

どんなアイデアがありますか?

乾杯。

ベストアンサー1

Sudo はシェルで複数行のコマンドを処理しませんが、次のように sudo コマンド内でシェルを作成し、そのシェルで複数のコマンドを実行することができます.

sudo -u hstestsite1 -s sh -c "cd /home/hstestsite1/public_html; /usr/local/bin/wp plugin list"

おすすめ記事