出现场景:
服务器运行一个flask应用,需要sudo到www-data下面运行flask的一个自定义命令,操作后台数据库添加一条数据。当运行sudo –u www-data时出现
sudo: error in /etc/sudo.conf, line 0 while loading plugin 'sudoers_policy'
sudo: /usr/lib/sudo/sudoers.so must only be writable by owner
sudo: fatal error, unable to load plugins
解决方案:
执行下面两个命令修改文件权限
$ chmod 644 /usr/lib/sudo/sudoers.so
$ chown -R root /usr/lib/sudo
问题原因:
用ll查看了一下sudoer.so和sudo的用户权限,发现owner都是非root用户,所以才导致当前用户没有权限执行sudo命令,修改权限后,即可解决此问题。