当我尝试在ubuntu 12.04(通过Datastax的dsc20
软件包安装)作为服务启动cassandra时,如下所示:
$ sudo service cassandra start
它说
*无法访问Cassandra的pidfile
&安培;没有其他消息或日志中的任何内容。
但是当我尝试以root用户身份(sudo cassandra -f
)运行时,它才能正常运行& cassandra开始了。在尝试调试时,我发现当尝试以非root用户身份运行 时,我收到了以下消息:
ERROR 17:48:08,432 Exception encountered during startup
java.lang.AssertionError: Directory /var/lib/cassandra/data is not accessible.
..
java.io.FileNotFoundException: /var/log/cassandra/system.log (Permission denied)
..
java.lang.AssertionError: Directory /var/lib/cassandra/data is not accessible.
包装有问题吗?没有正确安装/配置包?
答案 0 :(得分:8)
默认情况下,cassandra服务不会也不应该以root身份运行。
我的猜测是你先在前台运行它,它会自动创建具有root权限的/ var / lib / cassandra,而不是使用cassandra权限。使用适当的组和用户chown -R / var / lib / cassandra或者删除目录并再次尝试启动服务。
答案 1 :(得分:0)
$ su cassandra
然后运行
$ service cassandra start
它对我有用。