NetBSD:パッケージ
技術ドキュメント目次 -> NetBSD -> パッケージ本技術ドキュメントは、2002~2004年頃に作成したものが多いです。
内容が古くなっていることもあるかと思いますが、ご了承ください。
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。
◆ NetBSD パッケージシステム
デフォルトの設定では、パッケージシステムを用いてNetBSDにソフトウェアを追加すると、/usr/pkg/* にインストールされます。
例えば、パッケージシステムを用いて、wgetコマンドをインストールした場合は、
wgetコマンドは、/usr/pkg/bin/wget にインストールされます。
/usr/pkg ディレクトリの中は次のような構成になっていて、
例えば、perl だと、
インタプリタ本体は /usr/pkg/bin/perl としてインストールされ、
ライブラリは /usr/pkg/lib/perl5/ などにインストールされます。
foo@ [284]$ ls -al /usr/pkg total 17 drwxr-xr-x 14 root wheel 512 Mar 2 15:18 . drwxr-xr-x 18 root wheel 512 Jan 10 22:58 .. drwxr-xr-x 2 root wheel 1536 Mar 2 15:17 bin drwxr-xr-x 3 root wheel 512 Jan 5 16:26 emul drwxr-xr-x 3 root wheel 512 Jan 7 22:28 etc drwxr-xr-x 3 root wheel 512 Jan 8 22:20 include drwxr-xr-x 2 root wheel 2560 Mar 2 15:08 info drwxrwxr-x 9 root wheel 512 Jan 5 17:34 java drwxr-xr-x 4 root wheel 512 Jan 13 13:33 lib drwxr-xr-x 3 root wheel 512 Dec 30 04:09 libdata drwxr-xr-x 4 root wheel 512 Jan 13 13:36 libexec drwxr-xr-x 25 root wheel 512 Dec 30 04:09 man drwxr-xr-x 2 root wheel 512 Jan 8 08:00 sbin drwxr-xr-x 18 root wheel 512 Mar 2 15:08 share foo@ [285]$ |
◆ パッケージシステムによるコンパイル済みソフトウェアの追加
ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/README.htmlなどを参照し、
インストールしたいソフトウェアのバイナリパッケージを指定して、
pkg_add コマンドを実行することでパッケージを追加できます。
(実行例:zshという種類のshellを追加する) # pkg_add ftp://ftp.netbsd.org/pub/NetBSD/packages/1.5/i386/All/zsh-3.0.8.tgz ftp: connect to address 3ffe:8050:201:1860:2a0:c9ff:feed:b7ea: No route to host setenv PKG_PATH='ftp://ftp.netbsd.org/pub/NetBSD/packages/1.5/i386/All' updating /etc/shells # |
◆ インストール済みのソフトウェア一覧を参照するには
pkg_info コマンドを実行することで、一覧を参照できます。
bash-2.05# pkg_info gettext-lib-0.10.35nb1 tools for providing messages in different languages, libintl only m4-1.4 GNU version of Unix m4 macro-processor tcsh-6.11.00 Extended C-shell with many useful features wget-1.7 Retrieve files from the 'net via HTTP and FTP digest-20010807 Message digest wrapper utility nkf-1.7 Network Kanji code conversion Filter .... # |
◆ パッケージシステムによるソースからのソフトウェアの追加(pkgsrc)
コンパイル済みのソフトウェアを追加するのではなく、ソースからコンパイルしてインストールするためには pkgsrc を使用します。
ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/tar_files/pkgsrc.tar.gz
やCD-ROM等から、pkgsrc.tar.gz(pkgsrcのアーカイブ)を取得し、
/usr/pkgsrc ディレクトリとして pkgsrc を展開します。
/usr/pkgsrc ディレクトリには、各プログラムのソースファイルが多数格納されて
いますので、目的のソフトウェアのディレクトリに移動し、make を実行することで、
ソースからのコンパイル・インストールを行うことが出来ますが、各ソースファイルは
ソフトウェアのバージョンアップなどに伴って日々更新されていますので、
/usr/pkgsrc にその更新を適用していく必要があります。
pkgsrc にソースの更新を適用していく方法の1つとして、SUPを使用する方法があります。
sup による pkgsrc更新の実行例 # mkdir /etc/supfiles /usr/sup # cp /usr/share/examples/supfiles/serverhost /etc/supfiles/coll.list 上記コマンドを実行し、 coll.list に次の2行のみが書かれてているようになるように編集します。 (コメントアウトを外すだけでもいいかもしれません) current release=pkgsrc host=sup.jp.netbsd.org \ base=/usr prefix=/usr backup use-rel-suffix compress delete 上記の準備が出来たら、 sup -s を実行することで、/usr/pkgsrc に格納されている pkgsrc を更新することが出来ます。 (sup が終了するまでには、かなり時間が掛かります) |
pkgsrc の更新が終了したら、いよいよソフトウェアをインストールします。
pkgsrc 内のインストールしたいパッケージのディレクトリに移動し、
次のコマンドを入力することでインストールが行われます。
依存関係のあるパッケージも含めてインストールされますので、
「ソフトAを動かすためにはソフトBが必要」という時には、
ソフトAのディレクトリにて下記コマンドを実行することで、
ソフトAもソフトBもインストールされます。
# make fetch-list | sh # make # make install |
◆ インストール済みパッケージに対してのセキュリティ脆弱性のチェック
次のコマンドを実行することで、脆弱性のチェックができます。
# download-vulnerability-list; audit-packages |
◆ pkgsrc にインストール済みのパッケージより新しいものが存在するか確認
/usr/pkgsrc を SUP を使用して更新しても、更新したソフトウェアをインストールするのを忘れてしまったら、
(当然ですが)ソフトウェアの更新をシステムに反映することができません。
そのような事態を防ぐためには、次のように lintpkgsrc コマンドを実行して、
/usr/pkgsrc にインストール済みのパッケージより新しいソースが存在しているか
の確認を行うことが有効です。
なお、lintpkgsrc コマンドを実行するためには、
pkglintパッケージが必要になりますので、まず、
pkgsrc/pkgtools/pkglint
をインストールしておく必要があります。
# lintpkgsrc -i |
■ NetBSD についての他のドキュメント
- rcファイル
- パッケージ
■ 他のグループのドキュメント
Apache / Linux / FreeBSD / OpenSSL / Perl / HTTPプロトコル / Jakarta Tomcat / Java / NetBSD / Oracle / PostgreSQL / UNIX の C言語 / UNIX のコマンド / Windows / bind / システム運用TIPS