Homebrewが更新エラーの時に対応してみた内容

Homebrew更新エラーを回避した方法

1年前MacにHomebrewをインストールしたまま、何もせず放置してしまっていました。

ブログ用の画像圧縮を右クリックだけで処理するために使用していた「pngquant」をバージョンアップしたいと思い、そのために必要なパッケージ管理ツール「Homebrew」からアップグレードすることにしたのです。

ところが、エラー発生続出で難航してしまった記録を残しておきます。同じようなトラブルに見舞われた方の参考になれば幸いです。

Homebrewの更新エラーが発生した環境

PCMac Book Air 11inch Mid2012
OSCatalina 10.15.7
更新前バージョンHomebrew 2.2.4
更新後バージョンHomebrew 3.2.2

Homebrewがインストールエラーに

$ brew -v
$ brew update
Error: Failed to upgrade Homebrew Portable Ruby!

ターミナルを使い、「$ brew -v」でHomebrewのバージョンを確認後、「$ brew update」でアップデートを実行したところ、エラーが発生してしまいました。Rubyが使えないという内容なのですが、エラーメッセージをそのままコピペしてググってみましたが、同じような状況に陥っている人を探すことができませんでした。

解決方法が皆目検討つかないので、Homebrewをインストールし直してみたのですが、これでも同じエラーが発生してしまったのです。Homebrewサイトのインストールコマンドをコピペして実行しただけなのですが。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

「Homebrew インストール 失敗」で検索して見つけた狛ログさんの記事から、次のコマンドを実行してみたところ、rubyエラーは発生しなくなりました。ありがとうございます!助かった。

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

>>>HighSierraでHomebrewのbrew install、brew updateに失敗する場合の対処|狛ログ

深く調べてはいないのですが、Homebrew公式サイトに記載されているインストールコマンドは、Macの最新OSに対応したものではないでしょうか。ビンテージと呼ばれている7年目の古いMacを使用していてOSがCatalina止まりなので、Catalina用のコマンドを打つ必要があったようです。

なんとかRubyエラーは回避できましたが、今度は権限エラーでインストールができない状況に変化したのです。

Homebrewが権限エラーでインストールできない

Homebrewを最新版にアップデートしようとしたところ、権限系のエラーメッセージが表示されてしまいました。

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Error: Can't create update lock in /usr/local/var/homebrew/locks!
Fix permissions by running:
  sudo chown -R $(whoami) /usr/local/var/homebrew
Error: The following directories are not writable by your user:
/usr/local/etc/bash_completion.d
/usr/local/share/doc
/usr/local/share/man
/usr/local/share/man/man1
/usr/local/var/homebrew/locks

エラーメッセージの中に解決方法も記載されていたので、指示通りにusr/local/パスの所有者と権限を変更すると、やっとHomebrewのインストールが完了しました。続けて「$ brew upgrade」で更新も無事に終わりました。

$ sudo chown -R 'ユーザ名' /usr/local
$ brew upgrade
$ brew -v
Homebrew 3.2.2

Homebrewを使ってpngquantをインストール

Homebrewが最新版にアップデートできたので、次はpngquantをインストールしていきます。

$ brew install pngquant

pngquantは、PNG画像を圧縮してくれるツールです。
パンダで有名な「TinyPNG」と同じことを、コマンド打つだけで一括圧縮したり、自動化したりできるようになります。ブログ用の画像を圧縮するのに、わざわざ画像をアップロードするの面倒じゃないですか。

以前はpngquantのGUIバージョンをダウンロードして使用していましたが、バージョン管理やアップデートがめんどくさいので、Homebrewを使ってコマンドラインで使用する方法に変更しました。

>>>pngquant

Homebrewを使って、pngquant最新版のインストールまで完了することができました。

>>>Python3+Djangoで初心者がMac内に環境構築した手順

Related Posts