如何在 OS X El Capitan 中验证和修复权限

OS X 中的终端

“磁盘工具”应用长期以来一直包含验证和修复 Mac 上的磁盘权限,但在最新版本的 OS X 中,此功能已被删除。这并不意味着您无法在 OS X El Capitan 10.11 及更高版本中验证权限和修复权限,但是,您只需转到命令行即可。

需要明确的是,验证和修复磁盘权限长期以来一直被过度指定为 Mac 上各种问题的补救措施,其中大多数很少准确或合法。从这个意义上说,修复权限有点被认为是一种骗术,对大多数 OS X 情况几乎没有好处,但是仍然有一些独特的情况,您可能想要在 OS X 中验证和修复磁盘权限,特别是如果 文件权限实际上是关闭的,这意味着某些用户和进程读取和写入特定文件和文件夹的能力。

请注意,这与验证和修复磁盘不同。

如何在 OS X El Capitan 中修复验证磁盘权限

打开终端应用程序(位于 /Applications/Utilities/)并使用以下语法验证卷权限,这将验证 Mac 的默认根卷:

sudo /usr/libexec/repair_packages --verify --standard-pkgs /

如果要验证不同驱动器上的权限,请指定卷而不是“/”

该命令将运行并显示不同的权限,或者什么都不显示,具体取决于找到的内容。毫不奇怪,您可能会发现一些不同的权限变体,类似于:

“usr/libexec/cups/cgi-bin”上的权限不同,应该是 drwxr-xr-x,它们是 dr-xr-xr-x。
“usr/libexec”上的权限不同/cups/daemon”,应该是 drwxr-xr-x ,它们是 dr-xr-xr-x 。
“usr/libexec/cups/driver” 的权限不同,应该是 drwxr-xr-x ,它们是 dr-xr-xr-x 。
“usr/libexec/cups/monitor”的权限不同,应该是 drwxr-xr-x ,它们是 dr-xr-xr-x 。

如何从命令行修复 OS X El Capitan 中的磁盘权限

假设发现不同的权限并且您想修复它们,请将 –verify 标志替换为 –repair,然后再次将命令指向同一卷:

sudo /usr/libexec/repair_packages --repair --standard-pkgs --volume /

修复权限可能需要一段时间,就像从“磁盘工具”中一样。

验证并修复磁盘从命令行在 OS X 中的权限

如果您在没有 sudo 且没有规范或标志的情况下执行 repair_packages 命令,您将获得一个简单的帮助指南:

$ /usr/libexec/repair_packages
用法:repair_packages [ARGUMENTS]...

命令:
--help 打印本使用指南。
--list-standard-pkgs 显示标准集中的包 ID。
--verify 验证权限指定包中的文件。
--repair 修复指定包中文件的权限。
选项:
--pkg PKGID 验证或修复包 PKGID。< br /> --standard-pkgs 验证或修复标准包集。
--volume PATH 对指定卷执行所有操作。
--output-format # 使用特殊输出打印进度信息format.
--debug 运行时打印调试信息。

正如所建议的,这并不是真正应该作为 Mac 维护例程,而且很少需要,这可能是 Apple 将其从磁盘实用程序应用程序中删除的原因。

顺便说一句,早期版本的 OS X 也有一个命令行方法来修复磁盘权限,但它是 通过 Disk Utility 命令行工具处理。