# Elasticsearch 5.1.1 cannot run as root user

**URL:** <https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304>\
**Category:** Elasticsearch\
**Created:** [December 30, 2016, 11:48pm UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304 "2016-12-30T23:48:02Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![bishaka](https://avatars.discourse-cdn.com/v4/letter/b/e480ec/32.png) [@bishaka](https://discuss.elastic.co/u/bishaka)\
**Post date:** [December 30, 2016, 11:48pm UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/1 "2016-12-30T23:48:02Z")

</div>

Hi,  
I was trying to run elasticsearch.5.1.1 version in my server and i get the following error:

> [2016-12-30T15:45:51,714][WARN][o.e.b.ElasticsearchUncaughtExceptionHandler] uncaught exception in thread [main]  
> org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root  
> at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:96) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.cli.Command.main(Command.java:62) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:89) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:82) ~[elasticsearch-5.1.1.jar:5.1.1]  
> Caused by: java.lang.RuntimeException: can not run elasticsearch as root  
> at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:100) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:176) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:306) ~[elasticsearch-5.1.1.jar:5.1.1]  
> at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-5.1.1.jar:5.1.1]  
> ... 6 more

I tried running it as a non root user, i still get the same error.

---

<div class="post-metadata">

**Author:** ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)\
**Post date:** [December 31, 2016, 12:22am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/2 "2016-12-31T00:22:12Z")

</div>

I've not seen that test fail when not running as root before. Are you sure  
your user change took? If you can reproduce it probably is a bug.

---

<div class="post-metadata">

**Author:** ![bishaka](https://avatars.discourse-cdn.com/v4/letter/b/e480ec/32.png) [@bishaka](https://discuss.elastic.co/u/bishaka)\
**Post date:** [December 31, 2016, 12:33am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/3 "2016-12-31T00:33:01Z")

</div>

When I try executing it as a non root user, I get the following error:

> 2016-12-30 16:31:00,462 main ERROR Could not register mbeans java.security.AccessControlException: access denied ("javax.management.MBeanTrustPermission" "register")  
> at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)  
> at java.lang.SecurityManager.checkPermission(SecurityManager.java:585)  
> at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission(DefaultMBeanServerInterceptor.java:1848)  
> at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:322)  
> at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)  
> at org.apache.logging.log4j.core.jmx.Server.register(Server.java:389)  
> at org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:167)  
> at org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:140)  
> at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:541)  
> at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:258)  
> at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:206)  
> at org.apache.logging.log4j.core.config.Configurator.initialize(Configurator.java:220)  
> at org.apache.logging.log4j.core.config.Configurator.initialize(Configurator.java:197)  
> at org.elasticsearch.common.logging.LogConfigurator.configureStatusLogger(LogConfigurator.java:125)  
> at org.elasticsearch.common.logging.LogConfigurator.configureWithoutConfig(LogConfigurator.java:67)  
> at org.elasticsearch.cli.Command.main(Command.java:59)  
> at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:89)  
> at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:82)

> Exception in thread "main" SettingsException[Failed to load settings from /opt/Oracle/relk/elasticsearch-5.1.1/config/elasticsearch.yml]; nested: AccessDeniedException[/opt/Oracle/relk/elasticsearch-5.1.1/config/elasticsearch.yml];  
> Likely root cause: java.nio.file.AccessDeniedException: /opt/Oracle/relk/elasticsearch-5.1.1/config/elasticsearch.yml  
> 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.newByteChannel(UnixFileSystemProvider.java:214)  
> at java.nio.file.Files.newByteChannel(Files.java:361)  
> at java.nio.file.Files.newByteChannel(Files.java:407)  
> at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)  
> at java.nio.file.Files.newInputStream(Files.java:152)  
> at org.elasticsearch.common.settings.Settings$Builder.loadFromPath(Settings.java:927)  
> at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareEnvironment(InternalSettingsPreparer.java:102)  
> at org.elasticsearch.bootstrap.Bootstrap.initialEnvironment(Bootstrap.java:230)  
> at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)  
> at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121)  
> at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112)  
> at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54)  
> at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:96)  
> at org.elasticsearch.cli.Command.main(Command.java:62)  
> at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:89)  
> at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:82)  
> Refer to the log for complete error details.

---

<div class="post-metadata">

**Author:** ![bishaka](https://avatars.discourse-cdn.com/v4/letter/b/e480ec/32.png) [@bishaka](https://discuss.elastic.co/u/bishaka)\
**Post date:** [December 31, 2016, 12:49am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/4 "2016-12-31T00:49:44Z")

</div>

Just to add something: I downloaded .tar.gz version of the elasticsearch...

I was able to successfully run and install elasticsearch back in November without any of these issues. Not sure if it something new to Elasticsearch

---

<div class="post-metadata">

**Author:** ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)\
**Post date:** [December 31, 2016, 1:33am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/5 "2016-12-31T01:33:27Z")

</div>

It looks like the user running elasticsearch can't read the elasticsearch  
config file. Maybe you unzipped as root and the other user cant read it? I  
always unzip as the user that will run elasticsearch or use the rpm or Deb.

---

<div class="post-metadata">

**Author:** ![bishaka](https://avatars.discourse-cdn.com/v4/letter/b/e480ec/32.png) [@bishaka](https://discuss.elastic.co/u/bishaka)\
**Post date:** [December 31, 2016, 1:36am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/6 "2016-12-31T01:36:13Z")

</div>

Hi Nik,  
I also tried unzipping it as the nonroot user..but still same issue..

In the past, I was able to run elasticsearch as the root user (Back in october - nov). Did they change this recently?

---

<div class="post-metadata">

**Author:** ![jasontedor](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jasontedor/32/66992_2.png) [@jasontedor](https://discuss.elastic.co/u/jasontedor)\
**Post date:** [December 31, 2016, 3:07am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/7 "2016-12-31T03:07:16Z")

</div>

> [@bishaka](#):
>
> Exception in thread "main" SettingsException[Failed to load settings from /opt/Oracle/relk/elasticsearch-5.1.1/config/elasticsearch.yml]; nested: AccessDeniedException[/opt/Oracle/relk/elasticsearch-5.1.1/config/elasticsearch.yml];Likely root cause: java.nio.file.AccessDeniedException: /opt/Oracle/relk/elasticsearch-5.1.1/config/elasticsearch.yml

If you're seeing this it's because the user that you're trying to run as does not have file permissions to view the config file. You either need to change the permissions or the ownership so that the non-root user that you're trying to run as can view this file (and the `jvm.option` file which relates to the other error message that you're seeing).

> [@bishaka](#):
>
> In the past, I was able to run elasticsearch as the root user (Back in october - nov). Did they change this recently?

You can not run as the root user in \>= 5.0.0. In \>= 2.0.0 and \< 5.0.0 you could run as the root user but only with a special system property.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [January 28, 2017, 3:07am UTC](https://discuss.elastic.co/t/elasticsearch-5-1-1-cannot-run-as-root-user/70304/8 "2017-01-28T03:07:27Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
