Я пытаюсь выполнить сценарий оболочки, который скопирует определенные папки и файлы из одного места в другое.
Но я борюсь с очень простой проблемой – т.е. Я не могу копировать папки или файлы, когда я вызываю этот скрипт из php. В то время как один и тот же сценарий отлично работает с терминалом. Это потому, что из терминала, когда я выполняю этот скрипт, пользователь имеет достаточно привилегий для копирования / создания файлов / папок, где, когда при вызове сценария из php пользователь не имеет достаточных привилегий?
Для php, shell_exec('whoami');
говорит, что пользователь является www-данными
Что мне делать, чтобы у меня было достаточно привилегий для выполнения операций создания и копирования из www-data php user
Буду признателен за любую оказанную помощь.
Добавь это:
username ALL=NOPASSWD: /path/to/script
в файле sudoers, в /etc/sudoers
, вы также можете использовать команду visudo
для редактирования этого файла.