linux sudo命令失败 提示sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位

这是一个神奇的错误,缘由是因为有人将/usr/bin/sudo的权限改为777或其他。

解决办法:

1.如果知道root密码。

su登录root用户,执行命令chmod 4755     /usr/bin/sudo    执行命令chmod 755 /usr

2.不知道root密码。

重启机器,ubuntu下按esc或shift,进入recovery模式,进入后选择root选项,有的会提示输入root密码,有的不会。

(1).不需要输入root密码的情况下,执行chmod 4755     /usr/bin/sudo

执行命令chmod 755 /usr

(2)需要输入root密码的难兄难弟们,请往下看。

重启的时候,进入ubuntu高级选项(有的系统是英文的,自己翻译,大概是Advanced options for ubuntu这样),之后能看到recovery 啥啥啥的,按e进入,找到linux /boot/vmlinuz-----\*** ro recovery nomodestset

这句话,然后将ro recovery nomodestset啥啥啥一大串修改为rw single init=/bin/bash,然后ctrl+x进入单人模式。

此时,想要更改root密码的输入passwd 密码,之后再确认一次就更改成功了。

执行chmod 755 /usr  执行chmod 4755     /usr/bin/sudo

重启(reboot),世界都安静了。

3.题外,如果重启之后,提示sudo:在加载插件“sudoers_policy”时在 /etc/sudo.conf 第 0 行出错的难兄难弟们。

必须用单人模式(即第2点第2条)进行重置root密码(如果不知道的话),重启进入系统,然后卸载sudo,然后重装就可以了。ubuntu命令如下:apt-get remove sudo

执行apt-get install sudo。然后世界都安静了。

加油变强,赚钱+15。

原文地址:https://www.cnblogs.com/chxwkx/p/10686864.html

时间: 2024-08-13 09:59:20

linux sudo命令失败 提示sudo:/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位的相关文章

sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set 的解决办法

Linux新建用户 ,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 然后就ok了. 原文地址:https://www.cnblogs.com/justlove/p/11366036.html

树莓派(Raspberry Pi 3) centos7使用yum命令报错File "/usr/bin/yum", line 30 except KeyboardInterrupt, e:

使用yum命令报错 File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^SyntaxError: invalid syntax 问题如下:  问题出现原因: yum包管理是使用python2.x写的,将python2.x升级到python3.x以后,由于python版本语法兼容性导致问题出现 解决办法: 修改yum配置文件,将python版本指向以前的旧版本 # vi /usr/bin/yum #!/usr/bin/py

Linux进程的实际用户ID和有效用户ID

在Unix进程中涉及多个用户ID和用户组ID,包括如下: 1.实际用户ID和实际用户组ID:标识我是谁.也就是登录用户的uid和gid,比如我的Linux以simon登录,在Linux运行的所有的命令的实际用户ID都是simon的uid,实际用户组ID都是simon的gid(可以用id命令查看). 2.有效用户ID和有效用户组ID:进程用来决定我们对资源的访问权限.一般情况下,有效用户ID等于实际用户ID,有效用户组ID等于实际用户组ID.当设置-用户-ID(SUID)位设置,则有效用户ID等于

linux系统学习笔记:无死角理解保存的设置用户ID,设置用户ID位,有效用户ID,实际用户ID

一.基本概念 实际用户ID(RUID):用于标识一个系统中用户是谁,一般是在登录之后,就被唯一的确定,就是登录的用户的uid. 有效用户ID(EUID):用于系统决定用户对系统资源的权限,也就是说当用户做任何一个操作时,最终看它有没有权限,都是在判断有效用户ID是否有权限.如果有,则ok,否则报错不能执行.在正常的情况下,一个用户登录之后(假设是A用户),A用户的有效用户ID和实际用户ID是相同的,但是如果A用户在某些场景中想要执行一些特权操作,能顺利的执行吗?上面说到了用户的任务操作,linu

解决linux用户切换失败 su:execute /usr/bin 没有权限

问题描述: 回宿舍前,在root用户中安装fish,并修改其shell为fish.回宿舍之后,在图形界面用root用户进行登陆,莫名其妙登陆失败.没有任何提示信息,直接回到登陆界面.用非root用户登陆后,执行su root命令切换到root用户,报错:su execute /usr/bin/ 权限不够. 经过了一番查询,网友们的操作是将/usr/bin目录权限修改为777,还有一些我看不懂的操作.这么做当然是无效的! 解决办法: 通过查看/etc/passwd,发现/usr/bin是root用

linux 查看当前用户id、whoami用户列表、用户组、用户权限/etc/passwd、/etc/group、/etc/shadow以及切换用户身份、su、sudo、/etc/sudoers

一.查看当前用户之id.whoami 命 令:id 功能说明:查看显示目前登陆账户的uid和gid及所属分组及用户名 语 法:id [-gGnru][--help][--version][用户名称] 补充说明:id会显示用户以及所属群组的实际与有效ID.若两个ID相同,则仅显示实际ID.若仅指定用户名称,则显示目前用户的ID. 这个命令在溢出时经常用到,查看是不是溢出root成功,执行一下id命令,显示uid=0,则成功了. 参 数: -g或--group 显示用户所属群组的ID. -G或--g

删除vsftpd失败,出现 /usr/bin/dpkg returned an error code (1)【已解决】

1.问题描述 安装openssh-server时,检测到系统中安装有vsftpd,两者不兼容,需要将vsftpd卸载.在卸载时出现 Sub-process /usr/bin/dpkg returned an error code (1) 2.解决方案 由于之前在安装 vsftpd 时,新建了一个临时的 ftp 帐户.考虑到可能是该账户的存在导致了vsftpd 一直无法释放. 先删除 ftp 账户 $ sudo userdel -r ftp 再删除 vsftpd $ sudo apt-get re

linux file命令使用提示command not found

问题:linux下,使用file命令发现提示command not found 解决:需要安装,执行命令:yum -y install file 安装后再次查看,file命令就可以使用了 注意:当执行的时候需要切换到root权限,否则会有如下提示

使用yum命令报错File "/usr/bin/yum", line 30 except KeyboardInterrupt, e:

背景: yum包的管理是使用python写的,有对应的python版本 遇到的问题报错如下: File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: 通过看报错可以了解到是使用了python2的语法,所以了解到当前yum使用的Python2,因为我单独安装了python3,且python3设置为默认版本了,所以导致语法问题 解决方法: 使用python2.6 yum install xxx来使用yum命令 注意:python2