我是 ubuntu 新手,我正在尝试运行以下命令
须藤苏-
但我收到了以下消息
sudo: unable to open /etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
以前它正在运行,但是当我运行以下命令时
chmod 741 /etc/
它停止工作了,我没有 root 用户密码,我在亚马逊上运行我的机器。
请告诉我如何解决这个问题。
答案1
pkexec chmod 0440 /etc/sudoers
然后尝试sudo -s
答案2
/etc/ 的正常权限是:rwx r-x r-x root root
使用chmod 741 /etc/
方式将 /etc/ 的权限设置为rwx r-- --x
。
r
请注意第三个字段缺少。这三个字段分别代表:所有者、组、其他的。由于默认所有者和组是 root,因此您只是阻止了除 root 之外的所有人读取 /etc/ 中的文件。这真是一件坏事。
如果您获得 root 提示,那么您可以很容易地恢复这些更改,但为此您需要:
- 或者已经打开的 root 提示。
- 以 root 或任何 uid 0 帐户登录的方法。(您需要在 Ubuntu 中手动设置。)
- 权利
su
或sudo
(你刚刚打破了)。 - 或者从另一个操作系统访问文件系统。
- 或者重新安装系统。(如果你几分钟前才设置好,这是最简单的方法,但也是最没有教育意义的方法)
对于普通桌面或带有远程访问卡的服务器(HP ILO、Dells DRAC 等),我将启动到单用户模式,如果需要,提供 root 密码,并修复权限。
或者我可以从 liveCD(或 pendrive)启动并执行相同操作。
在 Amazon 上,这有点困难,因为你没有物理访问权限。不过,你可以启动第二个实例并从那里安装旧操作系统磁盘。
答案3
执行命令:ls -l /etc/sudoers
如果结果显示零硬链接如下所示,则可能是您的文件系统已损坏:
-r--r-----0root root 1014 2013-19-4 17:40 /etc/sudoers