Mac OS X 10.13 High Sierraで自作の/ usr / localをchownできない


118

Homebrewは/ usr / localに権限を必要とし、他の誰も私のラップトップを使用していないので、私はいつも単に

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

ハイシエラでは、これにより

chown: /usr/local: Operation not permitted

修正は何ですか?


で解決:sudo chown -R "$ USER":admin / usr / local / *
Marcelo Campusano '

回答:


218

問題が発生し続けました...より深く掘り下げた後、Homebrewをアンインストールしてから再インストールするだけでこの問題が解決することがわかりました。

Homebrewをアンインストールします。

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

次に、再インストールします。

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

4
これは、「高」シエラアップグレード後に私の自作を修正する唯一の方法でした。私のエラーは: gh4x-mbpr:~ gh4x$ brew link git Linking /usr/local/Cellar/git/2.15.0... Error: Permission denied @ dir_s_mkdir - /usr/local/lib そして sudo chown -R $(whoami) $(brew --prefix)/* 助けにはなりません
でした

信じられない。初回の失敗、アンインストールスクリプトの失敗、2回目のインストールの動作
GreenAsJade 2018年

brew list最初にファイルの出力を保存して、どのパッケージがインストールされたかを記録したい場合があります。
Giles Gardam

1
私のシステムでは、他のさまざまなMojave自作修正は機能しません。アンインストール/再インストールは完全に機能しました。
pkamb

2
カタリナでも使用可能
Gefilte Fish

52

残念ながら、あなたは/usr/localハイシエラに住むことはできません。この問題を回避するには、にあるsudo mkdir /usr/local/include/usr/local/Frameworks、彼らが存在しない場合、および

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

この簡単な回避策と驚くべき自作のilovezfsに感謝します!


9
まだ動作していません。$ brew update Error:/ usr / localディレクトリは書き込み可能ではありません。
ローレンス・コープ

アンインストールしてみて、再インストール自作: stackoverflow.com/questions/46459152/...
ruggershawn

私が他の場所でコメントしたように、アンインストールするとすべてのbrewパッケージが削除されます。
ジェイデル

$(brew --prefix)に評価する必要がある/usr/local/と思います。
ジョーダンスチュワート、

33

/usr/local自分自身の権限を変更することはできませんが、その下のフォルダの正しい権限を変更することができるため、これにより修正されました
sudo chown -R $(whoami) /usr/local/*


1
同じ問題をまだ入手する
ローレンスコープ

2
MacOS High Sierraで実行されています。働いた。ありがとう。
オダメ王子18

2
私のために働いた:macOS High Sierra 10.13.6
Gail Parsloe

8

私はこれに従いましたが、問題はまだ解決しません。
だから、私は以前のものをアンインストールせずに自作を再インストールしました。それは今働いています!
(方法がわかりません)


3
Homebrewを完全にアンインストールしてから、もう一度インストールすることをお勧めします。
k1r8r0wn 2017年

複数インストールしても動作しましたが、アンインストールするまで修正できませんでした。
cbowns

アンインストールすると、すべてが台無しになります。私は大量のパッケージをインストールしており、それらを実行し、もう一度インストールする必要があります。悲しいことに、私はそれらのパッケージを持っているので、これは以前はすべてうまくいきました。
ジェイデル


3

システム整合性保護を無効にしてみてください。ドキュメントから:

システム整合性保護は、csrutil(1)コマンドを使用して構成できます。

ターミナルで次のコマンドを実行すると、システムでシステム整合性保護が現在有効になっているかどうかを確認できます。

$ csrutil status
System Integrity Protection status: enabled.

システム整合性保護を有効または無効にするには、リカバリOSを起動して、ターミナルからcsrutil(1)コマンドを実行する必要があります。

マシンを再起動し、起動時にコマンドキーとRキーを押したままにして、リカバリOSを起動します。ユーティリティメニューからターミナルを起動します。次のコマンドを入力します。 $ csrutil enable

マシンでシステム整合性保護を有効または無効にした後、再起動が必要です。


これにより理論的には質問に答えることができますが、ここに答えの本質的な部分を含め、参照用のリンクを提供することが望ましいでしょう
Jake Symons、2018

3
これは、テーブルソーからガードを取り外すのと少し似ています。これは機能し、必要になる場合もありますが、実行する必要がない場合はより安全です。自分で/ usr / localの所有者にして自作を動作させることは、とにかくハックのように思えました。
カレブ

3
これは非常にお勧めしません!ユーザーが自分のやっていることを行わない限り、非常に危険です。
アブShumon

@oligofren:D:D:Dおいでよ。リラックスしてくださいword in context。英語のコンテストではありません。:D:Dユーザーに警告するフラグ。しかし、大丈夫、あなたはその後、私のために文言を拾う:P:P
アブShumon

1

bashから来たためにzshを使用している場合は、$ PATHを変更する必要があるかもしれません。export PATH=$HOME/bin:/usr/local/bin:$PATH .zshrcに追加する必要があります

それからそれはうまくいくはずです、この問題は私のMacでこのように解決されました。


1

10.13 High Sierraにも参加しています。以前の提案を試しました。何もうまくいきませんでした。最終的に、最初にコマンドラインツールをインストールしてみました。

xcode-select --install

その後、brew installコマンドを(再)実行しました。

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

そしてそれはついにうまくいった。


0

ホームフォルダーまたはインストールがアクセスする必要のあるフォルダーにロックが設定されていないことを確認してください。

権限と所有権が正しく設定されていて、現在正しいユーザーまたはルートユーザーでログインしている場合でも、新しいフォルダまたはディレクトリを作成することはできません。


0

/ user / local / Frameworksフォルダーがなかったので、これで修正されました

sudo mkdir -p /usr/local/Frameworks
sudo chown -R $(whoami) /usr/local/Frameworks

OSX High Sierraを持っています


0

これはカウシクです。MacBook Pro macOS Catalina 10.15.4を使用しています。新しい管理者アカウントを作成しましたが、brewがエラーをスローしていました。したがって、私はこの投稿の手順に従いました。うまくいったのは:

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.