mac上brew install报“permission denied”主因是homebrew目录归属异常或acl禁止写入;需先用brew --prefix确认路径,再用ls -lde检查acl(如group:everyone deny),执行sudo chmod -n修复acl,接着sudo chown -r $(whoami)修正所有权,最后brew doctor验证。

Mac上用brew install安装软件时突然报“Permission denied”,不是网络问题也不是命令输错,而是Homebrew目录当前归属用户不对或ACL访问控制列表存在禁止写入规则,系统直接拒绝任何写操作。
确认Homebrew安装路径和当前权限状态
先查清你的Mac芯片类型和Homebrew实际安装位置:Apple Silicon(M1/M2/M3)默认在/opt/homebrew,Intel Mac则在/usr/local。执行命令:brew --prefix,输出结果就是真实路径。
接着检查该路径的权限和ACL设置:运行ls -ld $(brew --prefix)看标准权限位,再运行ls -lde $(brew --prefix)——如果第二行出现group:everyone deny add_file,delete,add_subdirectory这类内容,说明ACL正在拦截,【这是标准权限修复无效的根本原因】。
移除ACL限制性规则(关键步骤)
ACL规则优先级高于chmod,不清理它,改所有权或加w权限都没用。
执行命令清除所有ACL条目:sudo chmod -N $(brew --prefix)
这一步会彻底删除该目录上的ACL访问控制列表,只保留基础rwx权限。注意:-N参数不可替换为-R或其他字母,输错会导致命令无效果。
修复目录所有权和基础写权限
方法一:针对Apple Silicon Mac(M1/M2/M3)
运行:sudo chown -R $(whoami) /opt/homebrew
再补一句确保可写:chmod -R u+w /opt/homebrew
方法二:针对Intel Mac
运行:sudo chown -R $(whoami) /usr/local
【执行前务必确认brew --prefix输出确实是/usr/local,否则会误改系统目录】
验证是否生效:运行ls -ld $(brew --prefix),第一组权限位中必须含w(如drwxr-xr-x),且所有者显示为你当前用户名。
验证并完成修复
第一步:运行brew doctor,等待输出Your system is ready to brew.
第二步:执行一个轻量安装测试:brew install hello(hello是极小的测试包,几秒完成)。
第三步:观察终端是否不再报Permission denied,且安装过程无中断、无红色错误行。











