启动卡桑德拉(Cassandra)作为一项服务不适用于2.0.5,sudo cassandra -f工作



当我尝试在Ubuntu上启动Cassandra 12.04(通过DataStax的dsc20软件包安装)作为服务:

$ sudo服务卡桑德拉开始

它说

*无法访问cassandra

&没有其他消息或日志中的任何内容。

但是,当我尝试以root用户(sudo cassandra -f)运行时,它只是正常工作&卡桑德拉开始了。在尝试调试时,我发现在尝试运行作为非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.

包装有问题吗?软件包安装/配置不正确?

默认情况下,cassandra服务不是,也不应作为root运行。

我的猜测是您首先在前景中运行它,它会自动创建/var/lib/cassandra,而不是使用root权限,而不是使用卡桑德拉(Cassandra)权限。带有适当组和用户的Chown -r/var/lib/cassandra要么吹走目录,然后尝试再次启动服务。

$ su cassandra

然后运行

$ service cassandra start

它对我有用。

最新更新