我不知道自己想到了什么,刚刚在 shell 中输入了这些内容:
sudo chmod 700 /usr/bin/sudo
然后还输入了我的密码。上述命令运行后,我失去了对 的控制sudo
。
sudo
所有者是root
。我不是该root
用户。我的用户名是aditya
。
以前 sudo 的权限是711
。这意味着我可以以非 root 用户身份执行它。但现在,我失去了控制权。
当我尝试sudo
从我的 shell 访问时,我得到:
-bash: /usr/bin/sudo: Permission denied
有什么方法可以让我重新获得访问权限,sudo
而不必重新安装操作系统或打电话给工程师来修复?
答案1
首先使用pkgutil
列出 sudo 的安装程序信息。
pkgutil --file-info /usr/bin/sudo
请注意该文件的mode
权限。octal notation
关闭计算机,然后按住命令键和“s”键启动计算机。您正在将计算机启动到单用户模式。
在提示符下使用以下命令强制检查文件系统
/sbin/fsck -fy
然后以读写方式挂载文件系统
/sbin/mount -uw /
现在更改 sudo 的权限
chmod 4511 /usr/bin/sudo
然后重启电脑
reboot