您的位置:首页技术文章
文章详情页

centos - elasticsearch which: no java in (/sbin:/bin:/usr/sbin:/usr/bin)

【字号: 日期:2023-08-23 13:08:25浏览:9作者:猪猪

问题描述

机器:centos7.2

javahome:export JAVA_HOME=/root/jdk1.8.0_60export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

[root@i-j73a8nn6 ~]# java -versionjava version '1.8.0_60'Java(TM) SE Runtime Environment (build 1.8.0_60-b27)Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

[root@i-j73a8nn6 ~]# $PATH-bash: /root/jdk1.8.0_60/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin: No such file or directory

如果不是sudo启动时报错:[root@i-j73a8nn6 ~]# elasticsearch-2.2.1/bin/elasticsearchException 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.

sudo启动报错:[root@i-j73a8nn6 ~]# sudo elasticsearch-2.2.1/bin/elasticsearchwhich: no java in (/sbin:/bin:/usr/sbin:/usr/bin)Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME

问题解答

回答1:

首先不能用root用户登陆,sudo默认就是root用户,sudo时需要指定其他用户名。例如:sudo -iu user_a bin/elasticsearch

回答2:

新增了一个用户,让后在以新增用户启动完成。不知道各路大神有没有在root下启动的方法?

回答3:

vi /etc/sysconfig/elasticsearch将 JAVA_HOME=/root/jdk1.8.0_60 写到文件中保存后启动service elasticsearch start正在启动 elasticsearch: [确定]

回答4:

3楼正解,我以root用户启动了

回答5:

@geekfranca 我的Logstash是2.2.2版本,系统环境是ubuntu kylin 16,然后从[官网]下载的logstash_2.2.2-1_all.deb文件进行安装的,使用的是普通用户,执行sudo service logstash configtest时,提示如下:

Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME.

安装@geekfranca 说的方法,修改了/etc/init.d/logstash 文件,执行成功了,道理应该都是一样的

标签: java
相关文章: