CONTENTS
Lastmodified 2013-08-13 (火) 17:15:42
http://www.freebsd.org/doc/ja/books/handbook/updating-upgrading-freebsdupdate.html
FreeBSD 7.1R-p15 から、9.1Rへfreebsd-update upgrade アップグレード
mail# df Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/ad0s1a 507630 215442 251578 46% / devfs 1 1 0 100% /dev /dev/ad0s1e 507630 16 467004 0% /tmp /dev/ad0s1f 150729078 9392978 129277774 7% /usr /dev/ad0s1d 2012718 1022116 829586 55% /var mail# mail# mail# freebsd-update -r 9.1-RELEASE upgrade Looking up update.FreeBSD.org mirrors... 3 mirrors found. Fetching metadata signature for 7.1-RELEASE from update4.freebsd.org... done. Fetching metadata index... done. Fetching 1 metadata patches. done. Applying metadata patches... done. Inspecting system... done. The following components of FreeBSD seem to be installed: kernel/generic src/base src/bin src/cddl src/contrib src/crypto src/etc src/games src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin world/base world/catpages world/dict world/games world/info world/manpages world/proflibs The following components of FreeBSD do not seem to be installed: world/doc Does this look reasonable (y/n)? y Fetching metadata signature for 9.1-RELEASE from update4.freebsd.org... done. Fetching metadata index... done. Fetching 1 metadata patches. done. Applying metadata patches... done. Fetching 1 metadata files... done. The update metadata is correctly signed, but failed an integrity check. Cowardly refusing to proceed any further.
http://viktorpetersson.com/2012/01/16/how-to-upgrade-freebsd-8-2-to-freebsd-9-0-with-virtio/
mail# sed -i '' -e 's/=_/=%@_/' /usr/sbin/freebsd-update mail# mail# freebsd-update -r 9.1-RELEASE upgrade
viで各種ファイル編集。
mail# freebsd-update install Installing updates...rmdir: ///boot/kernel: Directory not empty Kernel updates have been installed. Please reboot and run "/usr/sbin/freebsd-update install" again to finish installing updates. mail# reboot
FreeBSD 9.1-RELEASE (GENERIC) #0 r243826: Tue Dec 4 06:55:39 UTC 2012
mail# freebsd-update install Installing updates...ln: ///root/.cshrc: Cross-device link ln: ///root/.profile: Cross-device link rmdir: ///usr/src/sys/dev/random: Directory not empty rmdir: ///usr/src/sys/dev: Directory not empty rmdir: ///usr/src/sys: Directory not empty rmdir: ///usr/src/contrib/gcc: Directory not empty rmdir: ///usr/src/contrib: Directory not empty 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. mail#
メジャーバージョンアップグレードを行った後では、 すべてのサードパーティ製のソフトウェアを再構築し、 再インストールする必要があります。 この作業が必要なのは、インストールされているソフトウェアが、 アップグレードの際に削除されたライブラリに依存している可能性があるためです。 ports-mgmt/portupgrade コマンドは、このプロセスを自動化します。 以下のコマンドで、このプロセスを開始します。
# 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
この作業の終了後、最後にもう一度 freebsd-update を実行すると、アップグレードのプロセスが完了します。 以下のコマンドですべてのアップグレードプロセスのやり残し作業が行われます。
# portupgrade -af Stale dependency: amavisd-new-2.6.4_1,1 --> p5-libwww-5.836 -- manually run 'pkgdb -F' to fix, or specify -O to force.
(ーー;) てか、これを解決するために、無謀とも思える7.1Rから9.1Rへアップグレードしたのでした。w
# env DISABLE_CONFLICTS=1 portupgrade -o lang/perl5 -f perl-5.8.\* # portupgrade -fr perl
http://www.yomaigoto.jp/archives/461
[Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 421 packages found (-0 +1) . done] ---> Skipping 'www/p5-HTTP-Cookies' (p5-HTTP-Cookies-6.01) because a requisite package 'p5-HTTP-Message-6.06_1' (www/p5-HTTP-Message) failed (specify -k to force) ** Listing the failed packages (-:ignored / *:skipped / !:failed) ! www/p5-WWW-RobotRules (p5-WWW-RobotRules-6.02) (uninstall error) ! security/p5-Authen-NTLM (p5-Authen-NTLM-1.09) (uninstall error) ! www/p5-HTTP-Message (p5-HTTP-Message-6.06_1) (uninstall error) * www/p5-HTTP-Daemon (p5-HTTP-Daemon-6.01) * www/p5-HTTP-Negotiate (p5-HTTP-Negotiate-6.01) * www/p5-HTTP-Cookies (p5-HTTP-Cookies-6.01)
# portupgrade p5-IO-Socket-SSL-1.30 Stale dependency: p5-IO-Socket-SSL-1.30 --> perl-5.8.9_7 -- manually run 'pkgdb -F' to fix, or specify -O to force.
http://uyota.asablo.jp/blog/2007/05/06/1487106
で、pkgdb -F をするわけだが、途中で、
Shared object "libicui18n.so.38" not found, required by
等というエラーで停まるのです。
これは、icu のライブラリでして、通常はアップグレードなどでは、消されないけれど、消されてしまうバグで消えたったものらしい。
というわけで、これら消えてしまったライブラリは、バックアップデータから拾ってくる。
エラーメッセージで手を焼いたのがコレ。 http://forums.freebsd.org/showthread.php?t=14910
checking for XTST... configure: error: Package requirements (x11 xext >= 1.0.99.4 xi recordproto >= 1.13.99.1 xextproto >= 7.0.99.3 inputproto) were not met: Package dependency requirement 'xext >= 1.0.99.4' could not be satisfied. Package 'xext' has version '1.0.5', required version is '>= 1.0.99.4'
と言うので、
locate xext
とかするが、解らず。(?_?)
これは、xext の意味するところが、libXext であるという罠(´д`)
で、やっと・・・ここへ
# portupgrade -af ** Port marked as IGNORE: sysutils/libutempter: is now contained in the base system ** Port marked as IGNORE: archivers/xz: is already in the base system ---> Reinstalling 'gnome_subr-1.0' (sysutils/gnome_subr) ---> Building '/usr/ports/sysutils/gnome_subr' ===> Cleaning for gnome_subr-1.0 ===> Fetching all distfiles required by gnome_subr-1.0 for building ===> Extracting for gnome_subr-1.0 ===> Patching for gnome_subr-1.0 ===> Configuring for gnome_subr-1.0 ---> Backing up the old version ---> Uninstalling the old version ---> Deinstalling 'gnome_subr-1.0' pkg_delete: package 'gnome_subr-1.0' is required by these other packages and may not be deinstalled (but I'll delete it anyway): consolekit-0.3.0_8 dbus-1.2.4.6
イマココ
# freebsd-update install
GENERIC カーネルを一時的に読み込んでいたのであれば、 ここで、通常の方法を用いて新しいカスタムを構築し、インストールしてください。
コンピュータを再起動し、新しい FreeBSD を立ち上げてください。 これでアップグレードのプロセスは完了です。
http://www.yomaigoto.jp/archives/461
mail# portupgrade php5-5.4.6 Stale dependency: php5-5.4.6 --> perl-5.8.9_7 -- manually run 'pkgdb -F' to fix, or specify -O to force.
mail# pkgdb -Ff
root@blackcube:/usr/ports/lang/php5 # portinstall /usr/ports/lang/php5 [Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 378 packages found (-0 +1) . done] [Gathering depends for lang/php5 ............................................ done] ---> Installing 'php5-5.4.12' from a port (lang/php5) ---> Building '/usr/ports/lang/php5' ===> Cleaning for php5-5.4.12 ===> php5-5.4.12 has known vulnerabilities: Affected package: php5-5.4.12 Type of problem: php5 -- Multiple vulnerabilities.
Reference: http://portaudit.FreeBSD.org/1d23109a-9005-11e2-9602-d43d7e0c7c02.html
=> Please update your ports tree and try again. *** [check-vulnerable] Error code 1 Stop in /usr/ports/lang/php5. *** [build] Error code 1 Stop in /usr/ports/lang/php5. ** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portinstall20130320-60779-1yyhp8w-0 env make ** Fix the problem and try again. ** Listing the failed packages (-:ignored / *:skipped / !:failed) ! lang/php5 (unknown build error) root@blackcube:/usr/ports/lang/php5 #
2013-03-20 11:13:49
124 11:00 cd /usr/Backups/Blackcube_G7/usr/local/bin 125 11:01 scp ph* blackcube.smb.net:/usr/local/bin 126 11:02 scp ph* blackcube.smb.net:/usr/local/bin
Total access 4805:本日 1:昨日 1