Ada*_*asz 12 password root ubuntu permissions sudo
我已经这样做了:
sudo chown -R myname /usr/
Run Code Online (Sandbox Code Playgroud)
现在sudo
由于此错误,我无法使用该命令:
sudo: 必须是 setuid root
当我读到这意味着这个文件的所有者/usr/bin/sudo
不是根。由于/usr
文件夹上的 chown,它现在是我的用户。
在许多论坛和博客上,人们建议以 root 身份执行此操作:
# chown root:root /usr/bin/sudo
# chmod 4111 /usr/bin/sudo
Run Code Online (Sandbox Code Playgroud)
...但问题是我需要以 root 身份登录,但我不能,因为如果我su
在终端中输入密码是错误的(实际上我使用的是我添加到用户的密码):
$ su
Password:
su: Authentication failure
Run Code Online (Sandbox Code Playgroud)
那么我可以取回sudo
命令吗?
编辑:我的 Ubuntu 在 Mac OS X 上的 Parallels 下。
Cal*_*leb 11
由于您已经对唯一授予您根级访问权限的权限进行了管理,因此您将需要来自当前软件环境之外的一些帮助来解决此问题。
我建议最简单的方法是为您的发行版启动 LiveCD,安装您的驱动器,并使用chmod
您从那里列出的更改文件权限。
您也可以尝试启动到单用户模式以获得 root shell。
请注意,通常/usr/
目录中的所有内容都应该拥有,root
因此您应该能够进行递归chown
以修复您破坏的任何内容。(编辑:每@Gilles评论显然是跑chown
断setuid和setgid位,所以你将需要手动比较现有系统只要重新修复的所有权,恢复所有的。)
然而,很FEW应4111
。这个额外的权限是一个特殊的权限,但是即使以用户身份运行,它也可以以 root 身份执行!只有sudo
少数几个命令应该设置此权限位。如果您没有运行 achmod
开始,您可能根本不需要修复此问题,所有权限应该已经正确。不要在chmod
不知道所有权限应该是什么的情况下运行大型操作。
如果你有一个类似的系统,你可以用它作为指导来查看所有文件的正确所有权是什么,那么你可以启动到救援模式,进入 root shell,并手动恢复所有文件的正确所有权。文件/usr
。
最快的方法可能是重新安装操作系统或从备份中恢复。
在 Ubuntu 或类似系统中,默认情况下没有 root 密码(帐户被禁用),这就是为什么你不能su
.
归档时间: |
|
查看次数: |
43468 次 |
最近记录: |