遇到问题
https://www.elastic.co/guide/en/logstash/current/installing-logstash.html#installing-logstash
直接在java 10.0.2 安装logstash时,安装错误如下:
sudo apt-get install logstash
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
logstash
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
Need to get 0 B/171 MB of archives.
After this operation, 299 MB of additional disk space will be used.
Selecting previously unselected package logstash.
(Reading database ... 242511 files and directories currently installed.)
Preparing to unpack .../logstash_1%3a6.6.1-1_all.deb ...
Unpacking logstash (1:6.6.1-1) ...
Setting up logstash (1:6.6.1-1) ...
Using provided startup.options file: /etc/logstash/startup.options
Unrecognized VM option 'UseParNewGC'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
chmod: cannot access '/etc/default/logstash': No such file or directory
dpkg: error processing package logstash (--configure):
installed logstash package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
logstash
E: Sub-process /usr/bin/dpkg returned an error code (1)
上网找到ubuntu 可以切换java jdk版本
https://zhuanlan.zhihu.com/p/25896283
查看当前java版本
java -version
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4, mixed mode)
切换java版本
sudo update-alternatives --config java
sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 manual mode
* 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number: 2
再次查看当前版本
java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-2ubuntu0.18.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
再次安装
sudo apt-get install logstash
Reading package lists... Done
Building dependency tree
Reading state information... Done
logstash is already the newest version (1:6.6.1-1).
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up logstash (1:6.6.1-1) ...
Using provided startup.options file: /etc/logstash/startup.options
Successfully created system startup script for Logstash
W: APT had planned for dpkg to do more than it reported back (0 vs 4).
Affected packages: logstash:amd64
成功了 ^ _ ^
知识补充
大家可以查看一下 man update-alternatives
相关命令
sudo update-alternatives –
–admindir --altdir --auto --config --display --help --install --quiet --remove --set --verbose --version
示例:
sudo update-alternatives --display java
java - manual mode
link best version is /usr/lib/jvm/java-11-openjdk-amd64/bin/java
link currently points to /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
link java is /usr/bin/java
slave java.1.gz is /usr/share/man/man1/java.1.gz
/usr/lib/jvm/java-11-openjdk-amd64/bin/java - priority 1101
slave java.1.gz: /usr/lib/jvm/java-11-openjdk-amd64/man/man1/java.1.gz
/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java - priority 1081
slave java.1.gz: /usr/lib/jvm/java-8-openjdk-amd64/jre/man/man1/java.1.gz