Centos 7 - cups-pdf 后处理脚本运行但没有结果

Centos 7 - cups-pdf 后处理脚本运行但没有结果

我在使用 cups-pdf 中的后处理时遇到问题。正如我在日志文件中看到的那样,该脚本被调用,但没有任何反应。

/var/log/cups/cups-pdf-myPrinter_log:

Thu Jun 15 10:07:11 2017  [DEBUG] postprocessing commandline built: /etc/cups/postprocessing/ppmyPrinter.sh /srv/samba/cups-pdf/myPrinter/user/000012198600001.pdf [email protected] user
Thu Jun 15 10:07:11 2017  [DEBUG] postprocessing has finished: 32256

vim /etc/cups/cups-pdf-myPrinter.conf

PostProcessing /etc/cups/postprocessing/ppmyPrinter.sh

-rwxrwxrwx 1 root lp 194 Jun 15 09:35 ppmyPrinter.sh

vim /etc/cups/postprocessing/ppmyPrinter.sh

#!/bin/bash

echo "$1" >> /etc/cups/postprocessing/user
echo "$2" >> /etc/cups/postprocessing/user
echo "$3" >> /etc/cups/postprocessing/user

如果我运行脚本,./ppmyPrinter.sh test1 test2 test3它会创建内容为 test1 test2 test3 的文件 user,但通过从 cups 调用什么也不会发生。我红色,在基于 debian 的系统(ubuntu)cups-pdf 上由 apparmor 监视,我必须允许执行该脚本,但在我的 CentOs 7 上没有 apparmor 运行。

您能否给我一个提示,在哪里寻找这个问题,是否有一些日志文件可以让我看到问题?

答案1

在 CentOS 上,如果这可能是一个问题,您必须处理 SELinux 而不是 AppArmor。通过 检查您的 SELinux 状态getenforce。如果是Enabled,请检查该/var/log/audit/audit.log文件。

答案2

在 CentOS 中,还有另一种设置会导致相同的症状。默认情况下,后处理脚本以“nobody”用户身份运行,因此您必须在 /etc/sudoers 文件中添加一行,以允许脚本在不提示输入密码的情况下运行:

没有人 ALL=(ALL) NOPASSWD:/yourpath/yourscript.sh

相关内容