[Ubuntu学习笔记]由于操作失误造成ubuntu16.04下运行sudo 出现sudo: /usr/bin/sudo must be owned by uid 0 and have the s报错

最近在虚拟机上进行数据解算的时候,由于误操作,把/usr目录下的权限都改成777导致无法运行sudo -s以及一切带sudo的命令了,惨痛的教训再一次提醒自己和大家,作为一个linux小白,千万不要瞎改权限。报错的截屏刚才忘了保存,具体的就是:我在运行sudo -s 周后终端直接报错:sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
带着问题一顿百度发现还挺多人出现这样的失误,于是按照各方大神的博客,解决了这个问题。首先按照linux sudo命令失败 提示sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位这里的描述修改/usr/bin的权限:

  1. 终端直接输入reboot,ubuntu会进行重启,当进入开机界面的时候按住shift键不放,出现GRUB界面。
  2. 选择Advanced options for ubuntu,选择后缀为(recovery mode)的选项,即可进入recovery模式,出现recovery menu时,选择倒数第二个root选项,下方出现类似终端的界面,输入root的密码即可进行修改权限的操作
  3. 输入chmod 755 /usr ,输入chmod 4755 /usr/bin/sudo
  4. 继续输入reboot,系统重新启动
    [Ubuntu学习笔记]由于操作失误造成ubuntu16.04下运行sudo 出现sudo: /usr/bin/sudo must be owned by uid 0 and have the s报错
    [Ubuntu学习笔记]由于操作失误造成ubuntu16.04下运行sudo 出现sudo: /usr/bin/sudo must be owned by uid 0 and have the s报错

到这里本来应该可以结束了,但是我开机后运行sudo -s,又出现了这样的报错:
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
再次一番百度,发现还是/usr目录下权限的问题,按照博客:sudo: error in /etc/sudo.conf, line 0 while loading plugin 'sudoers_policy’的提示,经过设置后可以解决问题。
值得注意的是,上述博文中修改权限仍在recovery模式下。至此,可以正常进入sudo状态:
[Ubuntu学习笔记]由于操作失误造成ubuntu16.04下运行sudo 出现sudo: /usr/bin/sudo must be owned by uid 0 and have the s报错