macOS Sierra で Homebrew を使う方法 (2016年9月更新)

macOS Sierra の前バージョンの OS X El Capitan から System Integrity Protection (SIP) (rootless とも呼ばれる) という機能が導入され, /usr/System といった重要なディレクトリへの書き込みが制限されています. 通常 /usr/local にインストールされる Homebrew もこの影響を受けるため, これを回避する方法を紹介します.

対応方法

基本的に OS X El Capitan の時と同様です. El Capitan でパーミッションを設定しても, アップデートの際にパーミッションがリセットされるようです. その場合は以下の手順に従い再度パーミッションを設定してください.

2016/7 追記: Sierra から Sierra へのマイナーアップデートではパーミッションの変更作業は不要のようです.

2016/9/23 追記: Homebrew 1.0.0 から Homebrew のインストール先が /usr/local/Homebrew 以下に変更になっているため, 一部の手順を修正しました.

/usr/local が既に存在する場合

Homebrew をすでにインストールしている場合はこちらに該当します. brew update で Homebrew を最新のバージョンにアップデートしていれば, /usr/local のパーミッションは macOS のデフォルトのままで OK です. 以下のコマンドを実行すると /usr/local に macOS のデフォルトのパーミッションを設定することができます.

sudo chown root:wheel /usr/local
sudo chmod 0755 /usr/local

/usr/local が存在しない場合

以下のコマンドで /usr/local を作成し, 適切なパーミッションを設定します.

sudo mkdir /usr/local && sudo chflags norestricted /usr/local && sudo chown root:wheel /usr/local && sudo chmod 0755 /usr/local

上記の方法でうまくいかない場合は, 一度 SIP を無効化してから /usr/local を作成してみて下さい. SIP の無効化やより詳細な説明については, こちらの記事を参照して下さい.