DSpace - ошибки инициализации SolrCore, невозможно создать каталог - PullRequest
0 голосов
/ 16 апреля 2020

Я получаю «Внутренняя ошибка сервера в JSPUI Dspace». Я думаю, что проблема с 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 голосов
/ 06 мая 2020

Как пользователь, выполняющий Dspace, вы получаете ошибку разрешения, если вы выполняете c следующее в терминале?:

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

Если это так, это означает, что пользователь не иметь разрешение на доступ к файлу.

Кроме того, это файл блокировки, что означает, что индекс, вероятно, используется другим экземпляром Solr. Убедитесь, что у вас нет другого процесса, использующего этот файл или solr.

Вы также можете попробовать остановить все экземпляры Dspace / Solr, удалить файл блокировки вручную и снова запустить службы.

Я настоятельно не рекомендую давать полные разрешения на чтение и запись, поскольку это ослабляет безопасность. Как только вы определите правильного пользователя и разрешения для файла, ограничьте их правильно, предоставив только права на чтение и / или запись для пользователей, которым требуется идентификатор (пользователь solr и dspace).

...