I am trying to run my script as below and want access to sudo user running this script.
:$sudo -u usergroup script.py
So here I am expecting 'usergroup' as output. What I have tried is,
- getpass: This gives you the actual user and not sudo user
.
:$ sudo -u usergroup ipython
In [1]: import getpass
In [2]: getpass.getuser()
Out[2]: 'akshay'
- os.getenv
.
In [4]: os.getenv("SUDO_USER")
Out[4]: 'akshay'
In [5]: os.getenv("USER")
Out[5]: 'akshay'
I am using below python version.
In [7]: sys.version
Out[7]: '2.7.11 (default, Apr 25 2016, 09:27:56) \n[GCC 5.2.1 20150902 (Red Hat 5.2.1-2)]'
In [8]:
Kindly help here. Could not came across any existing question or solution for it.
sudoexpands to switch user and do. It can be used to execute a command as any other user. The user can be specified using-u. Now the default (in case -u is not provided) isroot.