12

我已经安装了自制软件,并且正在尝试更改 /usr/local/include 目录的写入权限。

当我运行“brew doctor”时,我收到以下错误消息:

错误:/usr/local 目录不可写。即使在您安装 Homebrew 时此目录是可写的,其他软件也可能会更改此目录的权限。已知某些版本的 Airfoil 的“InstantOn”组件可以做到这一点。

您可能应该将 /usr/local 的所有权和权限更改回您的用户帐户。

我试着用 chown 来做这件事,但我对此很陌生,而且我认为我没有正确运行它。我跑了:

chown myusername /usr/local/include

我没有收到任何错误消息,但是当我运行 brew doctor 时,它说我仍然没有写入 /usr/local/include 的权限。

任何帮助将不胜感激!

编辑:

我收到“不允许操作”错误。

cd /usr

chown myusername local

chown:本地:不允许操作

4

6 回答 6

22

对我有用的简单解决方案:

  1. 单击您的背景以转到查找器
  2. 单击 go 并转到文件夹 /usr
  3. 右键单击本地并获取信息
  4. 解锁底部的锁
  5. 单击 + 符号并将您的用户添加到列表中并授予读/写权限
  6. 单击底部的齿轮符号,然后选择应用于包含的项目以在该目录下递归并为其下的所有目录分配权限。

brew doctor从命令提示符键入进行测试。我的结果:

您的系统已准备好冲泡。

于 2014-03-09T20:24:15.240 回答
8

在我的系统上,/usr/local归. 我的用户是该组的成员,因此具有写入权限。我没有弄乱那里的所有权和权限,我的 Homebrew 安装也没有抱怨,所以我认为我的设置符合它的要求。root:adminrwxrwxr-xadmin

检查您的所有权/usr/local;如果它由 group 拥有admin,请检查您的非管理员帐户是否是该组的成员。

于 2012-06-02T21:36:29.237 回答
3

你应该使用:sudo chown username folder

于 2015-03-20T13:19:27.313 回答
2

所有权变更需谨慎

如果您没有在原始问题中发布相同的错误,请不要尝试更改所有权/usr/或递归地更改所有权。 您可能会搞砸您的系统或削弱其安全性。/usr/local/

一些用户可能会收到带有自制权限的错误,这些错误可以在不更改整个/usr//usr/local/目录的所有权的情况下解决。

根据我的经验,在大多数情况下,恢复所有权就足够了/usr/local/Cellar

sudo chown -R "$USER" /usr/local/Cellar/

或者,如果您有非标准安装

sudo chown -R "$USER" "$(brew --prefix)/Cellar"
于 2019-02-15T00:13:24.703 回答
0

您可以尝试使用命令ls -l。使用此命令,您将看到当前目录中的文件列表以及一些有用的信息,例如谁是该文件的所有者。所以你会看看是否chown解决了。我相信这chown是改变所有权的正确命令。

于 2012-06-02T20:55:58.773 回答
0

正是这个问题刚刚开始出现在我的 MacBook 上。

/usr/local 的所有者是:

drwxr-xr-x   24 root  wheel    768 Apr  9 17:25 local

我无法更改权限并通过 Finder 添加自己 - 我收到“您没有必要的权限”错误。

这可能是由于mac os中的安全性变化吗?(我有 10.13.6)

于 2019-07-26T11:02:54.957 回答