Umi Uyuraのブログ

プログラミング関連の作業ログ

Homebrew で `Warning: The /usr/local directory is not writable.` 発生

brew update したときに、たまに権限周りでエラーが発生しますが、そのたびに毎回対処法をググっているので、いい加減メモっておこうと思った次第です。。。

エラーの内容

エラーが発生したので、 brew doctor してみたところ、以下の様なメッセージが出力されました。

$ 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: The /usr/local directory is not writable.
Even if this directory was writable when you installed Homebrew, other
software may change permissions on this directory. Some versions of the
"InstantOn" component of Airfoil are known to do this.

You should probably change the ownership and permissions of /usr/local
back to your user account.

/usr/localls で覗いてみると、確かに一部のフォルダのオーナーがユーザー名ではなく数字になっていたので、そのあたりがおかしくなっているようでした。

対処法

権限を戻すために、以下の様なコマンドを実行すると良いようです。

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

これで、権限がおかしかった箇所も自分のアカウントがオーナーに設定されました。

brew doctor での上記のエラーも消え、 brew update も通るようになりました。

あ、

ひょっとすると、上記を実行する前に、HomebrewのGitの差分をリセットしていたので、それも必要かも。

また発生したら検証しておこう。

ターミナルコマンドでOS X を12倍深く使うための本

ターミナルコマンドでOS X を12倍深く使うための本