Splunk Dev

On Linux how to allow non-root users to use the splunklib Python module

sillingworth
Path Finder

After installing splunksdk on a linux server only the root user could import splunklib, other users would get

"ImportError: No module named splunklib.client" *(or .results, etc)*

The module had installed itself in:

/lib/python2.7/site-packages/setuptools-0.9.8-py2.7.egg-info

I've got it working now and will post an answer so people searching for the same issue can find it, but I'm not really happy with it - seems like a fudge. I'd like to know what people think: is this intended behaviour? Is there a better fix? Is this a mistake by Splunk, or by the people who wrote the distro or configured my server (it's running Oracle Linux Server 7), or potentially a mistake I made installing the module (if I recall correctly it was just a case of, as root, extracting the archive then running python setup.py install)?

Tags (1)
0 Karma

sillingworth
Path Finder

My solution, which works but seems less than ideal, was:

in /lib/python2.7/site-packages/:

chmod -R 755 setuptools-0.9.8-py2.7.egg-info
ln -s setuptools-0.9.8-py2.7.egg-info/splunklib splunklib
0 Karma

sillingworth
Path Finder

The fact I had to do the chmod I think points to a server config issue, probably the umask, but the second issue seems very strange. So root was looking inside setuptools-0.9.8-py2.7.egg-info whereas other users weren't. I have no idea why this would be.

0 Karma
Get Updates on the Splunk Community!

Introducing the 2024 SplunkTrust!

Hello, Splunk Community! We are beyond thrilled to announce our newest group of SplunkTrust members!  The ...

Introducing the 2024 Splunk MVPs!

We are excited to announce the 2024 cohort of the Splunk MVP program. Splunk MVPs are passionate members of ...

Splunk Custom Visualizations App End of Life

The Splunk Custom Visualizations apps End of Life for SimpleXML will reach end of support on Dec 21, 2024, ...