在配置python开发环境时,因为安装sklearn包,改变了/usr/bin目录的权限,然后出现了这样一个错误:
sudo: effective uid is not 0, is sudo installed setuid root
提示切换到root用户去设置,但当时我没有root用户的密码,经过多番折腾无果,我打通了公司运维的电话:
1 我申请root权限 ------ 然后被告知aws云服务器是没有root用户的,他也提供不了
2 跟我要了改变这个文件夹权限的时间,运维把服务器的环境恢复到了改变权限的前一天,问题解决了。
这里提一下:查网上的资料,有种解决办法:重启服务器,然后重新设置,比如这篇文章:传送门
我试了下,然后,悲剧了-----aws 重启命令,需要在root用户下执行,所以无奈之下找了运维小哥哥。
环境被恢复到了安装sklearn的前一天,然后发现之前安装好的sklearn又没有了,我不得不重新安装,那长记性了,先设置下root用户的密码,进行了如下操作
sudo passwd root
然后重新设置了root用户的密码
3 给文件提升权限
sudo chmod -R 777 /usr/bin
然后,安装sklearn
pip install sklearn
4 安装完毕了,然后试了下sudo命令,嗯,又提示:
sudo: effective uid is not 0, is sudo installed setuid root
5 因为之前设置了root用户的密码,登录root,进行如下操作:
chown root /usr/bin/sudo
chgrp root /usr/bin/sudo
chmod +s /usr/bin/sudo
6 再试下sodu命令,已经可以正常使用了