我在乘客的帮助下运行我的导轨应用程序。我在top
中看到它作为www-data用户运行,但当我尝试在此用户下运行此命令时:
rake ts:index
我觉得拒绝访问
当我在root下(在root rake ts:index
下运行) - 一切正常......
更好的是:
让乘客以root身份运行(如何做)
或
我能做什么?
怎么做,sphinx可以重新索引数据库?
方法中的部分代码:
def self.reindexDB
`rake ts:index`
end
答案 0 :(得分:0)
我不确定你所做的事情是否好,因为如果你在root
用户中运行rake命令,我相信输出文件(索引文件)将被拥有root
用户使用错误的权限,您自己的服务器(www-data
)无法访问这些文件,
我认为处理此问题的最佳方法是将您自己的用户(您在服务器上使用ssh的用户)添加到www-data
组中
有两种方法可以做到这一点
sudo usermod -a -G www-data [your-user]
修改/etc/group
:
编辑/etc/group
文件并查找以www-data
开头的行,然后将自己的用户添加到其中,它应该在最后看起来像这样
www-data:x:33:[your-user]
保存文件,然后您需要注销并重新登录才能找到更改,
我相信在此之后您将能够由您自己的用户运行该命令,它仍然可以访问www-data
拥有的文件。