机器:centos7.2
javahome:
export JAVA_HOME=/root/jdk1.8.0_60
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@i-j73a8nn6 ~]# java -version
java 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/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.
sudo启动报错:
[root@i-j73a8nn6 ~]# sudo elasticsearch-2.2.1/bin/elasticsearch
which: 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
First of all, you cannot log in as the root user. The sudo default is the root user. You need to specify another user name when sudoing. For example: sudo -iu user_a bin/elasticsearch
A new user has been added, please start it with the new user later.
I wonder if any of the experts have a way to start it under root?
vi /etc/sysconfig/elasticsearch
Write JAVA_HOME=/root/jdk1.8.0_60 to the file, save it and start it
service elasticsearch start
Starting elasticsearch: [OK]
Correct answer on the 3rd floor, I started it as root user
@geekfranca
My Logstash is version 2.2.2, the system environment is ubuntu kylin 16, and then I installed it from the logstash_2.2.2-1_all.deb file downloaded from [official website]. I used an ordinary user and executed sudo service logstash configtest , the prompt is as follows:
Install the method mentioned by @geekfranca, modify the /etc/init.d/logstash file, and the execution is successful. The principle should be the same