NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Update existing system from sources

On Sat, Jan 16, 2010 at 3:44 AM, Stathis Kamperis 
<> wrote:
> Hi all.
> Does anyone have a working set of instructions on how to upgrade an
> existing system from sources ? Specifically from 5.0.1 to netbsd-5.
> I used to follow this
>, but now it
> has been replaced by this:
> which doesn't
> work. It misses the part where tools are supposed to be built.
> Also, can I retrieve an older revision of the former link ?

I'm not sure what level you are starting at, so I'll give you a set of
high level steps I use to do it. I'm not sure all of this is
absolutely necessary, but it works. I'm not using root to do this. I'm
assuming you're on i386 or amd64, and you're building on the same
platform you're going to install on (no cross compiling).

cd /somedir
mkdir src
cvs -d checkout -PA 
-rnetbsd-5 src
mkdir obj tools dest release
cd src
./ -T ../tools -O ../obj tools
./ -u -U -T ../tools -O ../obj -D ../dest -R ../release release

This builds all of the install sets as if you were downloading them
from one of the mirrors. Alternately, you could also build an iso
image if you want to, check ./ -h

Then I copy the install sets to some known directory on the root disk,
and copy the install kernel to /netbsdi (or something similar). Then
interrupt the bootloader, and type this:

boot hd0a:netbsdi

And I'm in an install kernel. Choose the upgrade option, and there you
go. Point it to wherever you put the install sets on the disk, and it
upgrades your machine.

You could do it the "old" way by trying to merge in the new binaries
with some kind of "make world" incantation, but I figure why bother.
The NetBSD team has built great tools to keep this upgrade working
properly so I use them. I haven't done it the old way since shortly
after I started using NetBSD over 10 years ago.

And I rarely even bother building my own distribution anymore anyway,
the NetBSD-daily stuff on is plenty good enough for
me. I do stay on relatively recent kernels like this though:

cvs -d update -PAd 
-rnetbsd-5 src
(edit the kernel config file in src/sys/arch/<arch>/conf)
cd src
./ ./ -T ../tools -O ../obj tools (if necessary, you
don't have to do this every time)
./ -u -T ../tools -O ../obj kernel=<config file>

I feel verbose today I guess.


Home | Main Index | Thread Index | Old Index