sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set问题解决方案

sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set问题解决方案

当我们使用sudo su切换权限时提示错误:

复制代码
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set

该错误出现原因:是因为/usr/bin/sudo的权限被修改了,/usr/bin/sudo 的所有者不是 root 用户,并且没有设置 setuid 位。

解决方案如下:

1.如果知道root账户的密码,使用root账户登录系统执行如下命令:

复制代码
sudo chown root:root /usr/bin/sudo
sudo chmod 4755 /usr/bin/sudo

这将把 /usr/bin/sudo 的所有者更改为 root 用户,并设置 setuid 位。可以登录普通用户再次执行sudo su验证。

2.如果不知道root账户的密码,可以采取以下步骤(亲测有效):

(1)重启系统,出现启动界面按ESC,进入grub菜单页面(如果esc无法进入,可尝试shift)。选择Advanced options for Ubuntu

(2)选择Advanced options for Ubuntu后,界面如下:

选择当前使用内核版本的recovery mode模式。

(3)选择root选项

(4)出现命令行界面

(5)再次执行如下命令:

复制代码
sudo chown root:root /usr/bin/sudo
sudo chmod 4755 /usr/bin/sudo

执行完成后,重启系统,再次执行sudo su命令,不在出现sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set问题。

相关推荐
Nick.Q4 小时前
vim插件的管理与离线安装
linux·编辑器·vim
码农小卡拉5 小时前
Ubuntu22.04 安装 Docker 及 Docker Compose v2 详细教程
ubuntu·docker·容器
头发还没掉光光6 小时前
HTTP协议从基础到实战全解析
linux·服务器·网络·c++·网络协议·http
小白同学_C6 小时前
Lab2-system calls && MIT6.1810操作系统工程【持续更新】
linux·c/c++·操作系统os
物理与数学6 小时前
linux内核 struct super_block
linux·linux内核
Getgit6 小时前
Linux 下查看 DNS 配置信息的常用命令详解
linux·运维·服务器·面试·maven
zhangrelay7 小时前
Linux(ubuntu)如何锁定cpu频率工作在最低能耗模式下
linux·笔记·学习
_OP_CHEN8 小时前
【Linux系统编程】(二十)揭秘 Linux 文件描述符:从底层原理到实战应用,一篇吃透 fd 本质!
linux·后端·操作系统·c/c++·重定向·文件描述符·linux文件
chem41118 小时前
玩客云 边缘AI模型 本地搭建部署 llama.cpp qwen
linux·人工智能·llama
一个平凡而乐于分享的小比特8 小时前
Linux内核中的BogoMIPS详解
linux·bogomips