FreeBSD-7.4 RELEASEにアップグレード

ふと思いついて、自宅サーバのFreeBSDを7.2 から7.4にアップグレードすることにした。
7.4はつい先週ぐらいにRELEASEになったばかり。

ちらっと手間取ったので記録しときます。


freebsd-update upgrade 7.2


FreeBSD 7.4-RELEASE Announcement

両サイトとも参考にさせていただきました。

# freebsd-update upgrade -r 7.4-RELEASE

Looking up update.FreeBSD.org mirrors… 4 mirrors found.
Fetching metadata signature for 7.2-RC2 from update5.FreeBSD.org… done.
Fetching metadata index… done.
Fetching 1 metadata files… done.
Inspecting system… done.

The following components of FreeBSD seem to be installed:
kernel/generic src/base src/bin src/contrib src/crypto src/lib src/sbin
src/secure src/share src/sys src/ubin src/usbin world/base world/dict
world/games world/info world/manpages

The following components of FreeBSD do not seem to be installed:
src/cddl src/etc src/games src/gnu src/include src/krb5 src/libexec
src/release src/rescue src/tools world/catpages world/doc world/proflibs

Does this look reasonable (y/n)?

このように始まるんだけれど、元のOS入れた時にRC2で入れたから、パッチが当たっていなかったんだと気付くのに30分すぎていたり。
いいことではないけれど、OSのアップグレードは慎重に行って、ミドルウェアは頻繁に(プログラム言語やDB除く)が良いかと。
(やっぱり、仮想環境に同じOSを入れておいて、先にそっちをアップグレードするぐらいじゃないと運用中のシステムは難しい)

違った。あててたけど、すでにあて終わってるけど、メンテナンスしないよと言われたんだ。

WARNING: FreeBSD 7.2-RC2 HAS PASSED ITS END-OF-LIFE DATE.

Fetching metadata signature for 7.4-RELEASE from update5.FreeBSD.org… done.
Fetching metadata index… done.
Fetching 1 metadata patches. done.
Applying metadata patches… done.
Fetching 1 metadata files… done.
Inspecting system…
Fetching files from 7.2-RC2 for merging… done.
Preparing to download files…

Fetching 27895 patches…..10….20….30….40….50….60….70….80….90.
…100….110….120….130….140….150….160….170….180….190….200..
..210….220….230….240….250….260..
27830….27840….27850….27860….27870….27880….27890.. done.
Applying patches… done.
Fetching 22657 files…

さすがにすごい量。ダウンロードだけでも1時間ぐらい。

# ls -1 /var/db/freebsd-update/ | wc -l
15779
# ls -1 /var/db/freebsd-update/ | wc -l
13626

これは何かというと、ダウンロードはこのディレクトリ(/var/db/freebsd-update/)にしているらしく、処理が終わったら
/var/db/freebsd-update/files/ に移動するみたい。

終わった後に移動したファイル数を数えると50069、391MB もあった。

■設定ファイルのマージ
/etc/のファイルをmergeする作業に移るんだけれど実際は/etc/hosts と/etc/named.conf の2つだけだった。
ほとんど、バージョン表記の部分だけが引っ掛かる。

+::1 localhost localhost.my.domain
+127.0.0.1 localhost localhost.my.domain seedslight.com

こんな感じだけれど、/etc/rc.conf で定義しているhostname と違う形になってしまうとApacheが起動しないので注意。

あとはnamed.conf

options {
– // Relative to the chroot directory, if any
– directory “/etc/namedb”;
+ // All file and path names are relative to the chroot directory,
+ // if any, and should be fully qualified.
+ directory “/etc/namedb/working”;

-zone “.” { type hint; file “named.root”; };
+zone “.” { type hint; file “/etc/namedb/named.root”; };

– file “slave/root.slave”;
+ file “/etc/namedb/slave/root.slave”;

// IPv6 ULA (RFC 4193)
-zone “c.f.ip6.arpa” { type master; file “master/empty.db”; };
-zone “d.f.ip6.arpa” { type master; file “master/empty.db”; };
+zone “c.f.ip6.arpa” { type master; file “/etc/namedb/master/empty.db”; };
+zone “d.f.ip6.arpa” { type master; file “/etc/namedb/master/empty.db”; };

こんな風に/etc/namedb/ がはいりました・・・directory を”/etc/namedb/working”;
にした意味ってなんでしょうね。

http://member.wide.ad.jp/~fujiwara/dnssec/dnssec-dlv-bind9-j.html
小規模なDNSSEC遊び — 私のDNSSEC対応 —

これなんでしょうかね。いまだ不明です。

http://www.yk.rim.or.jp/~george/jdiaryB00801.html#20100814p1
2010.08.14(土) FreeBSD 8.1 bind9.7 設定

external は大変参考になったけれど、workingの使い道はいまだに・・・

あとでIPv6の環境をがんばるために調べながらがんばってみようかと思う。

■Portsのアップグレード

http://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/ports-using.html
ここを参考に、

# portupgrade -a

で、すごい時間がかかってる(^^;途中でmake config のようにメニューが出てくるし。