NetBSD OS update/upgrade quick howto.
Posted by valqk on
1. Fetch/Update the OS sources.
refs: NetBSD Docs (and NetBSD guide ; Fetching sources)
Fetch the source if you don't have it:
Update the source if you already have it:
If you are fetching the sources from scratch use:
Hint: If you are using 5-0 and want to update to 5-1, use
2. Create obj dir and build the tools:
3. Compile brand new userland:
NetBSD page says: Please always refer to build.sh -h and the files UPDATING and BUILDING for details - it's worth it, there are many options that can be set on the command line or in /etc/mk.conf.
4. Compile brand New Kernel:
is a Kernel options file located in: /usr/src/sys/arch/amd64/conf/
I have XEN3_DOMU there that holds all my xen kernels compile options.
You can also find GENERIC and others there.
5. Install Kernel
Installing the new kernel (copy it in Dom0), rebooting (to ensure that the new kernel works) and installing the new userland are the final steps of the updating procedure:
Go and change the kernel in the Dom0 to load the new one.
reboot the machine.
Or on native machines:
6. Install new userland and reboot again to be sure it'll work.
Afrer we've rebooted we are sure all new calls in the new userland will be handled by the new kernel.
Now we'll install the new userland.
7. Build a complete release so we can copy it on all other machines and upgrade with sysinst.
When you've tested on the package server. Install/update on all other machines.
1. Make a backup
2. Fetch a new kernel and the binary sets from the release dir and store them /some/where/
3. Install the kenrel (in XEN dom0)!
4. Install the sets except etc.tzg and xetc.tgz!!
refs: NetBSD Docs (and NetBSD guide ; Fetching sources)
Fetch the source if you don't have it:
$ cd /usr $ export CVS_RSH=ssh $ cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot co -r netbsd-5-0-2 -P src
Update the source if you already have it:
$ cd /usr/src $ export CVS_RSH=ssh $ cvs update -dP
If you are fetching the sources from scratch use:
$ cd /usr $ export CVS_RSH=ssh $ cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot co -r netbsd-5-1 -P src
Hint: If you are using 5-0 and want to update to 5-1, use
$ cvs update -r netbsd-5-1 -dP
2. Create obj dir and build the tools:
$ mkdir /usr/obj /usr/tools $ cd /usr/src $ ./build.sh -O /usr/obj -T /usr/tools -U -u tools
3. Compile brand new userland:
NetBSD page says: Please always refer to build.sh -h and the files UPDATING and BUILDING for details - it's worth it, there are many options that can be set on the command line or in /etc/mk.conf.
$ cd /usr/src $ ./build.sh -O ../obj -T ../tools -U distribution
4. Compile brand New Kernel:
$ cd /usr/src $ ./build.sh -O ../obj -T ../tools kernel=
I have XEN3_DOMU there that holds all my xen kernels compile options.
You can also find GENERIC and others there.
5. Install Kernel
Installing the new kernel (copy it in Dom0), rebooting (to ensure that the new kernel works) and installing the new userland are the final steps of the updating procedure:
$ cd /usr/obj/sys/arch/`uname -m`/compile/XEN3_DOMU/ $ scp netbsd Dom0 machine...
Go and change the kernel in the Dom0 to load the new one.
reboot the machine.
Or on native machines:
$ cd /usr/src $ su # mv /netbsd /netbsd.old # mv /usr/obj/sys/arch/`uname -m`/compile/KERNEL/netbsd / # shutdown -r now
6. Install new userland and reboot again to be sure it'll work.

Afrer we've rebooted we are sure all new calls in the new userland will be handled by the new kernel.
Now we'll install the new userland.
$ cd /usr/src $ su # ./build.sh -O ../obj -T ../tools -U install=/ #reboot
7. Build a complete release so we can copy it on all other machines and upgrade with sysinst.
$ ./build.sh -O ../obj -T ../tools -U -u -x releaseThe resulting install sets will be in the /usr/obj/releasedir/ directory.
When you've tested on the package server. Install/update on all other machines.
1. Make a backup
2. Fetch a new kernel and the binary sets from the release dir and store them /some/where/
3. Install the kenrel (in XEN dom0)!
4. Install the sets except etc.tzg and xetc.tgz!!
# cd / # pax -zrpef /some/where/set.tgz # ... # ...5. Run etcupdate to merge important changes:
# cd / # etcupdate -s /some/where/etc.tgz -s /some/where/xetc.tgz6. Upgrade finished, time to reboot.
Trackbacks
Trackback specific URI for this entryThis link is not meant to be clicked. It contains the trackback URI for this entry. You can use this URI to send ping- & trackbacks from your own blog to this entry. To copy the link, right click and select "Copy Shortcut" in Internet Explorer or "Copy Link Location" in Mozilla.
No Trackbacks
Comments
Display comments as Linear | ThreadedNo comments