freebsd-update

  • freebsd-updateは、FreeBSDベースシステムへのバイナリ更新を取得し、インストールおよびロールバックするために使用されます。
  • 基本はFreeBSD6.3以降の話。
  • GENERICカーネルってのは、つまりデフォルトカーネルってこと。

内容は少し適当。(shutdown -rとrebootの使い分けを考えないくらいには。)

GENERICカーネルを使っている場合に、同リリース内セキュリティブランチを追う

例:7.0-RELEASEp1→7.0-RELEASEp2

# freebsd-update fetch
# freebsd-update install
# shutdown -r

カーネルはGENERICだけど、loader.confを編集している場合は再度ドライバのインストールが必要な場合もある。

GENERICカーネルを使っている場合に、メジャーバージョンをアップデートする

例:7.1-RELEASE→7.2-RELEASE

# freebsd-update -r 7.2-RELEASE upgrade
# freebad-update install
# shutdown -r
# freebsd-update install
# shutdown -r

カスタムカーネルを使っている場合に、同リリース内セキュリティブランチを追う

/etc/freebsd-update.conf

Components src world kernel

が記載されている場合、該当ツリーがあるならバイナリアップデートされる。

sysinstall等でsrc/sysを入れているならsrc/sysもソースコードのバイナリアップデート対象になる。

参考

# freebsd-update -r 7.2-RELEASE upgrade
# freebsd-update install
# shutdown -r 
# freebsd-upadte install
# shutdown -r
# cd /sys/i386/conf
# config GENERIC_2
# cd ../compile/GENERIC_2
# make cleandepend && make depend && make && ls -l kernel
# make install
# shutdown -r
  • /boot/GENERICという名前でGENERICカーネル(# cp /boot/kernel /boot/GENERIC)を置いておくと、freebsd-update時にそのカーネルもアップデートされる。
  • カスタムカーネルが起動しなかったときに、本来の最新カーネルで立ち上がるか確認する時に便利。

最近の使った時の話

セキュリティサポートの切れたFreeBSD7.2(ZFSストレージサーバ)をFreeBSD7.3にupgradeした時のコマンド。

# freebsd-update -r 7.3-RELEASE upgrade
# freebsd-update install
# shutdown -r
# freebsd-update install
# shutdown -r