BSD界隈四方山話

第2回 パッケージ管理システム「pkg 1.5」と基本的な使い方

この記事を読むのに必要な時間:およそ 5 分

pkg 1.5登場

先日,FreeBSDのパッケージ管理システムpkgの最新版「pkg 1.5.0」が公開されました。pkgはFreeBSD 10.0-RELEASEからデフォルトで採用されるようになった新しいパッケージ管理システムです。pkg(8)コマンドでソフトウェアの検索からインストール,アップグレード,セキュリティ脆弱性チェックなどの作業を行うことができます。1.5では実験段階ながらもサポートするオペレーティングシステムにNetBSDとMac OS Xが追加されました。

図1 pkg 1.5登場

# pkg --version
1.5.0
# 

FreeBSDシステムの管理という面で見れば,FreeBSDは9以前と10以降で世代が異なっていると言えます。⁠pkg以前」「ポストpkg」という区別ができるでしょう。

Linuxディストリビューションや*BSDではそれぞれが個々にパッケージ管理システムを持っています。そうしたパッケージ管理システムの中で,FreeBSD pkgは最後発のパッケージ管理システムに相当します。既存のパッケージ管理システムの利点と欠点を整理してバランスの良い作りになっているところがポイントです。

パッケージ管理システムpkgの主な特徴は次のとおりです。

  • pkg(8)コマンドでパッケージ管理に必要になる操作をすべて実施できる
  • 完全性の高いアップグレード作業を実施できる
  • Ports Collectionとシームレスに結びついている
  • パッケージのビルドは水曜日に開始され,日本時間ではだいたい週末ごとに最新のパッケージへアップグレードできるようになる
  • セキュリティ脆弱性が存在するソフトウェアをチェックする機能がある
  • 改変されたバイナリを検出する機能がある
  • あるソフトウェアのアンインストールなどによって使われることのなくなったソフトウェアを自動的に削除する機能がある

週に1回のペースで最新のパッケージが公開されていますので,基本的には週に1回のペースで最新のソフトウェアに更新するという運用方法になります。セキュリティの面からも,常に最新版へアップグレードし続けることが推奨されます。

ただし,企業ユースでは頻繁にソフトウェアを更新できないケースも存在します。そうしたシーン向けには四半期毎にパッケージの提供も行われていますので,そちらを利用するという方法があります。

pkgはPorts Collectionともシームレスに連動しています。緊急のセキュリティ脆弱性に対応するには,パッケージの提供よりも前にソフトウェアを更新する必要がある場合があります。そうした場合,Ports Collectionを最新版にアップグレードして修正済みのバージョンをインストールすることで対処することができます。pkgとPorts Collectionをうまく使えば,カスタマイズしたバージョンのソフトウェアを維持しながらpkgの恩恵も受けると言った管理を実現することもできます。

pkg(8)コマンドの代表的な使い方

今回はとくにpkg(8)コマンドの代表的な使い方を紹介します。

updateサブコマンド

ソフトウェアをインストールする時はupdateサブコマンドを指定してまずメタデータやリポジトリのアップデートを実施します。

図2 pkgのメタデータとリポジトリをアップデート

# pkg update
Updating FreeBSD repository catalogue...
[jail1.ongs.co.jp] Fetching meta.txz: 100%    944 B   0.9kB/s    00:01
Processing entries: 100%
FreeBSD repository update completed. 23938 packages processed
#

searchサブコマンド

ソフトウェアの検索にはsearchサブコマンドを使います。

図3 searchサブコマンドでソフトウェア検索

# pkg search vim
ja-jvim-3.0.j2.1b_1
p5-Shell-EnvImporter-1.07_1
p5-Text-VimColor-0.25
p5-Vimana-2010.09303_3
vim-7.4.691
vim-lite-7.4.691
vimb-gtk2-2.9
vimb-gtk3-2.9
vimpager-1.8.9
xpi-vimperator-3.5
#

どういったソフトウェアかより詳しく知りたい場合にはsearchサブコマンドに-fオプションを指定します。

図4 search -fでソフトウェアの詳細情報を表示

# pkg search -f vim-lite
vim-lite-7.4.691
Name           : vim-lite
Version        : 7.4.691
Origin         : editors/vim-lite
Architecture   : freebsd:10:x86:64
Prefix         : /usr/local
Repository     : FreeBSD [pkg+http://pkg.FreeBSD.org/FreeBSD:10:amd64/latest]
Categories     : editors
Licenses       :
Maintainer     : sunpoet@FreeBSD.org
WWW            : http://www.vim.org/
Comment        : Improved version of the vi editor (lite package)
Options        :
        DEFAULT_VIMRC  : on
Annotations    :
        cpe            : cpe:2.3:a:vim:vim:7.4:::::freebsd10:x64
Flat size      : 20.4MiB
Pkg size       : 4.71MiB
Description    :
Vim is a highly configurable text editor built to enable efficient text editing.
It is an improved version of the vi editor distributed with most UNIX systems.

Vim is often called a "programmer's editor," and so useful for programming that
many consider it an entire IDE. It's not just for programmers, though. Vim is
perfect for all kinds of text editing, from composing email to editing
configuration files.

Despite what the above comic suggests, Vim can be configured to work in a very
simple (Notepad-like) way, called evim or Easy Vim.

WWW: http://www.vim.org/
#

コメント

コメントの記入