/usr/bin/sudo 必须属于用户 ID 0(的用户)并且设置 setuid 位

ubantu重启,黑屏就按esc,一直按,知道进入修复模式为止(一次不行,多试几次,总比重装系统好,我重启了5次才进去),如下图所示:

选择第一个,然后进入下图所示场景:

定位到关键的 linux 启动行:

linux /boot/vmlinuz-5.15.0-139-generic root=UUID=1e8bf8ed-b23b-43b5-8e97-ac9956a42826 ro quiet splash $vt_handoff

删掉ro quiet splash $vt_handoff 这一串内容

替换为rw init=/bin/bash(注意rw前的空格)

修改完成后,直接按 Ctrl + X(或者 F10),系统会自动启动,直接进入免密码的 root 超级用户终端

在 root 终端里,依次输入以下命令,每输完一条按回车:
 

# 1. 重新挂载根目录为可读写(保险操作)
mount -o remount,rw /

# 2. 修复 sudo 程序的所有者(必须 root:root)
chown root:root /usr/bin/sudo

# 3. 恢复 sudo 的 setuid 权限(关键!)
chmod 4755 /usr/bin/sudo

# 4. 修复配套的 sudo 库文件权限(防止二次报错)
chown -R root:root /usr/lib/sudo
chmod 644 /usr/lib/sudo/sudoers.so
chmod 440 /etc/sudoers

所有命令执行完成后,输入以下命令重启:

exec /sbin/init

重启进入系统后,打开终端,执行:

sudo apt update

输入你的用户密码,如果正常执行、没有报错,就说明 sudo 权限完全修复成功了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值