前回は、Macで「Homebrew」を使ってソフトウェア(パッケージ)をインストールする方法を取り上げた。今回はインストールしたパッケージをアップデートする方法を紹介する。

パッケージのアップグレード手順

Homebrewでは「brew list」と実行すると、システムにインストールしたパッケージの一覧を表示させることができる。

「brew list」でシステムにインストールしたパッケージの一覧表示が可能

「apt(8)」や「pkg(8)」では、パッケージを最新版に更新する前にパッケージのメタデータをアップデートしたが、この作業はbrew(1)でも同じだ。最新のメタデータ情報はパッケージサーバにあるので、パッケージをアップグレードしたい場合は、まずこの最新のパッケージメタデータをサーバからダウンロードする必要がある。

「brew update」でパッケージのメタデータや関連データをアップデートすることができる

次に「brew outdated」を実行すると、アップグレード可能なパッケージの一覧を表示させることができる。アップグレードを実施する前に、まずこの一覧を表示してアップグレードする内容を確認しておこう。

「brew outdated」でアップグレード可能なパッケージを一覧表示できる

アップグレード内容が確認できたら、「brew upgrade」を実行してパッケージのアップグレードを実施する。実行すると、依存関係も含めてアップグレードすべきパッケージが一括でアップグレードされる。

「brew upgrade」で関連するパッケージをまとめてアップグレードすることができる

brew(1)で利用するサブコマンドは、apt(8)やpkg(8)とよく似ている。どちらも「update」がパッケージメタデータのアップグレード、「upgrade」がパッケージのバージョンアップに対応している。

自己診断機能を実行せよ!

Homebrewには、ほかのパッケージ管理システムにはない「自己診断機能」が用意されている。正確に言えば、Homebrewはベンダーが提供している正式なパッケージ管理システムではないため、環境側で発生するバージョンの差違や残ってしまった古いライブラリの削除などをユーザー主導で実施する必要があるのだ。そのため、実行すべき作業を教えてくれる機能が別途用意されているというわけである。

自己診断機能を実施するには、「brew doctor」と実行する。

「brew doctor」で自己診断機能を実行できる。表示されるメッセージに従って、ときどき周辺環境を整えたり、アップグレードしておくと良いだろう

診断結果として解決方法が文書で説明されているので、その指示に従って解決作業を行うだけだ。ときどき実行して、例えばインストールしてあるHomebrew管理下以外のソフトウェアをアップデートしたり、古くていらなくなったライブラリを削除したりといった整理をしてやると良いだろう。

今回のおさらい

今回のおさらいは、次のとおりだ。

  • 「brew list」でインストール済みパッケージを一覧表示
  • 「brew update」でパッケージのメタデータをアップデート
  • 「brew outdated」でアップデート可能なパッケージを一覧表示
  • 「brew upgrade」でパッケージを一括アップグレード
  • 「brew doctor」でHomebrewおよび関連環境の自己診断を実行

これで本連載では、それぞれCentOS、Ubuntu、FreeBSD、Macに対応する「yum(8)」「apt(8)」「pkg(8)」「brew(1)」という4つのパッケージ管理システムを取り上げたことになる。いずれも、よく似たつくりになっていることがおわかりいただけたのではないだろうか。

「バグの存在しないソフトウェアは存在しない」と揶揄されるように、ソフトウェアは常に何らかの問題を抱えているものだ。それはセキュリティ脆弱性だったり、バグだったり、想定外の操作をされると発生する何かだったりする。これらの問題は、何らかの方法で解決していかなければならない。そして筆者は、基本的にソフトウェアとはアップデートして使い続けるものだと考えている。サーバをセットアップしたっきり、1度もソフトウェアをアップグレードしたことがないのであれば、これを機に1度アップデート・アップグレードをしてみていだたきたい。