👌

Macの`brew tap`で`Permission denied`エラー

2022/11/14に公開

brew tapでエラーになりました

Macでbrew tap homebrew/cask-fontsしようとしたらエラーが出ました。

error: could not lock config file .git/config: Permission denied
error: Unable to create '/usr/local/Homebrew/.git/refs/remotes/origin/HEAD.lock': Permission denied
error: Could not setup refs/remotes/origin/HEAD
error: could not lock config file .git/config: Permission denied
error: could not lock config file .git/config: Permission denied
touch: /usr/local/Homebrew/.git/FETCH_HEAD: Permission denied
==> Tapping homebrew/cask-fonts
fatal: could not create work tree dir '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask-fonts': Permission denied
Error: Failure while executing; `git clone https://github.com/Homebrew/homebrew-cask-fonts /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask-fonts --origin=origin --template=` exited with 128.

対策

下記のコマンドを実行してから再度brew tapしたらうまくいきました。

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

このコマンドで何が行われているか

sudo

管理者権限で実行します。

chown -R

指定したファイルの所有者を変更します。変更するユーザはこの後の第1引数で指定します。-Rオプションでは、第2引数で指定したディレクトリの中身を再帰的に(子ディレクトリやファイルも)変更します。

$(whoami)

$(...)で、カッコ内のコマンドの結果を展開します。whoamiは現在のユーザ名を出力します。

$(brew --prefix)/*

--prefixオプションはbrewのインストール先ディレクトリを出力します。$(brew --prefix)brewのインストール先ディレクトリを求めた後に/*を付加して、中のすべてのディレクトリとファイルを変更対象にしています。

以上をまとめますと、「brewのインストール先のすべてのディレクトリ、ファイルの所有者を自分自身に変更する」となります。

ご参考になれば幸いです。
ではまた!

Discussion