Reputation: 1608
I want to change path.data to other path, and I already have some data in the elasticsearch.
I follow How to move elasticsearch data directory? And restart elasticsearch, the error occurred.
My elasticsearch version is elasticsearch-5.6.1. And here is my log in /var/log/elasticsearch
java.lang.IllegalStateException: Unable to access 'default.path.data' (/var/lib/elasticsearch) at org.elasticsearch.bootstrap.Security.addPath(Security.java:444) ~[elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Security.addFilePermissions(Security.java:322) ~[elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Security.createPermissions(Security.java:240) ~[elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Security.configure(Security.java:118) ~[elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:228) ~[elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.6.1.jar:5.6.1] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.6.1.jar:5.6.1] Caused by: java.nio.file.AccessDeniedException: /var/lib/elasticsearch at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84) ~[?:1.8.0_131] at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) ~[?:1.8.0_131] at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) ~[?:1.8.0_131] at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:384) ~[?:1.8.0_131] at java.nio.file.Files.createDirectory(Files.java:674) ~[?:1.8.0_131]
After digging into it, I found https://github.com/elastic/elasticsearch/issues/25265.
I want to know that is there workaround to fix this issue? or I need to wait for version 6.0.0?
Upvotes: 0
Views: 14502
Reputation: 1608
After digging into it, I find the answer.
Removed the "-Edefault.path.data=${DATA_DIR} " parameter from the startup command and everything works fine again.
My environment is Ubuntu 16.04 and install ES from RPM/DEB.
The path of startup command in /etc/init.d/elasticsearch
and I also alter /usr/lib/systemd/system/elasticsearch.service
and then service restart. Problem solved.
By the way, if I also face permission problem of path data. To resolve it by
sudo chown -R elasticsearch:elasticsearch /your/data/path
Hope these helpful!
Upvotes: 7