Why won't splunkweb start when I'm running splunk as 'splunk' user instead of root?

Splunk Employee
Splunk Employee

I want to run Splunk as the user 'splunk' instead of the user 'root'.

I am following the instructions at

When I run the command service splunk start, splunkd will start but splunkweb will not, and I cannot figure out why it won't start. I don't see any error messages.

Tags (1)

Splunk Employee
Splunk Employee

Assuming that splunkweb is configured to use the default port 8000, and you did not see anything insightful in the logs that sowings has mentioned, then try test starting up splunkweb with the following commands in $SPLUNK_HOME:

# cd splunk
# . bin/setSplunkEnv
# bin/python lib/python2.7/site-packages/splunk/appserver/mrsparkle/ start

If splunkweb fails to start using this method, you should see errors, otherwise you should only see a blinking cursor.

For example, in this case there was permission issues with the cpdispatch file:

Traceback (most recent call last):
File "lib/python2.7/site-packages/splunk/appserver/mrsparkle/", line 543, in
logger.error('Unable to start splunkweb')
File "/data/splunk/lib/python2.7/logging/", line 1158, in error
self._log(ERROR, msg, args, **kwargs)
File "/data/splunk/lib/python2.7/logging/", line 1249, in _log
record = self.makeRecord(self.namehttp://self.namehttp://self.namehttp://self.namehttp://self.name, level, fn, lno, msg, args, exc_info, func, extra)
File "lib/python2.7/site-packages/splunk/appserver/mrsparkle/", line 60, in makeRecord
from splunk.appserver.mrsparkle.lib.util import get_request_id
File "/data/splunk/lib/python2.7/site-packages/splunk/appserver/mrsparkle/", line 13, in
from lib.decorators import *
File "/data/splunk/lib/python2.7/site-packages/splunk/appserver/mrsparkle/lib/", line 2, in
import cherrypy
File "/data/splunk/lib/python2.7/site-packages/cherrypy/", line 159, in
from cherrypy import _cpdispatch as dispatch
ImportError: cannot import name _cpdispatch

Splunk Employee
Splunk Employee

Have you configured it to use a port < 1024? If you've changed the configuration to be on the standard HTTP (80) or HTTPS (443) port, you'll need super-user privileges to start. Consider also checking the web_service.log or splunkd.log in $SPLUNK_HOME/var/log/splunk directory.

Get Updates on the Splunk Community!

Splunk APM & RUM | Upcoming Planned Maintenance

There will be planned maintenance of Splunk APM’s and Splunk RUM’s streaming infrastructure in the coming ...

Part 2: Diving Deeper With AIOps

Getting the Most Out of Event Correlation and Alert Storm Detection in Splunk IT Service Intelligence   Watch ...

User Groups | Upcoming Events!

If by chance you weren't already aware, the Splunk Community is host to numerous User Groups, organized ...