I am getting the dreaded
sudo: must be setuid root error even though the executable in
/usr/bin/sudo has ownership
root:root and mode 4755 (
/etc/sudoers is mode 440. My user is in sudoers with all appropriate settings. I've purged and re-installed the package, to no avail.
I didn't initially configure this machine; its upkeep has fallen to me by default. Is it possible that this behaviour is an interaction with PAM and, if so, how do I fix it? The machine is running Debian squeeze 2.6.26-2-686 SMP kernel. Nothing is written on failure to
/var/log/auth.log so it's bailing out before that.
UPDATE: here's sudoers (with a lot of superfluous comment lines removed), but I'm pretty sure it's not the issue.
Defaults env_reset Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:\ /usr/bin:/sbin:/bin" # Host alias specification # User alias specification User_Alias SUDOERS=david Defaults:SUDOERS !lecture,!authenticate # User privilege specification root ALL=(ALL:ALL) ALL %sudo ALL=(ALL:ALL) ALL SUDOERS ALL=(ALL:ALL) ALL
Yes, I know this is overly lax. I'll tighten it up when I get it working. As far as I can tell, it never even gets to the stage of reading this file, but dies when the sudo process itself tries to escalate its user ID. A near-identical setup works flawlessly on several (>10) other machines, so I think it must be an external configuration that is causing this to fail.