Linux 如何以apache用户身份运行ffmpeg
我以root用户身份在centos上安装了ffmpeg。如何更新权限以便apache(httpd)可以运行ffmpeg命令Linux 如何以apache用户身份运行ffmpeg,linux,Linux,我以root用户身份在centos上安装了ffmpeg。如何更新权限以便apache(httpd)可以运行ffmpeg命令 -rwxr-xr-x. 1 root root 24M Mar 4 03:43 /root/bin/ffmpeg 我试图链接到/usr/bin cd /usr/bin ls -s /root/bin/ffmpeg 但什么时候仍然不起作用。我猜是因为apache没有可用的shell su apache -c whoami This account is currentl
-rwxr-xr-x. 1 root root 24M Mar 4 03:43 /root/bin/ffmpeg
我试图链接到/usr/bin
cd /usr/bin
ls -s /root/bin/ffmpeg
但什么时候仍然不起作用。我猜是因为apache没有可用的shell
su apache -c whoami
This account is currently not available
正如@pbu comment所述,如果您遵循本安装指南,但将“$HOME”替换为“/usr/local”,apache(httpd)用户将能够执行它。软链接受文件本身和指向该文件的所有父文件夹的ACL的约束。我想您的
/root/
文件夹类似于0750。因此,您可以尝试硬链接,而不是使用软链接。或者将二进制文件移动到/usr/local/bin
,将所有lib移动到/usr/local/lib
/root/bin/ffmpeg
对于ffmpeg来说是一个奇怪的地方。您可以通过软件包管理器安装它吗?另外,正如您所注意到的,apache没有登录shell,但是您指定了一个来运行如下命令,su-s/bin/bash apache-c whoami
。尝试将用户添加到www数据组:是的,ffmpeg安装在错误的位置。这是一种安全风险。为共享用户重新编译ffmpeg,如下所示:/configure--prefix=/usr/local&&make&&make install
@pub:为什么在/root中有二进制文件(而不是setuid)存在安全风险?将当前用户添加到www数据组会有什么变化?为什么会进行向下投票?善意的解释可以让读者/我学到一些东西。答案错了吗?没有回答这个问题或者没有用?这不礼貌吗?是因为“/usr/local”不是一个安全的安装位置吗?其他原因?非常感谢。