gpt4 book ai didi

linux - 无法从 cronjob 运行 wkhtmltopdf

转载 作者:太空狗 更新时间:2023-10-29 11:21:58 25 4
gpt4 key购买 nike

我有一个命令行。当从 putty 运行它时它工作,但是当从以 root 运行的 cronjob (webmin) 运行命令时命令挂起并且永远不会完成执行..

/usr/bin/xvfb-run -a -s "-screen 0 640x480x16" /usr/bin/wkhtmltopdf /root/input.html /root/output.pdf

更新

cronjob.php 中的命令行

echo shell_exec('/usr/bin/xvfb-run -a -s "-screen 0 640x480x16" /usr/bin/wkhtmltopdf /root/input.html /root/output.pdf');

cron 作业的命令(以 root 身份运行)

php -f /var/cronjob.php

当 cron 作业从 webmin 运行时,执行永远不会完成,但是当从 putty 运行完全相同的命令时,它会起作用!这是输出

Loading page (1/2)
Printing pages (2/2)
Done
Exit with code 1 due to network error: ProtocolUnknownError

puttywebmin 运行命令(没有 wkhtmltopdf)都有效

echo shell_exec('/usr/bin/xvfb-run -a -s "-screen 0 640x480x16"');

这是输出

xvfb-run: usage error: need a command to run
Usage: xvfb-run [OPTION ...] COMMAND
Run COMMAND (usually an X client) in a virtual X server environment.
...

添加 wkhtmltopdf 时,cronjob 永远不会完成

更新二

此命令行在 cron 作业中不起作用

xvfb-run -a -s "-screen 0 640x480x16" wkhtmltopdf -h

@Grokify

echo shell_exec('0 0 * * * * xvfb-run -a -s "-screen 0 640x480x16" wkhtmltopdf /var/www/tmp/test.html /var/www/tmp/output.pdf >> /var/www/tmp/pdf.log 2>> /var/www/tmp/pdf.err');

pdf.err

sh: 1: 0: not found

最佳答案

cronjob 可能没有拉入用户的环境,因此不知道 $PATH 实际包含什么。我发现我需要在我的 crons 中使用二进制文件的完整路径:

2 * * * /usr/bin/php -f /var/cronjob.php

关于linux - 无法从 cronjob 运行 wkhtmltopdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29281647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com