Это система Ubuntu. Когда пользователь отправляет задание на наш сайт, я хочу запустить его как пакетное задание. Cmd.sh - это сценарий оболочки. При запуске вручную в терминале сценарий выполняется отлично, но по какой-то причине не будет выполняться как пакетное задание. Текущий PHP:Пакетная команда в системе PHP
system("echo /var/www/dbCAN/data/blast/$jobid/cmd.sh | batch");
Это не печатает ошибку или не удается, она просто не отправляет задание. Кроме того, если я изменю этот код, чтобы просто удалить «| пакет», файл будет выполняться нормально. Причина, по которой я не хочу запускать ее напрямую, - это интенсивный процесс, который может занять некоторое время, и мы обычно отправляем сообщение пользователю по электронной почте, когда их работа завершена (и не запускает сразу несколько заданий). У кого-нибудь есть идеи, почему это не работает? Я знаю, что путь правильный, но я не уверен в использовании пакетов. Помощь ценится :)
Проверьте файлы '/ etc/at.allow' и'/etc/at.deny', чтобы узнать, разрешен ли веб-пользователь использовать 'at' и' batch'. – Barmar
^at.deny имел в нем www-данные, которые были частью проблемы. Благодаря! – Nathan