Upgrade FreeBSD 8.2 to 9.0

Yesterday I tried to update some of the 8.2 servers
to 9.0. which made me run into a error.

The update metadata is correctly signed, but failed an integrity check.
Cowardly refusing to proceed any further.

After some googling I found the solution to this problem. To fix this problem you have to patch the
freebsd-update file. Which can be done with the following see command.

sed -i '' -e 's/=_/=%@_/' /usr/sbin/freebsd-update

The re-run the the upgrade command.

freebsd-update upgrade -r 9.0-RELEASE

If all went fine. Then you can update your system. Just run:

freebsd-update install

When the install is done restart you’re system.

shutdown -r now
init 6

When the system comes back you need to re-run the install command again to install all the user land updates.

freebsd-update install

After this is done. The system prompts for a message which makes the upgrade a huge pain in the but.

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.

The rebuild of all application can take from a couple of minutes till long….
I found a couple of lines in the FreeBSD manual which makes life a bit easier.

# 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

The system now rebuild all the installed applications.
To finish of the upgrade just re-run:

freebsd-update install

And you’re done.

Leave a Comment

NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>