chown: /usr/local: Operation not permitted
Solution 1
Try disabling System Integrity Protection.
Solution 2
I was getting this when trying to update brew so the easier way that worked for me:
sudo chown -R $(whoami) $(brew --prefix)/*
Solution 3
The solution to this problem is simple copy the usr/local pathv then paste it in the dialog box which appears after pressing command+shift+g after your usr folder items simply press command+i and the window which supports will be an info window now scroll to the bottom of the window and check the read and write permisson and if you don't see your username there then add your username/admin account by pressing the add icon
Related videos on Youtube
Mona Jalal
contact me at [email protected] I am a 5th-year computer science Ph.D. Candidate at Boston University advised by Professor Vijaya Kolachalama in computer vision as the area of study. Currently, I am working on my proposal exam and thesis on the use of efficient computer vision and deep learning for cancer detection in H&E stained digital pathology images.
Updated on September 18, 2022Comments
-
Mona Jalal over 1 year
How should I fix this?
Tue Oct 31 21:52:56 mona@dhcp-wifi-8021x-155-41-82-88:~$ brew update && brew upgrade && brew cleanup Error: /usr/local is not writable. You should change the ownership and permissions of /usr/local back to your user account: sudo chown -R $(whoami) /usr/local Wed Nov 01 20:41:30 mona@dhcp-wifi-8021x-155-41-82-88:~$ sudo chown -R $(whoami) /usr/local Password: chown: /usr/local: Operation not permitted
sys info:
Wed Nov 01 20:42:36 mona@dhcp-wifi-8021x-155-41-82-88:~$ uname -a Darwin dhcp-wifi-8021x-155-41-53-197.bu.edu 17.0.0 Darwin Kernel Version 17.0.0: Thu Aug 24 21:48:19 PDT 2017; root:xnu-4570.1.46~2/RELEASE_X86_64 x86_64
and
Wed Nov 01 20:44:03 mona@dhcp-wifi-8021x-155-41-82-88:~$ brew config HOMEBREW_VERSION: >1.2.0 (shallow or no git repository) ORIGIN: https://github.com/Homebrew/brew.git HEAD: 38209aadbfe4fd0c6772467c4bc5c63325d53f6c Last commit: 1 year, 3 months ago Core tap ORIGIN: https://github.com/Homebrew/homebrew-core Core tap HEAD: 839ca7b9b4ce034b5abdb66cee0ef75bbb675ddf Core tap last commit: 1 year, 3 months ago HOMEBREW_PREFIX: /usr/local HOMEBREW_REPOSITORY: /usr/local HOMEBREW_CELLAR: /usr/local/Cellar HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com CPU: quad-core 64-bit haswell Homebrew Ruby: 2.3.3 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby GCC-4.2: build 5666 Clang: 8.0 build 800 Git: 2.9.2 => /usr/local/bin/git Perl: /usr/bin/perl Python: /Users/mona/anaconda/bin/python => /Users/mona/anaconda/bin/python3.6 Ruby: /Users/mona/.rvm/rubies/ruby-2.0.0-p353/bin/ruby Java: 1.8.0_71, 1.7.0_60 macOS: 10.13-x86_64 Xcode: 8.0 CLT: 9.0.1.0.1.1506734476 X11: 2.7.11 => /opt/X11 Wed Nov 01 20:44:25 mona@dhcp-wifi-8021x-155-41-82-88:~$ brew doctor Please note that these warnings are just used to help the Homebrew maintainers with debugging if you file an issue. If everything you use Homebrew for is working fine: please don't worry and just ignore them. Thanks! Warning: /usr/local is not writable. You should change the ownership and permissions of /usr/local back to your user account. sudo chown -R $(whoami) /usr/local Warning: Anaconda is known to frequently break Homebrew builds, including Vim and MacVim, due to bundling many duplicates of system and Homebrew-available tools. If you encounter a build failure please temporarily remove Anaconda from your $PATH and attempt the build again prior to reporting the failure to us. Thanks! Warning: python is symlinked to python3 This will confuse build scripts and in general lead to subtle breakage. 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.
-
Giacomo1968 over 6 yearsPossible duplicate of Can't install Brew formulae correctly (Permission denied in /usr/local/lib)
-
Giacomo1968 over 6 yearsFirst, this isn’t really formatted as a question. But that said, look at the first comment on the accepted answer to that question.
-
-
Barney Szabolcs over 6 yearsUnfortunately in High Sierra it says: operation can't be completed because you don't have the necessary permission.
-
Gudlaugur Egilsson over 6 yearsWhat Barnabas said.
-
Sayan over 6 years@BarnabasSzabolcs To solve the operation not permitted issue boot into recovery mode and in a shell window/terminal window which you can access from the utilities option from the menu bar once you are inside the recovery mode screen, now in the terminal window type in this command csrutil disable (there will be a space after csrutil) what this does is that it disables System Integrity Protection which is giving you the operation error after disabling SIP try to do what I have told you to do in my answer!
-
Barney Szabolcs over 6 yearswow, that sounds like you had to dig deep into this thing... Thanks @Sayan!
-
matt almost 6 years@Sayan you should give disabling SIP as your answer. That was what helped me.
-
Mikrasya almost 6 yearsDid not work for me. Owner of /usr/local/* are changed, but update brew still fails.
-
2540625 over 5 yearsCould you provide a little more context as to what this does exactly, please?
-
2540625 over 5 yearsDisabling SIP indeed worked on my Mojave machine.
-
Swami PR over 4 yearsbrew --prefix is the same as /usr/local but the difference from the above answer is that this updates the ownership of the children of /usr/local than /usr/local itself and this worked for me as opposed to changing the ownership of /usr/local itself
-
Turists over 4 years@SwamiPR Can you tell me what you did that was different from this answer? I had the same experience as you, but don't know how to fix.