Originally posted on 2021-02-10
This error message is truly odd in my humble opinion. I was working on a project today with someone and they saw this error message in their log file. Basically it appeared that root was not allowed to switch users and run a Python script as a different user.
Shouldn't root be able to change into any user? You'd think, but apparently not.
How do you fix it? Stack Overflow bails us out again. The gist is that you need to update
visudo!) and add this line if it is missing:
root ALL=(ALL:ALL) ALL
For reference, a default Ubuntu
/etc/sudoers that has this in it looks like this:
# # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d ubuntu ALL=(ALL) NOPASSWD: /sbin/poweroff, /sbin/reboot, /sbin/shutdown