NetBSDの更新方法 のバックアップソース(No.1)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- バックアップ を表示
- NetBSDの更新方法 へ行く。
- 1 (2007-11-30 11:03:11 (金))
[[研究室内専用/トップ]] * NetBSDの配布セットの構成 [#i8e1504f] - カーネル ( /netbsd ) - ユーザランド -- ベースシステム ( base.tgz, etc.tgz, comp.tgz, man.tgz, misc.tgz, text.tgz) -- X Window System ( xbase.tgz, xetc.tgz, xcomp.tgz, xfont.tgz, xserver.tgz ) -- pkgsrc 基本的には、 +カーネルをアップグレードして再起動。 +ベースシステムをアップグレードして、必要に応じて再起動。 -- デーモンの再起動 -- kernelインターフェイスを直接触るコマンドの再実行 (libkvm を使うもの?) +その他をアップグレード。 * sourceから [#u3b90f74] NetBSDのサイトを参照のこと。 ** X. pkgsrcの場合 [#gf2c4535] cd /usr/pkgsrc ( cd ..; tar zxvpf pkgsrc.tgz ) # これは最初だけで良い。 cvs update -Pd cd pkgtools/pkg_install make show-downlevel && make update # pkg_installは先にアップデートしておく。 cd ../../pkgtools/pkg_rolling-replace make show-downlevel && make update # pkg_rolling-replaceを使いたいのでアップデートしておく。 cd ../../ pkg_rolling-replace -u * binaryから [#v8319528] ** 1. バイナリを入手する。 [#x29f51c2] ftp://ftp.netbsd.org/pub/NetBSD-daily/${branch}/${builddate}/${arch}/binary/sets の下にあるものを使うと良いだろう。 -- branch CVSリポジトリのタグ名。-currentはHEADとなる。 -- builddata 構築された日付。新しい方が新しい。 -- arch アーキテクチャ名。i386など。 - ただし、複数のホストを管理しているのであれば、共有サーバのディレクトリに上記の配布キットのコピーを作成して、それをコピーして使用するべきでしょう。 - 同様のディレクトリ構成にしておきanonymous ftpでアクセス出来るようにしておけば、インストールの際にも活用できるはずです。 ** 2. バイナリを展開する。 [#z93deaa5] *** 2.1. カーネル [#a024d83b] cd /work tar zxvpf kern-GENERIC.tgz mv /netbsd /netbsd.old mv netbsd /netbsd *** 2.2. ユーザランド [#r96d3d81] cd /work for f in base.tgz comp.tgz man.tgz misc.tgz text.tgz; do /rescue/gunzip -c $f | /rescue/tar --unlink -xvpf - -C /; done etcupdate -s etc.tgz *** 2.3. X Window System [#c7ce3821] cd /work for f in xbase.tgz xcomp.tgz xfont.tgz xserver.tgz; do tar --unlink -zxvpf $f -C /; done *** 2.4. pkgsrc [#nab997bf] pkg_add -u ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-${OS_VERSION}/${arch}/All/pkg_chk pkg_chk -u -b -P ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-${OS_VERSION}/${arch}/All - ただし、pkg_chk は、更新が必要なパッケージを一度にuninstallしてからinstallをするので、途中でエラーが発生したりすると大変なことになる場合があります。 - ソースからの再構築になりますが、pkg_rolling-replace は、更新が必要なパッケージのみを make replace でそのつど置き換えるので、比較的安心です。 - 上記のサイトのpackageは、一番シンプルなPKG_OPTIONSで作成されていますので、手元のホスト一台をpkgsrc update専用マシンとして pkg_rolling-replace してpackageを同時に作成させて、他のホストはそのホストからpkg_chkでアップデートする、というのが良いでしょう。