Solrで新しいコアを作成しようとすると、このエラーが発生します。
root@ubuntu:/opt/solr# bin/solr create -c gettingstarted -n data_driven_schema_configs
Setup new core instance directory:
/var/solr/data/gettingstarted
Creating new core 'gettingstarted' using command:
http://localhost:8983/solr/admin/cores?action=CREATE&name=gettingstarted&instanceDir=gettingstarted
Failed to create core 'gettingstarted' due to: Error CREATEing SolrCore 'gettingstarted': Unable to create core [gettingstarted] Caused by: /var/solr/data/gettingstarted/data
また、代わりに作成しようとすると、同じエラーが発生します:
root@ubuntu:/opt/solr# bin/solr create -c mycore
Setup new core instance directory:
/var/solr/data/mycore
Creating new core 'mycore' using command:
http://localhost:8983/solr/admin/cores?action=CREATE&name=mycore&instanceDir=mycore
Failed to create core 'mycore' due to: Error CREATEing SolrCore 'mycore': Unable to create core [mycore] Caused by: /var/solr/data/mycore/data
ブラウザで、solr管理パネルにアクセスしようとすると、次のような通知が表示されます。
SolrCore Initialization Failures
opt/solr/example/exampledocs/*.xml: org.Apache.solr.common.SolrException:org.Apache.solr.common.SolrException: /var/solr/data/opt/solr/example/exampledocs/*.xml/data
スナップショットが添付されます。
同じ問題を抱えている人を助けるかもしれないので、root
を使用するときに 許可の問題 が原因です。 rootとしてコマンドを実行すると、スクリプトはすぐに終了せず、代わりに失敗する前にコア定義の一部を作成します。
そのため、最初に破損したコアをクリーンアップします。
bin/solr delete -c mycore
mycore
コアの/var/solr/data
の下にフォルダーが残らないようにしてください。
次に、solr
ユーザーとしてコアを作成します
su -u solr -c "/opt/solr/bin/solr create_core -c mycore"
今回は成功するはずです
私はこれを解決策として見つけました:
Sudo su - solr -c "/opt/solr/bin/solr create -c mycore"
詳細はこちら: https://www.howtoforge.com/tutorial/how-to-install-and-configure-solr-on-ubuntu-1604/
solr
スクリプトをroot
ユーザーとして実行しないでください( 非推奨 です)。 solr
ユーザーとして実行する必要があります。例:
Sudo -u solr ./bin/solr create -c mycore
次の手順で問題を解決できます。
適切なファイルを含むディレクトリが存在するかどうかを確認します。
次に、コア管理、「新しいコアの追加」を開き、正しいディレクトリ/ファイル名を入力して、システムにコアを追加します。実際には、コアがすでに存在するというエラーメッセージが表示されます。ブラウザで管理Webページを更新すると、エラーメッセージなしでこのコアが自動的にロードされます。
ユーザー許可の問題の可能性があるように見えます。 rootとしてコマンドを実行しているようですが、一部の作業はSolrサーバーによって実行されます。エラーメッセージに記載されているディレクトリにアクセスできないユーザーでサーバープロセスが実行される可能性はありますか。
これは私と一緒に正常に動作します... solr linuxユーザーとしてコアを作成します。
Sudo su - solr -c "/opt/solr/bin/solr create -c mycol1 -n data_driven_schema_configs"