ports-mgmt/pkg_replace のすすめ

FreeBSD でプログラムをインストールするための枠組みとして、 ports というものがあります。これはプログラムをインストールするためのスケルトンがあり、そのディレクトリで make すると、勝手にネットにつないでソースを拾ってきて、 自動的に依存関係を調べて、入っていないライブラリ等を入れて、ソースにパッチを当てて make してくれるというもので、自前で依存関係を調べてconfigure して make するよりもかなり楽ちんな仕組みになっています。
ですが、すでにインストールしてあるプログラムのバージョンアップなどではちょっと不便ですので、「かゆいところに手が届く」 portupgrade という管理ソフトをインストールして使うというケースが多いです。

ただし、 portupgrade 自体は ruby でかかれたスクリプトですので、インストールするのにちょっと手間がかかりますし、jail 環境下やシビアな公開サーバなど、あまり不要なプログラムを入れたくない場合などには、使い辛い場合もあります。

そこで、おすすめは軽量な ports-mgmt/pkg_replace です。

pkg_replace 自体は born shell のスクリプトでかかれているため、インストールの一瞬で終わりますし、依存するパッケージもありません。OS のインストール直後に一番最初に入れて、いきなり使い始めることができます。
インストール自体は

# cd /usr/ports/ports-mgnt/pkg_replace/ && make install clean

で終了です。

使い方は、ほとんど portupgrade と同じですので、乗り換えるのもらくちんです。

また、一緒に ports-mgmt/portconf もインストールしておくと、pkg_replace でインストールするときと、make install するときとで同じ knob を指定することが出来るようになりますので、過去にインストールしたプログラムを更新する時に、設定し忘れがなくなって安心です。

同様に、ports-mgmt/portaudit を入れておくと、一日に一回、インストールされているプログラムの脆弱性が無いかどうかを調べて daily で送ってきてくれるため、公開サーバには必須のプログラムです。

サーバの管理は「出来るところはなるべく自動化する」が基本ですので便利なツールを組み合わせて、なるべく楽ちんな管理をしましょう。