Cassandra误认为是运行作为root

Cassandra mistakenly thinks it is running as root

我正尝试在 MyBinder 环境中 运行 Cassandra。 在本地它工作得很好。然而,在 MyBinder 上,Cassandra 错误地认为它是 运行ning 作为 root。

它具有相同的 java 版本,OS,等等

关于为什么会出现这种行为有什么想法吗?

谢谢!

jovyan@jupyter-2dx66bgrd2:~$ tar xzvf apache-cassandra-4.0-beta1-bin.tar.gz 

joyan@jupyter-2dx66bgrd2:~$ cd apache-cassandra-4.0-beta1

jovyan@jupyter-2dx66bgrd2:~/apache-cassandra-4.0-beta1$ ls
bin  CASSANDRA-14092.txt  CHANGES.txt  conf  doc  lib  LICENSE.txt  NEWS.txt  NOTICE.txt  pylib  tools

jovyan@jupyter-2dx66bgrd2:~/apache-cassandra-4.0-beta1$ ./bin/cassandra
Running Cassandra as root user or group is not recommended - please start Cassandra using a different system user.
If you really want to force running Cassandra as root, use -R command line option.

jovyan@jupyter-2dx66bgrd2:~/apache-cassandra-4.0-beta1$ ./bin/cassandra -R
jovyan@jupyter-2dx66bgrd2:~/apache-cassandra-4.0-beta1$ 

问题是当 运行 宁 id -uid -g 在 [=14] 时,启动脚本认为它是 运行 作为 root 用户=] (here):

if [ "`id -u`" = "0" ] || [ "`id -g`" = "0" ] ; then
    echo "Running Cassandra as root user or group is not recommended - please start Cassandra using a different system user."
    echo "If you really want to force running Cassandra as root, use -R command line option."
    exit 1
fi

我想 MyBinder 中的 id 命令 return 0 会混淆启动脚本。这不是我们测试的场景,因此可能通过禁用 shell 脚本中的检查来解决它。干杯!