我正在尝试使用以下命令(以root用户身份)以用户www-data的身份运行pdftk:
sudo -u www-data /snap/bin/pdftk
但是我收到此错误:
无法创建用户数据目录:/ var / www / snap / pdftk / 9:只读 文件系统
(Ubuntu 18.04,SNAP已安装PDFTK)。
/ var / www / snap / pdftk和/ var / www / snap / pdftk / 9目录具有www数据用户的rw权限:
drwxr-xr-x 3 www-data www-data 4096 Jan 23 15:44 ./
drwxrwxrwx 4 root root 4096 Jan 23 15:44 ../
drwxrwxr-x 4 www-data www-data 4096 Jan 23 15:44 pdftk/
drwxrwxr-x 4 www-data www-data 4096 Jan 23 15:44 ./
drwxr-xr-x 3 www-data www-data 4096 Jan 23 15:44 ../
drwxrwxr-x 2 www-data www-data 4096 Jan 23 15:44 9/
drwxr-xr-x 2 www-data www-data 4096 Jan 23 15:44 common/
lrwxrwxrwx 1 www-data www-data 1 Jan 23 15:44 current -> 9/
我需要能够以www-data用户身份运行PDFTK,因为我想从apache2提供的PHP脚本中调用PDFTK,如下所示:
<?php
`/snap/bin/pdftk file1.pdf file2.pdf cat output file3.pdf`;
注意:PHP的pdftk包装器mikehaertl / php-pdftk似乎也不想保存文件。我尝试了-> saveAs()函数,但是没有文件生成,即使试图写入/ tmp时也应该具有完全写入权限。 apache2错误日志中没有错误,所以我敢打赌这是同样的问题。
答案 0 :(得分:1)
我遇到了完全相同的问题!特别是,当在Ubuntu 18.10中使用pdftk且已经包含pdftk时,我没有遇到这个问题,但是在装有Ubuntu 18.04的服务器上遇到了这个问题。
我的解决方法是不通过snap安装pdftk。按照https://www.webdesign101.net/install-pdftk-on-ubuntu-18-04-bionic/上的说明,我用debian软件包安装了pdftk。
然后一切正常。