`
企鹅木白
  • 浏览: 32833 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

误将sudo权限给了分用户又没有root密码

阅读更多
   今天在修改hosts文件的时候提醒我我只有只读权限。当场就脑抽了,然后使用chown命令把etc的权限给了我的hadoop用户,然后就悲剧了,sudo用不了了,使用时提示 sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set。
     网上查了查资料好像可以进入超级管理员root再改回来,但是我果断的当时没有设置root密码,网上说可以用进入recovery模式不用密码就可以登录root用户。
    重启按住shift不动进入recovery,然后选择root,在命令行里输入
   chown root /etc/sudoers
   chmod 644 /usr/lib/sudo/sudoers.so
   chmod 644 /usr/lib/sudo/sudo_noexec.so

   chown root:root /etc/sudoers
   chmod 440 /etc/sudoers
   每次输入后记得测试一下sudo是否起作用,然后在根据它给出的提示,给出相应的权限。
    当然你最好首先给root设立一个密码,方便以后有什么需要,passwd su,然后按照提示输入密码。不过进入recovery mode之后要改动根目录的挂在方式,修改为rw,输入mount -o remount rw /;
    我当时做完这些后在root中就课以使用sudo了,但是重启后我的其他用户却不能使用sudo命令了,提示 sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set。
    我根据网上的做法是重置一下sudo的属性。
    chown root:root /usr/bin/sudo
   chmod 4755 /usr/bin/sudo,恩的确搞定了.....
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics