*FreeBSD 7.1 R [#z4a9be3c] #counter([total|today|yesterday]); RIGHT:&lastmod;更新 ---- Contents #contents [[VirusScan on Mail Server-Update]] ---- *CD & DVD iso images [#p8d80835] ftp://ftp.jp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/7.1 *Windows でインストールCD-R(W)を焼く [#na161e2e] http://help.bha.co.jp/cs/trouble3.php?ProCD=G9&ID=819 http://blog.heiichi.com/?eid=389068 http://win2linux.sourceforge.jp/trylinux/bsrecorder.html ---- *7.0-->7.1 [#e51e9392] 7.0から7.1へアップグレードする #freebsd-update -r 7.1-RELEASE upgrade 問題はないか?と (y/n)をきいてくるので y を選択する。 /usr/src/の下もアップグレードされるらしいく、長々とアップグレード処理がされる。 /etc/の下のファイルに差分があるらしいので、マージを掛ける確認をしてきた。 flora# freebsd-update install Installing updates...#freebsd-update install 再起動してからもう一度 install してと表示がでてきたので reboot する。 #reboot 立ち上げったので #freebsd-update install /etc/の下のファイルに差分があるらしいので、マージを掛ける確認をしてきた。 問題ないので、(y)を選択して完了! 少し時間は掛かったが、とても簡単。 ---- *6.3R p9 -> 7.1R [#w7039384] http://www.kitcc.org/~bugyo/b-log/archives/category/freebsd ''ns2.smb.netで再試行中''&lastmod; まずは、cronでのソースの自動更新を#して停止する。 vi /etc/crontab #30 3 * * * root /root/CVSUP/6_3/cvsup-releng_6_3.sh #freebsd-update -r 7.1-RELEASE upgrade : : : : Does this look reasonable (y/n)? y Fetching metadata signature for 7.1-RELEASE from update2.FreeBSD.org... done. Fetching metadata index... done. Fetching 1 metadata patches. done. Applying metadata patches... done. Fetching 1 metadata files... done. Inspecting system... done. Fetching files from 6.3-RELEASE for merging... done. Preparing to download files... done. Fetching 34455 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....270....280....290....300.... で取ってきて、 #freebsd-update install でインストール。 ここで設定ファイルのマージについて聞いてくるので適当に設定し、 %%#shutdown -r now%% #reboot #freebsd-update install Installing updates... Kernel updates have been installed. Please reboot and run "/usr/sbin/freebsd-update install" again to finish installing updates. ns2# reboot リブートしてカーネルを入れ替え FreeBSD 7.1-RELEASE (GENERIC) #0: Thu Jan 1 14:37:25 UTC 2009 ns2# /usr/sbin/freebsd-update install Installing updates... で、ユーザランドのライブラリなどがインストールされる。 Completing this upgrade requires removing old shared object files. Please rebuild all installed 3rd party software (e.g., programs installed from the ports tree) and then run "/usr/sbin/freebsd-update install" again to finish installing updates. メッセージにも出るとおり、ここでは古いライブラリなどは消されていないが、もう一回freebsd-update installすると消えるのでここで古いライブラリに依存しているソフトはリビルドする必要がある。 http://www.maita.cc/higurashi/sb/log/eid766.html 6.x から 7.x へのアップグレードでは、バージョン間のシステムライブラリの違いに対応するために、ここでサードパーティのアプリケーション(ports ツリーからインストールしたアプリケーション)をすべて再構築するように求められる。 http://www.daemonology.net/blog/2007-11-11-freebsd-major-version-upgrade.html の記述に従い、以下の手順を実行する。 とあるが、失敗する??? %% # portsnap -I update%% %% # portupgrade -f ruby%% %% ...%% %% # rm /var/db/pkg/pkgdb.db%% %% # portupgrade -f ruby18-bdb%% %% ...%% %% # rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db%% # portupgrade -af する。と・・・ ===> Cleaning for ruby+pthreads-1.8.6.287,1 ---> Cleaning out obsolete shared libraries [Updating the pkgdb <format:dbm_hash> in /var/db/pkg ... Inappropriate file type or format - /var/db/pkg/pkgdb; rebuild needed] [Rebuilding the pkgdb <format:dbm_hash> in /var/db/pkg ... - 142 packages found (-0 +142) ....................................................................................................100.......................................... done] /usr/local/lib/ruby/site_ruby/1.8/pkgdb.rb:215:in `origin': /var/db/pkg/pkgdb.db: unexpected file type or format -- Invalid argument (PkgDB::DBError) from /usr/local/lib/ruby/site_ruby/1.8/pkginfo.rb:205:in `origin' from /usr/local/lib/ruby/site_ruby/1.8/pkgtools.rb:245:in `config_include?' from /usr/local/lib/ruby/site_ruby/1.8/pkgtools.rb:215:in `config_ignore_moved?' from /usr/local/sbin/portupgrade:916:in `do_upgrade' from /usr/local/sbin/portupgrade:785:in `main' from /usr/local/sbin/portupgrade:781:in `each' from /usr/local/sbin/portupgrade:781:in `main' from /usr/local/lib/ruby/1.8/optparse.rb:785:in `initialize' from /usr/local/sbin/portupgrade:221:in `new' from /usr/local/sbin/portupgrade:221:in `main' from /usr/local/sbin/portupgrade:2175 となる。 とエラーになる。やはり、http://gihyo.jp/admin/feature/02/freebsd-7/0003?page=3 と同じ現象・・・・なので、手動で、 ns2# portupgrade portupgrade-2.3.1,2 ns2# portupgrade ruby+pthreads-1.8.6.111_4,1 ナニも起こらない? ns2# portupgrade ruby18-bdb-0.6.2 するが、/var/db/pkgをみると、以下の様なものが関連していそうなので、 ns2# mv /var/db/pkg/portupgrade-2.4.6,2 /root/ ns2# mv /var/db/pkg/ruby+pthreads-1.8.6.287,1 /root/ ns2# mv /var/db/pkg/ruby18-bdb-0.6.4 /root/ ns2# mv /var/db/pkg/ruby18-bdb-0.6.2 /root/ してから、 ns2# pkgdb -u ---> Updating the pkgdb [Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 139 packages found (-4 +0) (...) done] で、おもむろに ns2# portupgrade -afp : : [Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 180 packages found (-0 +1) . done] ---> Skipping 'x11-servers/xorg-server' (xorg-server-1.4.2,1) because a requisite package 'libXmu-1.0.3,1' (x11-toolkits/libXmu) failed (specify -k to force) ** Listing the failed packages (-:ignored / *:skipped / !:failed) - x11/xorg-manpages (port directory error) - x11-servers/xorg-printserver (port directory error) ! x11/libXext (libXext-1.0.3,1) (configure error) * x11/libXxf86vm (libXxf86vm-1.0.1) * x11/libXxf86misc (libXxf86misc-1.0.1) * x11/libXp (libXp-1.0.0,1) * x11-toolkits/libXmu (libXmu-1.0.3,1) * x11/libXpm (libXpm-3.5.7) * x11-toolkits/libXaw (libXaw-1.0.4_1,1) ! x11/xorg-libraries (xorg-libraries-6.9.0) (unknown build error) * x11-fonts/xfs (xorg-fontserver-6.9.0_1) * x11-servers/xorg-vfbserver (xorg-vfbserver-6.9.0_2) * x11-servers/xorg-nestserver (xorg-nestserver-6.9.0_1) * x11/xterm (xterm-238) * x11-fonts/libXft (libXft-2.1.7_1) * x11/xorg-apps (xorg-clients-6.9.0_3) * x11-servers/xorg-server (xorg-server-1.4.2,1) ns2# で、今度は書き戻し ns2# mv /root/portupgrade-2.4.6,2 /root/ruby+pthreads-1.8.6.287,1 /root/ruby18-bdb-0.6.2 /root/ruby18-bdb-0.6.4 /var/db/pkg/ ns2# pkgdb -u したあと、 http://gihyo.jp/admin/feature/02/freebsd-7/0003?page=3 ports の再構築が終わったら、FreeBSD ベースシステムをアップグレードし、3回目の再起動。 # freebsd-update install Installing updates... # reboot これでようやく FreeBSD 7.1-RELEASE への移行が完了。 # uname -a FreeBSD server.maita.cc 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Thu Jan 1 14:37:25 UTC 2009 root@logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 ---- % portsnap fetch && portsnap extract して、最新ツリーに。んで、念のために portupgrade ruby18-bdb-0.6.0 を先にしておいてから ;) portupgradeをアップグレードしようとして、エラー //導入している場合は、非常に時間がかかることを覚悟すれば、 #portupgrade -fa portupgrade: Command not found. //すればOK。野良ビルドはもう一度ビルドし直す。 //『FreeBSD 7.0 へようこそ 第3回 freebsd-updateで楽々リリースサーフィン』ではruby18-dbdを更新するとpkgdb.dbが壊れているが今回は問題なかった。 //http://gihyo.jp/admin/feature/02/freebsd-7/0003 //ともあれ、ruby-dbdのバージョンが古い場合は先にそっちをアップデートしてからOSをアップデートしておくのがいいかもしれない。 //もう一度 // #freebsd-update install /// //すると古いライブラリは消える。 ---- *6.3R p9 => 7.1R scruch install [#p90391e9] 師(鶴仙人)曰く、バックアップとってスクラッチインストールが吉!と・・・ **システム丸ごとバックアップ [#xe2c6052] [[Rsync de backup]]する。おかしくなった(した?)piano.smb.net のファイルをblackcube(www).smb.net へプッシュでバックアップする。 vi /root/bin/backup_to_blackcube_all.sh #!/bin/sh /usr/local/bin/rsync -av --delete / www.smb.net:/usr/Backups/Piano/all/ と言うスクリプトを作って、chmod +x する。 ./backup_to_blackcube_all.sh : : : var/virusmails/ var/yp/ var/yp/Makefile -> Makefile.dist var/yp/Makefile.dist sent 22796502015 bytes received 16395304 bytes 7859740.68 bytes/sec total size is 24434283004 speedup is 1.07 意外と早い! **FreeBSD 7.1R install CD iso.imageをとってくる [#s0abc7fe] http://www.jp.freebsd.org/mirror.html などから、適当なISO-CDイメージをダウンロードしてくる。今回は、 7.1-RELEASE-amd64-disc1.iso をとってきてCD-RWへ焼く **バックアップ先で参照可能にしてみる [#ma737bad] Piano にインストール中には、このコンテンツへはアクセス出来ないので、バックアップ先で参照可能にしてみる。 blackcube# ln -s /usr/Backups/Piano/all/usr/home/kuji/public_html/pukiwiki-1.4.7_notb_utf8 pukiwiki-1.4.7_notb_utf8 で、Apacheの設定で、/usr/local/etc/apache22/extra/httpd-userdir.confに、FollowSymLinks を追記しておく。 ##################################################### #2009 1 29 ############################################### <Directory "/home/kuji/public_html/"> Options +ExecCGI AllowOverride All Options FollowSymLinks Indexes SymLinksIfOwnerMatch IncludesNoExec # Allow from all </Directory> これで、http://www.smb.net/~kuji/pukiwiki-1.4.7_notb_utf8 でも同様の記事を閲覧できる。が、セキュリティー的には非推奨だそうなので、作業が終わったらFollowSymLinks は消す。 ためしに、Piano で、 piano:root {95} % /root/bin/backup_to_blackcube_all.sh すると、 http://www.smb.net/~kuji/pukiwiki-1.4.7_notb_utf8 も変更が反映されている :) 気をよくして、 vi /etc/crontab 05 * * * * root /root/bin/backup_to_blackcube_all.sh を追記しておく(やりすぎ?)