如何在OSX High Sierra上修复/ etc / sudoers


0

我怎么到这里

备份数据后,我安装了SSD驱动器。我安装了OSX Maverick(因为我的笔记本电脑大约在2014年),然后开始将数据从用户2复制到用户1(因为安装操作系统后,我的用户与保存该用户的用户名不匹配)备份数据中的数据)。

然后,我开始修复文件的所有权,但是做的确很糟糕:我碰到sudo chmod -R user-1:staff/etc,更改了的所有权/etc/sudoers。由于文件所有权已损坏,您无法将其更改回原先。

我尝试过的

我完成了单用户模式启动,发现文件系统是只读安装的。

我已经以恢复模式启动,发现OSX 不再在“磁盘工具”中提供“修复磁盘权限”

我已经以恢复模式启动,发现无法从我的Time Machine备份中还原单个文件,因为恢复模式仅允许使用所有Time Machine数据铺在您的计算机上。

我尝试进行普通启动,但这需要30分钟,尽管进度条显示已完成,但操作系统再也无法启动。

问题

那我该怎么办

  1. 在可写文件系统上得到用户提示,以便我可以将所有权设置为/etc/sudoers
  2. 前往Finder修复所有权

也许可以再次启动我的笔记本电脑?

遗憾的是,我无法以root用户身份继续使用此漏洞,因为我无法获得用于登录的对话框提示。


2018年1月21日晚

我遇到了这个问题,并且能够mount -uw / && chmod 0 /etc/sudoers成功,但是仍然无法启动。这可能是由造成的其他原因chown -R

稍后再说:当我以详细模式(Command-V)引导时,我得到错误消息“进程X崩溃:打开目录。正在创建太多尸体”的无限滚动。这看起来很致命。我可能必须重新安装操作系统和备份。

Answers:



0

您需要将整个/ etc层次结构还原为适当的所有权。它主要是root:wheel,但也有一些例外。重新安装根卷以进行写访问后,可以将其修复为单用户模式:

mount -uw /
chown -R root:wheel /etc
chown -R root:_lp /etc/cups
chown _lp:admin /etc/cups/certs
chown root:admin /etc/cups/certs/*
chown root:operator /etc/dumpdates    # It's ok if this file doesn't exist

请注意,执行顺序很重要,因为后面chown的会覆盖前面的。


我有点走这条路。我看了一台运行正常的Mac,grep -v wheel只看到cups目录,看到我的笔记本电脑没有cups,只是看到了chmod -R 0 /etc。不开心 所以现在我要铺装并重新安装Time Machine备份。希望最好。
user20342 '18

1
实际上,从Recovery进行就地重新安装也应该可行,并且可以保留您的用户数据(尽管此时可能没有好处)。顺便说一句,您错过了与所有者一起固定小组的机会。
戈登·戴维森
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.