Instantly share code, notes, and snippets.

Embed
What would you like to do?
Homebrew: Permissions Denied Issue Fix (OS X / macOS)

Homebrew Permissions Denied Issues Solution

sudo chown -R $(whoami) $(brew --prefix)/*

@ldong

This comment has been minimized.

Copy link

ldong commented Sep 22, 2015

sudo chown -R $(whoami) /usr/local

@alphapilgrim

This comment has been minimized.

Copy link

alphapilgrim commented Sep 29, 2015

Thank you for your help.

@wealthychef1

This comment has been minimized.

Copy link

wealthychef1 commented Mar 12, 2016

Um, sounds great, unless there are TWO users on your system, and the other one wants to use brew as well. Then what? This is horrible and makes me think I should definitely not use brew.

@cedx

This comment has been minimized.

Copy link

cedx commented Mar 14, 2016

sudo chown -R $(whoami) /usr/local : a bad idea too ! I don't see why sudoing Homebrew is a worst idea.

@ryanjsfx

This comment has been minimized.

Copy link

ryanjsfx commented Jul 26, 2016

sudo chown -R $(whoami) /usr/local is a terrible idea! I'd rather just sudo when installing; I'm switching to macports

@aleczadikian

This comment has been minimized.

Copy link

aleczadikian commented Dec 30, 2016

I don't understand why this package manager shouldn't run as root like all other package managers do. Can we just get an option to run brew as root like there used to be (chown'ing brew to root)? I can't install anything without destroying all my permissions. I switched to MacPorts long ago just because of this, but a few things require Homebrew still.

@aleczadikian

This comment has been minimized.

Copy link

aleczadikian commented Dec 30, 2016

Here's what I did to force Homebrew to run as root:
cd /usr/local/Homebrew/Library/Homebrew
Edit brew.sh, look for "Running Homebrew as root is extremely dangerous and no longer supported" (line 250 in my version), delete the check.

@EmadMokhtar

This comment has been minimized.

Copy link

EmadMokhtar commented Mar 1, 2017

Perfect it worked for other error, but it is related to Permission denied.

@065673

This comment has been minimized.

Copy link

065673 commented Jun 12, 2017

Before
~/scripts/ripe-atlas-community-contrib$ brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.13... Error: Permission denied - /usr/local/Frameworks
After
sudo chown -R $(whoami) /usr/local/
Result
brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.13... 321 symlinks created == 👍

@aljex

This comment has been minimized.

Copy link

aljex commented Jul 14, 2017

"I switched to MacPorts long ago just because of this" Me too.

It is utterly insane that a package/ports manager actually instructs and requires something so wrong. The justifications cited in their faq essentially serves as self-documenting automatic disqualification from any conversation about system design and operation. That whole section of the faq is just one wrong statement built on top of a previous wrong statement, built on yet an earlier wrong statement. The faq should serve as proof why not to touch any software produced by anyone who produced that faq.

@pointum

This comment has been minimized.

Copy link

pointum commented Oct 21, 2017

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

@neilrencn

This comment has been minimized.

Copy link

neilrencn commented Nov 1, 2017

@pointum
it worked well for us.

@giovanigenerali

This comment has been minimized.

Copy link

giovanigenerali commented Nov 13, 2017

@pointum thanks!

@mohnjatthews

This comment has been minimized.

Copy link

mohnjatthews commented Nov 14, 2017

@pointum, running sudo install -d -o ($whoami) -g admin /usr/local/Frameworks allowed me to propely link my Python install. Thanks.

@mihkell

This comment has been minimized.

Copy link

mihkell commented Nov 16, 2017

sudo chown -R $(whoami) $(brew --prefix)/* is the how todo it in High Sierra

@sidepelican

This comment has been minimized.

Copy link

sidepelican commented Nov 19, 2017

@pointum thanks!

@Sam-Butler

This comment has been minimized.

Copy link

Sam-Butler commented Nov 28, 2017

@pointum that did the trick

@qiuhuaqi

This comment has been minimized.

Copy link

qiuhuaqi commented Nov 29, 2017

@pointum Thanks for the tip, sudo install -d -o $(whoami) -g admin worked for me too. Could you (or someone) explain what this line does? (yep I ran a sudo command before understanding what it is ...)

@iSteveyang

This comment has been minimized.

Copy link

iSteveyang commented Dec 1, 2017

@pointum Thanks!

@yfenes

This comment has been minimized.

Copy link

yfenes commented Dec 8, 2017

@pointum Thanks! It worked for me too.

@kode54

This comment has been minimized.

Copy link

kode54 commented Dec 12, 2017

Bailed to MacPorts.

@annjawn

This comment has been minimized.

Copy link

annjawn commented Dec 19, 2017

@pointum that worked for me too. Thank you!

@aether2501

This comment has been minimized.

Copy link

aether2501 commented Dec 19, 2017

after upgrading to High Sierra, uninstall brew & re-install with the below command to ensure the linking to the brew github and associated permissions to the local folder work correctly:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

@ThuggishNuggets

This comment has been minimized.

Copy link

ThuggishNuggets commented Dec 21, 2017

@aether2501 wrote:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

This worked perfectly. No mucking around with permissions myself, just reinstalled Homebrew and it works!

Sucks that brew doctor isn't able to fix this.

@MacMeDan

This comment has been minimized.

Copy link

MacMeDan commented Jan 1, 2018

@aether2501 is my hero.

@zhjuncai

This comment has been minimized.

Copy link

zhjuncai commented Jan 2, 2018

@pointum save my morning.... thanks

@AnalyzePlatypus

This comment has been minimized.

Copy link

AnalyzePlatypus commented Jan 3, 2018

@syokensyo

This comment has been minimized.

Copy link

syokensyo commented Jan 10, 2018

@aether2501
awesome solution!

@alexdd55

This comment has been minimized.

Copy link

alexdd55 commented Jan 10, 2018

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
this works perfect. thanks!

@j3pic

This comment has been minimized.

Copy link

j3pic commented Jan 12, 2018

The procedure above didn't work for me. All permissions seemed correct as far as I could tell with /bin/ls. My solution was to edit /usr/local/Homebrew/Library/Homebrew/brew.sh and comment out the line that checks if it's running as root.

@idevz

This comment has been minimized.

Copy link

idevz commented Jan 14, 2018

@pointum thanks!

@goelmk

This comment has been minimized.

Copy link

goelmk commented Jan 19, 2018

@pointum thanks!

@rohan20

This comment has been minimized.

Copy link

rohan20 commented Jan 20, 2018

@aether2501 Thanks alot!

@bitakou

This comment has been minimized.

Copy link

bitakou commented Jan 24, 2018

a command from @pointum really helps!
Thank you <3

@emanoelopes

This comment has been minimized.

Copy link

emanoelopes commented Jan 25, 2018

@pointum thanks!

@DanDvoracek

This comment has been minimized.

Copy link

DanDvoracek commented Jan 27, 2018

Thanks @pointum !

@gauravparvadiya

This comment has been minimized.

Copy link

gauravparvadiya commented Feb 15, 2018

Thanks @pointum

@stellamiranda

This comment has been minimized.

Copy link

stellamiranda commented Feb 20, 2018

thanks @pointum !

@Rondim

This comment has been minimized.

Copy link

Rondim commented Feb 27, 2018

thanks @pointum

@Linesmerrill

This comment has been minimized.

Copy link

Linesmerrill commented Mar 2, 2018

Thanks @mihkell

@samhigh

This comment has been minimized.

Copy link

samhigh commented Mar 16, 2018

@mihkell thanks!

@gregaeq

This comment has been minimized.

Copy link

gregaeq commented Mar 20, 2018

@mihkell & @pointum Thanks

My solution was similar, my directory /usr/local/Frameworks didn't exist yet, I was able to just sudo mkdir Frameworks && sudo chown $(whoami) Frameworks/. After that, running brew link python worked.

@salmanwaheed

This comment has been minimized.

Copy link

salmanwaheed commented Mar 26, 2018

👍

@rjforbes

This comment has been minimized.

Copy link

rjforbes commented Apr 12, 2018

@gregaeq I did the same with success. OSX 10.13.3

@profmocs

This comment has been minimized.

Copy link

profmocs commented Apr 25, 2018

I just changed the group recursively of /usr/local to wheel, made /usr/local and it contents group writable, and added myself to the wheel group.

@FumiyaShibusawa

This comment has been minimized.

Copy link

FumiyaShibusawa commented May 6, 2018

@gregaeq thanks, it worked with that!

@christianwgd

This comment has been minimized.

Copy link

christianwgd commented May 9, 2018

I agree with aljex, this speaks for itself:

iMac:~ username$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
This script requires the user username to be an Administrator.
iMac:~ username$ sudo /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Password:
Don't run this as root!
iMac:~ username$
@gabriel-a

This comment has been minimized.

Copy link

gabriel-a commented May 15, 2018

/usr/local can no longer be chowned in High Sierra.

I tried this.
sudo chown -R $(whoami) $(brew --prefix)/*

@caiocesarf

This comment has been minimized.

Copy link

caiocesarf commented May 15, 2018

thanks! @pointum

@chuckiefan

This comment has been minimized.

Copy link

chuckiefan commented May 21, 2018

@pointum Thank you, it works for me!

@Jkim55

This comment has been minimized.

Copy link

Jkim55 commented Jun 5, 2018

@aether2501, thanks!!

@manideepak5298

This comment has been minimized.

Copy link

manideepak5298 commented Jun 9, 2018

@aether2501, thanks. It really helped me.

@PhyllisWong

This comment has been minimized.

Copy link

PhyllisWong commented Jun 19, 2018

Didn't work for me:
sudo chown -R $(whoami) /usr/local

However this command did:
sudo chown -R $(whoami) $(brew --prefix)/*

@OxyFlax

This comment has been minimized.

Copy link

OxyFlax commented Jun 29, 2018

Thank you @PhyllisWong, it worked like a charm

@aareeph

This comment has been minimized.

Copy link

aareeph commented Jul 7, 2018

@pointum your solutioni worked like a charm! Thanks! :)

@brannonh

This comment has been minimized.

Copy link

brannonh commented Jul 9, 2018

@aether2501's solution worked perfectly for me. Reinstalling Homebrew seems like the best option here.

@RoRroland

This comment has been minimized.

Copy link

RoRroland commented Jul 10, 2018

this one works for me. sudo chown -R $(whoami) $(brew --prefix)/*

@raviranjan0631

This comment has been minimized.

Copy link

raviranjan0631 commented Jul 20, 2018

it was due to npm cache error and it can be solved by
clearing the cache
"npm cache clear --force"

@lanhongvp

This comment has been minimized.

Copy link

lanhongvp commented Aug 23, 2018

Thanks @mihkell.
sudo chown -R $(whoami) $(brew --prefix)/*
This finally works.

@danilodelponte

This comment has been minimized.

Copy link

danilodelponte commented Sep 17, 2018

I had this issue when installing python:

Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /usr/local
Permission denied @ dir_s_mkdir - /usr/local/Frameworks
Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks

Then I ran brew doctor and got this:

Warning: The following directories do not exist:
/usr/local/sbin
/usr/local/Frameworks

You should create these directories and change their ownership to your account.
  sudo mkdir -p /usr/local/sbin /usr/local/Frameworks
  sudo chown -R $(whoami) /usr/local/sbin /usr/local/Frameworks

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:
  python

The folders really didn't exist, as @gregaeq pointed out (thanks!!), after running those lines it worked 👍

@SuriyaMohan89

This comment has been minimized.

Copy link

SuriyaMohan89 commented Oct 12, 2018

Saved me! Thanks

@Kendysond

This comment has been minimized.

Copy link

Kendysond commented Oct 21, 2018

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

This worked for me. Thanks @pointum

@naivefun

This comment has been minimized.

Copy link

naivefun commented Oct 30, 2018

try sudo chown -R $(whoami) $(brew --prefix)/*

@Njarif

This comment has been minimized.

Copy link

Njarif commented Nov 20, 2018

@aether2501 wrote:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

This worked perfectly. No mucking around with permissions myself, just reinstalled Homebrew and it works!

Sucks that brew doctor isn't able to fix this.

@aether2501 wrote:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

This worked perfectly. No mucking around with permissions myself, just reinstalled Homebrew and it works!

Sucks that brew doctor isn't able to fix this.

after upgrading to High Sierra, uninstall brew & re-install with the below command to ensure the linking to the brew github and associated permissions to the local folder work correctly:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Thank you for this. Saved me after 8 hours of a problematic first install.

@msimonc

This comment has been minimized.

Copy link

msimonc commented Nov 21, 2018

Worked for me on Mac OSX:
cd /usr/local
ls -l Homebrew (to get the owner and group)
sudo mkdir Frameworks
sudo chown owner:group Frameworks

@ignoracenfly

This comment has been minimized.

Copy link

ignoracenfly commented Nov 21, 2018

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

nice

@Bas-Schrodinger

This comment has been minimized.

Copy link

Bas-Schrodinger commented Nov 22, 2018

after upgrading to High Sierra, uninstall brew & re-install with the below command to ensure the linking to the brew github and associated permissions to the local folder work correctly:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

This worked perfect for me! I just uninstalled and reinstalled brew & now it works fine.

@rakshitsoni02

This comment has been minimized.

Copy link

rakshitsoni02 commented Nov 28, 2018

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
this works perfect. thanks!

Worked thanks

@LiWenGu

This comment has been minimized.

Copy link

LiWenGu commented Dec 1, 2018

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

Worked thanks

@KyiHtooAung

This comment has been minimized.

Copy link

KyiHtooAung commented Dec 6, 2018

Thanks @pointum

@Aldizh

This comment has been minimized.

Copy link

Aldizh commented Dec 13, 2018

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

Totally agree, worked like a charm!

@calramen

This comment has been minimized.

Copy link

calramen commented Dec 20, 2018

Hi all - just upgraded to High Sierra recently. I found this thread while trying to solve the permissions issue with brew.

I tried uninstalling brew in hopes to reinstall it again to get rid of the permissions thing, but even that had errors:

computername ▶ userme ▶ /usr/local/Homebrew ▶ ⑂ stable + ▶  ▶ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
Warning: This script will remove:
/Users/userme/Library/Caches/Homebrew/
/Users/userme/Library/Logs/Homebrew/
/usr/local/Cellar/
/usr/local/Homebrew/
/usr/local/Homebrew/.github/
/usr/local/Homebrew/CHANGELOG.md
/usr/local/Homebrew/CODE_OF_CONDUCT.md
/usr/local/Homebrew/LICENSE.txt
/usr/local/Homebrew/Library/
/usr/local/Homebrew/Library/Homebrew/test/.bundle/config
/usr/local/Homebrew/bin/brew
/usr/local/Homebrew/completions/
/usr/local/Homebrew/docs/
/usr/local/Homebrew/manpages/
/usr/local/bin/brew -> /usr/local/Homebrew/bin/brew
/usr/local/etc/bash_completion.d/brew -> /usr/local/Homebrew/completions/bash/brew
/usr/local/share/doc/homebrew -> /usr/local/Homebrew/docs
/usr/local/share/man/man1/brew-cask.1 -> /usr/local/Homebrew/manpages/brew-cask.1
/usr/local/share/man/man1/brew.1 -> /usr/local/Homebrew/manpages/brew.1
/usr/local/share/zsh/site-functions/_brew -> /usr/local/Homebrew/completions/zsh/_brew
/usr/local/share/zsh/site-functions/_brew_cask -> /usr/local/Homebrew/completions/zsh/_brew_cask
/usr/local/var/homebrew/
Are you sure you want to uninstall Homebrew? This will remove your installed packages! [y/N] y
==> Removing Homebrew installation...
==> Removing empty directories...
==> /usr/bin/sudo /usr/bin/find /usr/local/bin /usr/local/etc /usr/local/include /usr/local/lib /usr/local/opt /usr/local/sbin /usr/local/share /usr/local/var /usr/local/Cellar /usr/local/Homebrew /usr/local/Frameworks -name .DS_Store -delete
Password:
==> /usr/bin/sudo /usr/bin/find /usr/local/bin /usr/local/etc /usr/local/include /usr/local/lib /usr/local/opt /usr/local/sbin /usr/local/share /usr/local/var /usr/local/Cellar /usr/local/Homebrew /usr/local/Frameworks -depth -type d -empty -exec rmdir {} ;
rmdir: /usr/local/opt: Permission denied
rmdir: /usr/local/var: Permission denied
rmdir: /usr/local/Cellar: Permission denied
rmdir: /usr/local/Homebrew: Permission denied
rmdir: /usr/local/Frameworks: Permission denied
==> /usr/bin/sudo rmdir /usr/local/Homebrew
rmdir: /usr/local/Homebrew: Permission denied
Warning: Failed during: /usr/bin/sudo rmdir /usr/local/Homebrew
Warning: Homebrew partially uninstalled (but there were steps that failed)!
To finish uninstalling rerun this script with sudo.
The following possible Homebrew files were not deleted:
/usr/local/bin/
/usr/local/.com.apple.installer.keep
/usr/local/jamf/
/usr/local/include/
/usr/local/sbin/
/usr/local/remotedesktop/
/usr/local/etc/
/usr/local/Homebrew/
/usr/local/var/
/usr/local/McAfee/
/usr/local/lib/
/usr/local/opt/
/usr/local/Frameworks/
/usr/local/Cellar/
/usr/local/share/
You may wish to remove them yourself.

@jasanchezo

This comment has been minimized.

Copy link

jasanchezo commented Jan 3, 2019

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

Great! Work in Mojave too. Regards!

@skiabox

This comment has been minimized.

Copy link

skiabox commented Jan 4, 2019

@jasanchezo Awesome man!!!I confirm that this command works in Mojave!

@taiji85

This comment has been minimized.

Copy link

taiji85 commented Jan 5, 2019

after upgrading to High Sierra, uninstall brew & re-install with the below command to ensure the linking to the brew github and associated permissions to the local folder work correctly:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Thank you! Worked for me as well. - Mojave 10.14.2

@inarli

This comment has been minimized.

Copy link

inarli commented Jan 14, 2019

Thanks.

@wangmeijian

This comment has been minimized.

Copy link

wangmeijian commented Jan 16, 2019

Thanks.

@marcstraka

This comment has been minimized.

Copy link

marcstraka commented Jan 23, 2019

This worked for me as I could now chown all of /usr/local/

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

@ctechdev

This comment has been minimized.

Copy link

ctechdev commented Jan 26, 2019

No need to chown the whole /usr/local if brew only fails to create a single directory.
For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

Great! Work in Mojave too. Regards!

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

Work fine for me on Mojave, i used
sudo chown -R $(whoami) /usr/local/Homebrew

@g4d

This comment has been minimized.

Copy link

g4d commented Jan 30, 2019

after upgrading to High Sierra, uninstall brew & re-install with the below command to ensure the linking to the brew github and associated permissions to the local folder work correctly:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

ftw. years later. thanks.

@RobertoManfreda

This comment has been minimized.

Copy link

RobertoManfreda commented Feb 3, 2019

sudo chown -R $(whoami) /usr/local

It works for me

@francois-roget

This comment has been minimized.

Copy link

francois-roget commented Feb 4, 2019

Worked for me!

@swateek

This comment has been minimized.

Copy link

swateek commented Feb 5, 2019

sudo chown -R $(whoami) /usr/local/*

The slash and start was needed in my case.

@begrafx

This comment has been minimized.

Copy link

begrafx commented Feb 6, 2019

I used this, and it seems to have helped, HOWEVER the system seems to be slower now. BREW commands seem to have more lag to them. Any ideas how to fix this?

@Tmstone

This comment has been minimized.

Copy link

Tmstone commented Feb 12, 2019

No need to chown the whole /usr/local if brew only fails to create a single directory.

For example, I fixed this error:

Permission denied @ dir_s_mkdir - /usr/local/Frameworks

With this command:

sudo install -d -o $(whoami) -g admin /usr/local/Frameworks

I tried the fix above today to create a brew python link and it worked. Thanks @pointum

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment