当我尝试在solr中创建新内核时,我收到此错误。
Sum of Total
另外,如果我尝试另外创建,它会给我同样的错误:
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
在浏览器中,当我尝试访问solr管理面板时,它会显示如下通知:
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
快照已附加。
答案 0 :(得分:45)
因为它可能对任何有同样问题的人有所帮助,所以在使用root
时确实是由permission issues引起的。以root身份执行命令时,脚本不会快速终止,而是在失败之前创建一个核心定义。
首先清理破碎的核心:
bin/solr delete -c mycore
确保/var/solr/data
核心的mycore
下没有任何文件夹。
接下来,将核心创建为solr
用户
su -u solr -c "/opt/solr/bin/solr create_core -c mycore"
这一次它应该成功
答案 1 :(得分:7)
我发现这是解决方案:
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/
答案 2 :(得分:6)
不要以solr
用户身份运行root
脚本(not recommended)。您应该以{{1}}用户身份运行,例如:
solr
答案 3 :(得分:1)
您可以通过以下步骤解决问题:
检查具有正确文件的目录是否存在:
然后打开 核心管理员,"添加新核心",输入正确的目录/文件 命名并将核心添加到系统中。实际上它会给你一个核心已存在的错误信息。刷新管理员网页 浏览器,它将自动加载此核心现在没有任何 错误信息。
答案 4 :(得分:1)
在我看来可能是一个用户权限问题。您似乎以root身份运行命令,但有些工作是由Solr服务器完成的。服务器进程是否可能与无法访问错误消息中提到的目录的用户一起运行。
答案 5 :(得分:1)
请注意,在创建核心之前,应将一个具有相同名称的目录放入:
C:\ ... \ solr-8.3.11 \ server \ solr
然后从示例中复制 conf 文件夹或默认文件夹。
我在Windows中遇到了同样的问题 我从示例中复制了 conf 文件夹:
C:\ ... \ solr-8.3.1 \ example \ files
到这里:
C:\ ... \ solr-8.3.1 \ server \ solr \ new_core
我的问题解决了。
您还可以从其默认文件夹中复制 conf 文件夹:
C:\ ... \ solr-8.3.11 \ server \ solr \ configsets_default
此处 new_core 是我要添加的新内核的名称。
所以也许在 Ubuntu 中处理此文件夹可以解决您的问题。
下一个解决方案: 使用命令提示符或终端运行solr之后,使用以下命令创建核心:
solr create -c new_core_name
答案 6 :(得分:0)
这对我来说正常工作...以solr linux用户身份创建内核。
sudo su - solr -c "/opt/solr/bin/solr create -c mycol1 -n data_driven_schema_configs"