【问题标题】:Compile .tex file with latexmk with www-data user (opencpu)使用带有 www-data 用户(opencpu)的 latexmk 编译 .tex 文件
【发布时间】:2016-09-06 13:47:50
【问题描述】:

我在 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 文件。

我的 LaTeX 版本:TexLive 2016 完整版

从这里出来:

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
...

有什么想法吗?

谢谢!

--

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

【问题讨论】:

  • 您是否收到错误消息?检查您的日志文件,特别是 apache 日志和 kern.log

标签: ubuntu-14.04 opencpu latexmk


【解决方案1】:

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

 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 问题。

感谢杰伦

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-23
    • 2014-09-13
    • 2017-02-15
    • 2020-06-30
    相关资源
    最近更新 更多