web-dev-qa-db-ja.com

LinuxマシンでElasticsearch 2.1.1をrootユーザーとして実行する方法

ルートユーザーであるLinuxマシンでElasticsearch 2.1.1を実行しようとしています。

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ユーザーとしてのみ実行することです。別のユーザーとして実行せずにこの問題を解決する方法。

23
Mangoski

以下に基づいて code-snippet プロパティes.insecure.allow.rootを有効にすることでこれを達成できるはずです。

例:

bin/elasticsearch -Des.insecure.allow.root=true
46
keety
  1. スクリプトファイルを開く:

    vi bin/elasticsearch

  2. ルートを許可するためのプロパティを追加します。

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

  3. 保存して閉じます。
  4. これでルートから開始できます。

がんばろう。

10
Viet Tran

エイリアスを作成することもできます

エイリアスelasticsearch = 'elasticsearch -Des.insecure.allow.root = true'

bashrcファイルに上記の行を追加し、その後elasticsearchコマンドが機能します。

4
Ravi Prajapati

Elasticsearch-X.X.Xの所有者とグループを変更し、そのユーザーとして実行する必要があります。 elasticsearch-5.3.0で動作します

1
Hunter

この問題を解決するには2つの回避策があります:

解決策1: Zipファイルnをダウンロードして解凍し、次のコマンドで開始します

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

解決策2:

vi bin/elasticsearch

Rootが2つのインスタンスを実行できるようにするプロパティを追加します。

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

保存して閉じます。 rootで今すぐ開始できます。

0
truekiller

linuxサーバーにuser = esと言う新しいユーザーを作成し、Sudo chown -R es elasticsearch-6.1.0/その後、「es」ユーザーアカウントを切り替えて実行できます./elasticsearch-6.1.0/bin/elasticsearch

0
mahi