现在我已经卸载并安装了自制的3倍,因为它似乎永远不会让我,因为它不认我的权限,可以在大多数安装结束安装任何东西。
举个例子,我将发布我目前所面临的libjpeg这种情况下下载。
我尝试安装的libjpeg并获得:
$ brew install libjpeg
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/jpeg-8d.mountain_lion.bottle.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/jpeg-8d.mountain_lion.bottle.1.tar.gz
==> Pouring jpeg-8d.mountain_lion.bottle.1.tar.gz
Warning: Could not link jpeg. Unlinking...
Error: The brew link step did not complete successfully
The formula built, but is not symlinked into /usr/local
You can try again using `brew link jpeg'
Error: Permission denied - /usr/local/opt/jpeg
“BREW链接JPEG”的结果
Error: Permission denied - /usr/local/opt/jpeg
这里是我的BREW读博士
$ brew doctor
Warning: "config" scripts exist outside your system or Homebrew directories.
./configure scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.
Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
/Library/Frameworks/Python.framework/Versions/2.7/bin/python-config
/Library/Frameworks/Python.framework/Versions/2.7/bin/python2-config
/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config
Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run brew link on these:
jpeg
此权限问题已经使其无法用任何东西啤酒,我会很感激的任何建议。
Answer 1:
我能够通过使用来解决问题chown
的文件夹:
sudo chown -R "$USER":admin /usr/local
此外,你会(最有可能)必须做同样的/Library/Caches/Homebrew
:
sudo chown -R "$USER":admin /Library/Caches/Homebrew
显然,我已经使用sudo
的方式,改变了我的文件夹权限,然后/usr/local
,从这里向前冲泡所有安装已被证明是成功的。
这个答案来的礼貌GitHub的自制软件问题跟踪
Answer 2:
对于在Mac OS海伊谢拉用户新的命令,因为它是不可能chown
上/usr/local
:
sudo chown -R $(whoami) $(brew --prefix)/*
参考: https://github.com/Homebrew/brew/issues/3228
Answer 3:
作为第一个选项,以任何人的土地在这里像我一样,遵循不管这表明你做的:
brew doctor
这是最安全的路径,除其他事项外,它提示我:
sudo chown -R $(whoami) /usr/local
这解决了权限问题。
该OP就是这样做的,但显然没有得到上面的建议; 你可能,它总是更好,就开始出现,然后才是寻找不平凡的解决方案,如果它没有帮助。
Answer 4:
如果你在OSX高塞拉利昂, /usr/local
可以不再chown
“d。 您可以使用:
sudo chown -R $(whoami) $(brew --prefix)/*
Answer 5:
我有这个问题。一个可行的解决方案是改变所有权/usr/local
当前用户,而不是root
的:
sudo chown -R $(whoami):admin /usr/local
不过说真的,这不是一个正确的方式。 主要是如果你的机器是一台服务器或多个用户。
我的建议是要改变所有权如上,做任何你想要的啤酒..落实(更新,安装...等),然后重置所有权回根为:
sudo chown -R root:admin /usr/local
那将解决这一问题,并保持所有权集适当集中。
Answer 6:
从得票最多的命令的回答对我不起作用。
它得到的输出:
CHOWN:在/ usr / {} my_username DMIN:非法用户名
此命令工作正常(组在/ usr /地方是admin
的话):
sudo chown -R $USER /usr/local
Answer 7:
如果你想比毯子稍微更具针对性的方法chown -R
,你会发现这个fix-homebrew
脚本有用:
#!/bin/sh
[ -e `which brew` ] || {
echo Homebrew doesn\'t appear to be installed.
exit -1
}
BREW_ROOT="`dirname $(dirname $(which brew))`"
BREW_GROUP=admin
BREW_DIRS=".git bin sbin Library Cellar share etc lib opt CONTRIBUTING.md README.md SUPPORTERS.md"
echo "This script will recursively update the group on the following paths"
echo "to the '${BREW_GROUP}' group and make them group writable:"
echo ""
for dir in $BREW_DIRS ; do {
[ -e "$BREW_ROOT/$dir" ] && echo " $BREW_ROOT/$dir "
} ; done
echo ""
echo "It will also stash (and clean) any changes that are currently in the homebrew repo, so that you have a fresh blank-slate."
echo ""
read -p 'Press any key to continue or CTRL-C to abort.'
echo "You may be asked below for your login password."
echo ""
# Non-recursively update the root brew path.
echo Updating "$BREW_ROOT" . . .
sudo chgrp "$BREW_GROUP" "$BREW_ROOT"
sudo chmod g+w "$BREW_ROOT"
# Recursively update the other paths.
for dir in $BREW_DIRS ; do {
[ -e "$BREW_ROOT/$dir" ] && (
echo Recursively updating "$BREW_ROOT/$dir" . . .
sudo chmod -R g+w "$BREW_ROOT/$dir"
sudo chgrp -R "$BREW_GROUP" "$BREW_ROOT/$dir"
)
} ; done
# Non-distructively move any git crud out of the way
echo Stashing changes in "$BREW_ROOT" . . .
cd $BREW_ROOT
git add .
git stash
git clean -d -f Library
echo Finished.
而不是做一个的chmod
到您的用户,它给admin
组(给你大概属于)写访问特定目录中/usr/local
是自制的用途。 它还告诉你到底是什么,它打算这样做之前做。
Answer 8:
我没有足够的/user/local/Frameworks
文件夹,所以这个固定为我
sudo mkdir -p /usr/local/Frameworks
sudo chown -R $(whoami) /usr/local/Frameworks
我有OSX海伊谢拉
Answer 9:
我不想弄脏周围的文件夹权限尚未所以我做了以下内容:
brew doctor
brew upgrade
brew cleanup
当时我能够继续成功地安装我的其他酿造配方。
Answer 10:
在我的情况下,在/ usr /本地/框架根本不存在,所以我所做的:
sudo mkdir /usr/local/Frameworks
sudo chown -R $(whoami) /usr/local/Frameworks
然后,一切都按预期。
Answer 11:
这解决了问题,我脱颖而出。
sudo chown -R "$USER":admin /Users/$USER/Library/Caches/Homebrew
sudo chown -R "$USER":admin /usr/local
Answer 12:
我决定,我的这些命令的问题:
sudo mkdir /usr/local/Cellar
sudo mkdir /usr/local/opt
sudo chown -R $(whoami) /usr/local/Cellar
sudo chown -R $(whoami) /usr/local/opt
Answer 13:
所有这些建议可能会工作。 在BREW医生的最新版本,更好的建议被提出,虽然。
首先-修复你可能已经做出的乱七八糟/usr/local
通过在命令行中运行以下命令:
sudo chown -R root:wheel /usr/local
然后将您应该为此用户将专门路径的所有权:
sudo chown -R $(whoami) /usr/local/lib /usr/local/sbin /usr/local/var /usr/local/Frameworks /usr/local/lib/pkgconfig /usr/local/share/locale
如果您运行所有这些信息可以sudo brew update
,然后读取所有的警告和错误,你会碰上...
Answer 14:
还有,修复放在/ usr /本地和BREW目录烫发是由人谁是“管理”组的成员访问GitHub上一个杀手脚本。
https://gist.github.com/jaibeee/9a4ea6aa9d428bc77925
这比选择的答案更好的解决方案,因为如果你执行chown在/ usr /本地/ ___目录$ USER,那么你打破自制的任何其他管理员用户的机器上。
下面是我在这个贴的时候脚本的胆量:
chgrp -R admin /usr/local
chmod -R g+w /usr/local
chgrp -R admin /Library/Caches/Homebrew
chmod -R g+w /Library/Caches/Homebrew
chgrp -R admin /opt/homebrew-cask
chmod -R g+w /opt/homebrew-cask
Answer 15:
对于多用户的Mac,这为我工作:
sudo chown -R $(whoami):admin $(brew --prefix)/*
Answer 16:
对我来说,它的工作后,
brew doctor
更改权限的命令导致了另一个错误
chown: /usr/local: Operation not permitted
Answer 17:
其实这是很简单,执行此命令: brew doctor
它会告诉你做什么,要解决权限问题,例如在我的情况:
这就是问题所在:
Warning: The following directories are not writable by your user:
/usr/local/share/man/man5
/usr/local/share/man/man7
这是解决办法:
You should change the ownership of these directories to your user.
sudo chown -R $(whoami) /usr/local/share/man/man5 /usr/local/share/man/man7
Answer 18:
cd /usr/local && sudo chown -R $(whoami) bin etc include lib sbin share var opt Cellar Frameworks
Answer 19:
就我而言,我一直有问题,删除并重新安装SaltStack。
运行后:
ls -lah /usr/local/Cellar/salt/
我注意到,群主是“员工”。 (顺便说一句,我运行的MacOS版本莫哈韦10.14.3)的人员组可能与我的工作场所的配置,但我真的不知道。 无论如何,我保留了小组防止自己进一步的破坏任何东西。
然后我跑:
sudo chown -R "$USER":staff /usr/local/Cellar/salt/
在那之后,我就能够成功地使用此命令将其删除(不是root):
brew uninstall --force salt
Answer 20:
如果您还没有最新的自制软件:通过强制家酿为根,这只能通过改变家酿可执行文件到根的所有权来完成运行我“固定”这在过去。 在某些时候,他们取消了这一功能。
我知道他们会给许多警告,说这不应该以root身份运行,但拜托,它不能正常工作,否则。
Answer 21:
我想这个页面上的一切,我结束了使用此解决方案:
brew uninstall --force brew-cask; brew untap $tap_name; brew update; brew cleanup; brew cask cleanup;
我的情况是类似的OP,但我的问题是专门用木桶酿造运行sudo的,然后让我的密码不正确造成的。 在此之后,我被套牢权限阻止了安装。
Answer 22:
要解决对文件夹运行为Brew权限错误
brew prune
这将解决这些问题和我们没有任何执行chown目录。
Answer 23:
尝试也执行此命令
须藤使用chmod + T / TMP
文章来源: How to fix homebrew permissions?