首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >以root用户身份运行elastic search

以root用户身份运行elastic search
EN

Stack Overflow用户
提问于 2016-11-23 21:50:59
回答 12查看 70.5K关注 0票数 36

当我试图用./elasticsearch命令启动elastic search 5.0时,我得到了下面的错误。

代码语言:javascript
运行
复制
[2016-11-23T13:44:09,507][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:116) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:103) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:96) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.cli.Command.main(Command.java:62) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:80) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:73) ~[elasticsearch-5.0.1.jar:5.0.1]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:96) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:155) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:286) ~[elasticsearch-5.0.1.jar:5.0.1]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:112) ~[elasticsearch-5.0.1.jar:5.0.1]
    ... 6 more

我尝试从切换到其他用户开始,并尝试sudo ./elasticsearch,但得到了相同的错误。如何以root用户身份启动弹性搜索?

EN

回答 12

Stack Overflow用户

发布于 2018-11-13 12:53:29

Elasticsearch不能以root用户身份运行。Elasticsearch本身限制了这一点。安装elasticsearch时,会自动创建一个名为elasticsearch的新用户和一个名为elasticsearch的组。可以使用以下命令检查条目

代码语言:javascript
运行
复制
$ sudo less /etc/passwd | grep "elasticsearch"
$ sudo less /etc/group | grep "elasticsearch"

我们需要更改所有elasticsearch related files的所有权。请按照下面提到的步骤操作。

步骤:

1.使用下面的示例cmd将所有ES相关文件的所有权从root更改为elasticsearch。

代码语言:javascript
运行
复制
$ sudo chown elasticsearch:elasticsearch -R /usr/share/elasticsearch
$ sudo chown elasticsearch:elasticsearch -R /var/log/elasticsearch
$ sudo chown elasticsearch:elasticsearch -R /var/lib/elasticsearch
$ sudo chown elasticsearch:elasticsearch -R /etc/default/elasticsearch
$ sudo chown elasticsearch:elasticsearch -R /etc/elasticsearch

2.打开/etc/default/elasticsearch文件并执行以下操作

代码语言:javascript
运行
复制
  a)JAVA_HOME=your/java/home/path
  b)add the following entries at the end
      i)   START_DAEMON=true
      ii)  ES_USER=elasticsearch
      iii) ES_GROUP=elasticsearch

3.现在启用elasticsearch服务并启动

代码语言:javascript
运行
复制
  $ sudo systemctl enable elasticsearch
  $ sudo systemctl start elasticsearch
  $ sudo systemctl status elasticsearch

4.使用curl测试elasticsearch。假设您的主机ip是192.168.5.194,ES在端口9200上运行

代码语言:javascript
运行
复制
$ curl -X GET ‘192.168.5.194:9200’

完成了!!

参考:https://stackoverflow.com/a/48390311/1445978

票数 24
EN

Stack Overflow用户

发布于 2017-12-15 19:18:18

此问题的根本原因是:不允许以根所有者身份运行ElasticSearch。此问题还有另一个可能性:"Java路径仅为root用户设置,而不是为所有其他用户设置“。此问题的解决方案:

步骤1:通过命令将elasticSearch目录的所有权从超级用户更改为其他用户。$sudo chown -R current_User:Group_Name elasticsearch-5.5.0

JavaSETP2:检查类路径中为当前用户设置的,而不仅仅是根用户。If命令:$java -version或echo $JAVA_HOME命令返回空结果。这意味着我们应该在classpath system env varible中为当前用户设置Java,然后执行步骤3。否则启动elasticsearch服务。

步骤3:编辑/etc/profile并根据您的系统目录导出位置“Java dir JAVA_HOME=”添加两行

导出PATH=$JAVA_HOME/bin:$PATH运行$source源文件/etc/profile

在此之后运行elasticSearch服务。它对我来说工作得很好。

票数 10
EN

Stack Overflow用户

发布于 2018-06-19 14:28:54

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

Method1:下载压缩文件n解压缩,然后通过以下命令启动

代码语言:javascript
运行
复制
bin/elasticsearch -Des.insecure.allow.root=true -d

Method2:

代码语言:javascript
运行
复制
vi bin/elasticsearch

添加允许根的属性:

代码语言:javascript
运行
复制
ES_JAVA_OPTS="-Des.insecure.allow.root=true"

保存并关闭。现在您可以从超级用户开始。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40766301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档