OSX 10.8 使用 Launchctl 损坏用户帐户

OSX 10.8 使用 Launchctl 损坏用户帐户

我使用了以下命令:

launchctl unload -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist

尝试禁用通知中心。我不确定我是否正确执行了所有命令,并且似乎损坏了我执行命令的帐户 - 当我尝试登录该帐户时,我得到一个灰色屏幕。幸运的是,我在机器上有另一个具有管理员权限的帐户,所以我仍然可以使用该机器。但是,我希望将帐户恢复到工作状态,最好不必从我的时间机器备份中完全恢复系统。

有没有办法诊断这个启动代理的当前状态并将其恢复到原始状态?

答案1

我昨天做了同样的事情 - 使用 launchctl 禁用通知中心破坏了我的 dock 和图标栏,尽管它使帐户几乎无法使用。从 TM 恢复不起作用;在受影响的主目录结构中搜索差异没有找到任何有用的恢复信息。

删除并重建同一个用户帐户(不删除用户主目录)似乎可以解决问题:Cf

http://reviews.cnet.com/8301-13727_7-57437548-263/how-to-rebuild-a-user-account-in-os-x/

是的,情况仍然很严重,但如果你仔细阅读文章,就会发现损坏可能发生在 /var/db 中,而不是用户主目录中。从那里开始,YMMV。

答案2

如果您想恢复用户文件但不恢复系统软件,则可以使用迁移助手。

将包含 Time Machine 备份的外部硬盘连接到您的计算机。从 Macintosh HD /应用程序/实用程序打开迁移助手。如果需要,请输入您的管理员密码。在迁移方法选项下,选择来自 Time Machine 备份或其他磁盘。选择包含先前 Time Machine 备份的外部硬盘(扫描磁盘可能需要一些时间)。选择您要迁移的“用户帐户”。

答案3

launchctl unload -w修改/var/db/launchd.db/com.apple.launchd.peruser.501/overrides.plist,并sudo launchctl unload -w修改/var/db/launchd.db/com.apple.launchd/overrides.plist。遇到此问题的其他人可以尝试修改这些文件或从备份中恢复它们。

答案4

所以我设法做了同样的事情,最终我必须做的是修复它是在恢复模式下启动,更改为 /Volumes/Macintosh HD/var/db/com.apple.launched/

并编辑两个 overides.plist 文件(带有您的 uid 的文件和常规文件),并将需要运行的服务更改为具有相当于 false(未禁用)的键。

请注意,当您执行此操作时,您可能需要遵循有关修复 vim 键盘映射的建议,因为您将不会加载正常的输入。

https://vim.fandom.com/wiki/Backspace_and_delete_problems

您可能还想使用:set term =builtin_ansi

https://vim.fandom.com/wiki/Fix_broken_arrow_key_navigation_in_insert_mode

天哪,除了物理部件故障外,我从来没有浪费这么多时间。

相关内容