2016-09-06 143 views
0

我在ubuntu 14.04服務器上運行opencpu 1.5 [1]。我的R軟件包創建一個.tex文件觸發系統調用與latexmk編譯PDF文件。使用www-data用戶(opencpu)編譯帶有latexmk的.tex文件

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

在Ubuntu 12.04 LTS上它工作正常。

從ubtuntu 12.04 LTS更新至14.04 LTS後,此功能無法使用。 該進程正在以www數據用戶身份運行。與其他系統用戶一起,我可以使用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 
... 

任何想法?

Thx!

-

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

+0

您是否收到錯誤訊息?檢查你的日誌文件,特別是apache日誌和kern.log – Jeroen

回答

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