在OSX El Capitan中失去了对sudo的许可

sha*_*swa 2 macos sudo chmod osx-elcapitan

我是新手使用OSX(使用El Capitan 10.11.3)并在尝试使用sudo更改文件的权限时,我不小心损坏了它.现在,无论何时,我尝试使用sudo全局安装任何东西,我收到以下错误消息.

sudo: unable to stat /etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
Run Code Online (Sandbox Code Playgroud)

有什么办法可以解决吗?

我也无法查看/ etc文件夹

bash:cd:/ etc:权限被拒绝

当我检查/ etc文件夹的权限时,它们如下所示

lrwxr-xr-x@  1 root  wheel   etc -> private/etc
Run Code Online (Sandbox Code Playgroud)

Mec*_*cki 13

我遇到了同样的问题,在我的情况下,根文件夹的权限被破坏了.人们忽略的是,/它实际上也是一个真实的,正常的目录,就像它拥有所有权和权限的每个目录一样.所有权应该是,root:wheel并且许可应该是755(那是rwxr-xr-x).

恢复两者的最简单方法是启动Script Editor,然后键入并运行该脚本:

do shell script "/usr/sbin/chown root:wheel /" with administrator privileges
do shell script "/bin/chmod 755 /" with administrator privileges
Run Code Online (Sandbox Code Playgroud)

系统会提示您amdin密码,然后chownchmod前来救援.之后sudo再次工作.


Elf*_*dae 6

禁用系统完整性保护(无根)

  1. 在听到启动响铃后重新启动Mac并同时按住Command + R键,这将启动OS X进入恢复模式
  2. 当出现"OS X Utilities"屏幕时,请按下屏幕顶部的"Utilities"菜单,然后选择"Terminal"
  3. 在终端中输入以下命令,然后点击return:

    csrutil disable; 重启

  4. 您将看到一条消息,指出已禁用系统完整性保护,并且Mac需要重新启动才能使更改生效,然后Mac将自动重启,只需让它正常启动

  • 对于开发人员来说,系统完整性保护是一场噩梦:). (2认同)