PDFTK无法创建用户目录

时间:2019-01-23 15:57:47

标签: php apache2 file-permissions ubuntu-18.04 pdftk

我正在尝试使用以下命令(以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错误日志中没有错误,所以我敢打赌这是同样的问题。

1 个答案:

答案 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。

然后一切正常。