我不确定这是一个Sphinx问题还是一个Linux问题。
无论如何,我在CentOS服务器盒上运行Sphinx。
我成功地设法更改了一些与Sphinx相关的文件和目录的所有权,因为我只想要root和Apache组能够读取这些信息:
chown root.apache /etc/sphinx/sphinx.conf
chmod 640 /etc/sphinx/sphinx.conf
chown -R root.apache /var/lib/sphinx
chmod -R 750 /var/lib/sphinx
我的问题是当Sphinx在目录/ var / lib / sphinx中生成包含索引的文件时,他们有所有权
root:root
如何让他们获得许可
root:apache
Sphinx文档没有提到这一点。
感谢。
答案 0 :(得分:3)
为目录/ var / lib / sphinx /:
设置SETGIDroot@centos:~# chmod g+s /var/lib/sphinx/
这样,目录/ var / lib / sphinx /中的所有已创建文件都将从parent继承组。 如果狮身人面像不是自己搞乱所有权(我想不是),那么这将有效。
您可以在目录上阅读更多关于SETGID的here。
答案 1 :(得分:1)
或者您可以通过在现有crontab条目中添加sphinx
或将其从{{1}中删除,以用户root
而不是sudo -u sphinx
身份运行cron作业}的crontab并将其添加到适当的用户的crontab。 (如果您使用的是打包版本,也许您应该将此报告为针对包的错误。)