- http://www.netbsd.org/docs/updating.html
- 以下は旧情報か?
- mv /etc/mk.conf /etc/mk.conf.pkgsrc
- pkgsrcでmk.confを使用している場合,名前を変更(ここでもmk.confを使用しようとするから)
- cd /usr/src
- ./build.sh -O ../obj -T ../tools -U -u distribution
- ユーザランドの構築
- ./build.sh distributionの時間を計測するためには以下のようにする
- time ./build.sh -O ../obj -T ../tools -U -u distribution
- 各PCのベンチマークとして使用したりする
- ./build.sh -O ../obj -T ../tools -U -u kernel=GENERIC
- カーネルの構築
- ./build.sh kernelの時間を計測するためには以下のようにする
- time ./build.sh -O ../obj -T ../tools -U -u kernel=GENERIC
- 各PCのベンチマークとして使用したりする
- GENERICは自分のカーネル定義ファイルを使用
- ここを参考に,自分用のカーネル定義ファイルMYKERNELを作成すると,一度にシステムアップデートとカーネルアップデートが出来てお得
- cd ../obj/sys/arch/<ARCH>/compile/GENERIC
- su
- mv /netbsd /netbsd.old
- netbsd.old日付-番号などとした方が分かりやすいかも
- 例:netbsd.old20090620-01(2009年6月20日につくった1個目のバックアップ)
- 新しいカーネルが安定動作したなら将来的には古い(old)カーネルは削除
- cp netbsd /netbsd
- shutdown -r now
- カーネルのインストール
- <ARCH>は自分のPCのアーキテクチャ
- 再起動時に問題が起こったら古いカーネルで起動して修正
- boot netbsd.old -s
- fsck /
- mount /
- mv netbsd.old netbsd
- reboot
- cd /usr/src
- su
- ./build.sh -O ../obj -T ../tools -U install=/
- /usr/sbin/etcupdate -s /usr/src
- システムの設定ファイル(/etc)のアップデート
- 1ファイルごとにアップデート確認が行われる
- 基本は,i(新しいファイルで上書き)とd(古いファイルを使用)
- 全てiにした場合は,これまでに設定したもの(rc.confからifconfigなどネットワークの設定まで)ほとんど全てが初期設定に戻ってしまうので再設定が必要.
- できれば,メッセージを読み,分からないものはiで,自分で設定した記憶があり再設定の必要がないものをdとするように.
- アップデート確認でm(マージ)をした場合には,特殊エディタ(?)が立ち上がり,違いを{新|旧|それぞれを元に自分で編集}を選択できる.使えるコマンドはpとでも打つとでる.
- 事前に差分を見たい場合は,etcupdate -al?
- http://www.area51.gr.jp/~rin/pcmemo/NetBSDkernelmake
- /usr/sbin/postinstall -s /usr/src -d / fix ****
- etcupdateをすると最後にエラーメッセージがでて,postinstallを実行するようにと出てくる.その時のメッセージを読んで,****は,fixしてもらいたいものを書いて実行
- /usr/sbin/postinstall list とやると一覧が出てくる?
- mv /etc/mk.conf.pkgsrc /etc/mk.conf
- pkgsrcでmk.confを使用している場合,変更した名前を元にもどしておく
- システムアップデートに関する参考文献
Last-modified: 2023-03-29 (水) 10:47:55