Homebrewが更新エラーの時に対応してみた内容
このブログではアフィリエイト・アドセンス広告を利用しています
当ブログでは、アドセンス・アフィリエイト広告を掲載しています。
消費者庁が発表しているルールに沿って記事を作成していますが、問題のある表現を見つけた際にはご連絡ください。
1年前MacにHomebrewをインストールしたまま、何もせず放置してしまっていました。
ブログ用の画像圧縮を右クリックだけで処理するために使用していた「pngquant」をバージョンアップしたいと思い、そのために必要なパッケージ管理ツール「Homebrew」からアップグレードすることにしたのです。
ところが、エラー発生続出で難航してしまった記録を残しておきます。同じようなトラブルに見舞われた方の参考になれば幸いです。
目次(読みたいところへジャンプ!)
Homebrewの更新エラーが発生した環境
PC | Mac Book Air 11inch Mid2012 |
OS | Catalina 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最新版のインストールまで完了することができました。