如何在Linux机器

时间:2016-01-21 10:11:59

标签: linux elasticsearch elasticsearch-plugin

我正在尝试在我的Linux机器上运行Elasticsearch 2.1.1,我是它的root用户。

当我尝试执行Elasticsearch时,我收到以下错误:

Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
        at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:93)
        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:144)
        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:285)
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.

我提到了互联网上的一些建议,他们提到将其作为不同的用户运行。我的方案是仅以root用户身份运行。如何在不以不同用户身份运行的情况下克服此问题。

6 个答案:

答案 0 :(得分:46)

基于以下code-snippet看起来您应该能够通过启用属性来实现此目的 的 es.insecure.allow.root

示例:

bin/elasticsearch -Des.insecure.allow.root=true

答案 1 :(得分:10)

  1. 打开脚本文件:

    vi bin / elasticsearch

  2. 为允许root添加属性:

    ES_JAVA_OPTS =" -Des.insecure.allow.root =真"

  3. 保存并关闭。
  4. 你现在可以从root开始。
  5. 祝你好运。

答案 2 :(得分:3)

您还可以创建别名

alias elasticsearch ='elasticsearch -Des.insecure.allow.root = true'

bashrc 文件中添加以上行,之后 elasticsearch 命令将起作用。

答案 3 :(得分:1)

您应该更改elasticsearch-X.X.X的所有者和组,并以该用户身份运行。它适用于elasticsearch-5.3.0

答案 4 :(得分:0)

有两种解决方法可以解决此问题:

解决方案1: 下载zip文件n解压缩然后按照以下命令开始

bin/elasticsearch -Des.insecure.allow.root=true -d

解决方案2:

vi bin/elasticsearch

添加属性以允许root运行两个实例:

ES_JAVA_OPTS="-Des.insecure.allow.root=true"

保存并关闭。 您现在可以从root开始。

答案 5 :(得分:0)

我们需要在Linux服务器中创建一个新用户,说user = es 并授予sudo chown -R es elasticsearch-6.1.0/ 那么您可以切换“ es”用户帐户并运行./elasticsearch-6.1.0/bin/elasticsearch