Ik probeer een exec, shell_exec, of system call te doen met het runuser command. Als ik het runuser command echo en in de terminal plak, werkt het command. als ik hem uitvoer via php dan doet ie het niet. Ik voer het script als root uit en wil hem eigenlijk als www-data uitvoeren onder de root user.
Dit gaat om een optimize script uitvoeren (als www-data) na een update (root) andere commando's werken wel, het gaat mis bij runuser.
...
PHP 7.4.28 (cli) (built: Feb 17 2022 16:17:19) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.28, Copyright (c), by Zend Technologies
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
...
ik voer dit command uit:
test.info is gemaakt door user root en 0 bytes. terwijl er info in moet komen te staan.
Heb dit command met exec, shel_exec & system geprobeerd maar doen het allemaal niet.
terwijl
wel werkt en runuser in de cli wel werkt
.
Iemand enig idee ?
...
Dit gaat om een optimize script uitvoeren (als www-data) na een update (root) andere commando's werken wel, het gaat mis bij runuser.
...
PHP 7.4.28 (cli) (built: Feb 17 2022 16:17:19) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.28, Copyright (c), by Zend Technologies
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
...
ik voer dit command uit:
PHP:
1
| $command = 'runuser --user www-data -- php -f /Application/Bin/R3m.php info all > test.info'; |
test.info is gemaakt door user root en 0 bytes. terwijl er info in moet komen te staan.
Heb dit command met exec, shel_exec & system geprobeerd maar doen het allemaal niet.
terwijl
PHP:
1
| $command = 'php -f /Application/Bin/R3m.php info all > test.info'; |
wel werkt en runuser in de cli wel werkt

Iemand enig idee ?
...