sudo como permissão de usuário negada no comando

0

Oi eu estou tendo um problema real tentando executar um script como root, o script é usar o sudo para executar wp-cli como o usuário requerido.

O comando que estou usando é

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

Eu recebo

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

No entanto, se eu su para esse usuário e executar o comando tudo funciona bem

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     |
+---------+----------+--------+---------+

Alguma idéia?

Felicidades.

    
por 0x7c0 17.07.2017 / 16:40

1 resposta

4

O Sudo não suporta comandos multi-linha em seus shells, mas você pode criar um shell dentro do seu comando sudo e fazer com que o shell execute vários comandos, da seguinte forma:

sudo -u hstestsite1 -s sh -c "cd /home/hstestsite1/public_html; /usr/local/bin/wp plugin list"
    
por 17.07.2017 / 17:52