The procedure for doing a source code based update is described below:
Step # 1: Get updated source code
# cp /usr/share/examples/cvsup/standard-supfile /root/supfile
# vi /root/supfile
Set host as follows:
host=cvsup1.us.FreeBSD.orgCVSup servers for FreeBSD are running at the various sites around the world. Finally, update cvs tag to 7.2:
release=cvs tag=RELENG_7_2Save and close the file. Get updated source tree, enter:
# cd /usr/src
# csup /root/supfile
Open /usr/src/UPDATING and read important information regarding upgrade procedure including known issues, bugs and workaround.
# vi /usr/src/UPDATING
Step # 2: Build new compiler and related tools
First compiles the new compiler and a few related tools, then uses the new compiler to compile the rest of the system.# cd /usr/src/
# make buildworld
Step # 3: Build and install new kernel
Now, you have latest compiler and other tools, just build kernel:# make buildkernel
# make installkernel
You can also specify kernel custom name using KERNCONF. If your kernel config file name is onetouch, enter:
# make buildkernel KERNCONF=onetouch
# make installkernel KERNCONF=onetouch
Finally, you need to reboot system and boot into a single user mode using boot -s from the loader prompt:
# shutdown -r now
Step # 4: Install the base system 7.2
First, mount the system:# mount -a -t ufs
To install some system configuration files that are required by the new base system, enter :
# mergemaster -p
Accept the changes as promoted as per your configuration. Finally, install the base system:
# cd /usr/src
# make installworld
Finally, merge your 7.2 configuration files, enter:
# mergemaster -i
Now, you have FreeBSD 7.2 new kernel and base system installed. Just reboot the server:
# shutdown -r now
Make sure everything is working:
# sockstat -6
# sockstat -4
# tail -f /var/log/messages
# more /var/run/dmesg.boot
# tail -f /path/to/app/log/file
Update FreeBSD Applications
Now you are running new FreeBSD 7.2 stable environment. All you have to do is upgrade installed ports tree using portsnap, enter:# portsnap fetch update
List outdated applications, enter:
# pkg_version -vl '<'
Finally, check all ports, update as necessary (portmaster is not part of base system, you need to grab it from /usr/ports/ports-mgmt/portmaster) :
# portmaster -a
No comments:
Post a Comment