Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 Nov 2004 12:08:14 +1030
From:      Adam Smith <adam@internode.com.au>
To:        Curtis Vaughan <curtis@npc-usa.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Upgrading 5.3-Beta1 to 5.3-RELEASE
Message-ID:  <20041109013813.GC576@internode.com.au>
In-Reply-To: <3E7680C2-31E9-11D9-BD44-000393934006@npc-usa.com>
References:  <3E7680C2-31E9-11D9-BD44-000393934006@npc-usa.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Nov 08, 2004 at 04:49:42PM -0800, Curtis Vaughan said:
> Just want to be sure that I do the right thing.
> 
> So, my version at present is 5.3-BETA1 and I want to install 5.3.
> I supposed I could just install 5.3 over my current version, but 
> wouldn't an upgrade work just as well?
> 
> Finally, want to make sure I have the procedure right:
> 
>  ??? go to: /usr/local/etc/cvsup
>  ??? issue the following command: /usr/local/bin/cvsup -g -L 2 
> stable-supfile
>  ??? once finished, then go to: /usr/src
>  ??? enter the commands:

There are some nicer ways to do this.  Check http://www.bugman.cx/cvsup/
for my make.conf, release-supfile and ports-supfile for examples.  You can
copy these three files into your /etc directory, and using the make.conf
file, you can now just 'cd /usr/src' and then issue a 'make update'.  Your
make.conf flags will tell CVSup what to do.

Make sure you edit the three files carefully, as you'll want to specify a
local CVSup server *and* you'll want to make sure the make.conf flags are
correct.  Remember that whenever you run 'make', the commands in make.conf
are passed as options to the make command.  That means if you have
'WITHOUT_X11=true' in your make.conf file, that will get passed to every
single port build you perform.

If you already have a make.conf file you might want to just copy out the
MASTER_ lines and all of the SUP lines (including PORTSSUPFILE) and put
them into your own make.conf.

> make buildworld KERNCONF=yourkernelname (for name, look to config file 
> found in /usr/src/sys/i386/conf/)

Just 'make buildworld' is fine here.  You don't need to specify a kernel
name when issuing a buildworld.

>  make buildkernel KERNCONF=yourkernelname (look to / )
>  make installkernel KERNCONF=yourkernelname
>  reboot

You can do a 'make buildworld' and a 'make buildkernel KERNCONF=yourkernel'
while you're booted into multi-user (ie normal) FreeBSD.  You can even
install the kernel from here before rebooting, but after you've built the
two, you should switch to single user mode and then run:

make installkernel KERNCONF=yourkernelname
make installworld

Then follow with:

> mergemaster -p ?

*snip*

>  reboot

So basically:

 o  update from cvs
      # cd /usr/src
      # make update
 o  build world/kernel in your normal or single-user mode
      # cd /usr/obj
      # rm -rf *
      # cd /usr/src
      # make buildworld
      # make buildkernel KERNCONF=YOURKERNEL
 o  install kernel/world in single user mode
      # reboot [ Choose single User Mode ]
      # cd /usr/src
      # make installkernel KERNCONF=YOURKERNEL
      # make installworld
 o  run mergemaster -p
      # mergemaster -p
 o  reboot 
      # reboot

It's fairly straight-forward once you get the gist :)

-- 
Adam Smith
Internode	: http://www.internode.on.net
Phone		: (08) 8228 2999

Dog for sale: Eats lots and is fond of children.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041109013813.GC576>