DSpace-SolrCore初始化失败,无法创建目录

时间:2020-04-16 14:54:04

标签: java tomcat solr dspace

我收到“ Dspace JSPUI中的内部服务器错误”。我认为问题出在solr。我检查了http://localhost:8080/solr/。我发现solr无法使用消息“ SolrCore初始化失败”创建某些目录。 Dspace文件夹具有所有用户的所有权限。其中之一的日志如下:

`

org.apache.solr.common.SolrException: /dspace/solr/search/data/index/write.lock
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:881)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:654)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:491)
    at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:255)
    at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:249)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.nio.file.AccessDeniedException: /dspace/solr/search/data/index/write.lock
    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
    at sun.nio.fs.UnixFileSystemProvider.newFileChannel(UnixFileSystemProvider.java:177)
    at java.nio.channels.FileChannel.open(FileChannel.java:287)
    at java.nio.channels.FileChannel.open(FileChannel.java:335)
    at org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:167)
    at org.apache.lucene.store.Lock.obtain(Lock.java:77)
    at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:755)
    at org.apache.solr.update.SolrIndexWriter.<init>(SolrIndexWriter.java:77)
    at org.apache.solr.update.SolrIndexWriter.create(SolrIndexWriter.java:64)
    at org.apache.solr.core.SolrCore.initIndex(SolrCore.java:531)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:785)

`

1 个答案:

答案 0 :(得分:0)

作为运行Dspace的用户,如果在终端中执行以下命令,会得到权限错误吗?:

touch /dspace/solr/search/data/index/write.lock

如果是这种情况,则意味着用户无权访问该文件。

此外,这是一个锁定文件,这意味着该索引可能正在由另一个Solr实例使用。检查您是否没有使用此文件或so​​lr的其他任何进程。

您还可以尝试停止Dspace / Solr的所有实例,手动删除锁定文件,然后重新启动服务。

我强烈建议您不要授予完全读取-写权限,因为这会削弱安全性。确定了文件的正确用户和权限后,请对其进行正确限制,从而仅将读取和/或写入权限授予需要id的用户(solr和dspace用户)。