使用带有www-data用户的latexmk编译.tex文件(opencpu)

时间:2016-09-06 13:47:51

标签: ubuntu-14.04 opencpu latexmk

我在ubuntu 14.04服务器上运行opencpu 1.5 [1]。我的R-Package创建.tex文件触发系统调用以使用latexmk编译pdf文件。

    system("latexmk -xelatex -interaction=batchmode mylatex.tex")

在ubuntu 12.04 LTS上运行正常。

从ubtuntu 12.04 LTS更新到14.04 LTS后,这不起作用。 该过程以www-data用户身份运行。对于其他系统用户,我可以使用latexmk编译.tex文件。

My LaTeX Version:TexLive 2016 full

这里出自:

print(Sys.getenv())

...
APACHE_RUN_GROUP        www-data
APACHE_RUN_USER         www-data
HOME                    /tmp/ocpu-temp
PATH                   /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/texlive/current
...

有什么想法吗?

THX!

-

[1] https://www.opencpu.org/

1 个答案:

答案 0 :(得分:0)

我在日志文件中找到了这个条目:

 apparmor="DENIED" operation="exec" profile="opencpu-exec" 
     name="/usr/local/texlive/2016/texmf-dist/scripts/latexmk/latexmk.pl" pid=4305 comm="sh" requested_mask="x" denied_mask="x" fsuid=33 ouid=0

然后我添加了以下行:

/usr/local/texlive/2016/texmf-dist/scripts/latexmk/latexmk.pl ux,

在/etc/apparmor.d/opencpu.d/custom文件中。

这解决了我的latexmk问题。

Thx to Jeroen