我试图在我的 CentOS 5 机器上使用 PhantomJS 制作屏幕截图,但我无法让它与 SELinux 一起工作。它在禁用 SELinux 的同一台机器上工作,所以我真的怀疑 SELinux 对此负责。
这是我尝试过的(所有命令都以 root 身份运行),以及我得到的错误:
$ ls -Z /usr/local/phantomjs/phantomjs-1.6.2-linux-x86_64-dynamic/bin
-rwxr-xr-x myusername myusername system_u:object_r:bin_t phantomjs
Run Code Online (Sandbox Code Playgroud)
尝试截图 - 失败
$ cat /var/log/messages | grep avc
Sep 13 12:21:18 myserver kernel: type=1400 audit(1347531678.014:398): avc: denied { getattr } for pid=6842 comm="sh" path="/sbin/ldconfig" dev=dm-0 ino=3097762 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:ldconfig_exec_t:s0 tclass=file
Sep 13 12:21:18 myserver kernel: type=1400 audit(1347531678.014:399): avc: denied { getattr } for pid=6842 comm="sh" path="/sbin/ldconfig" dev=dm-0 ino=3097762 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:ldconfig_exec_t:s0 tclass=file
Sep 13 12:21:18 myserver kernel: …
Run Code Online (Sandbox Code Playgroud)