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!

Dashboard Studio Challenge - Learn New Tricks, Showcase Your Skills, and Win Prizes!

Reimagine what you can do with your dashboards. Dashboard Studio is Splunk’s newest dashboard builder to ...

Introducing Edge Processor: Next Gen Data Transformation

We get it - not only can it take a lot of time, money and resources to get data into Splunk, but it also takes ...

Take the 2021 Splunk Career Survey for $50 in Amazon Cash

Help us learn about how Splunk has impacted your career by taking the 2021 Splunk Career Survey. Last year’s ...