Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Oct 2012 16:14:50 -0500
From:      dweimer <>
To:        FreeBSD Questions <>
Subject:   ZFS / Boot Environments / Jails / Upgrading form Source Code
Message-ID:  <>

Next in thread | Raw E-Mail | Index | Archive | Help
I have been playing around with different build layouts etc trying to 
come up with a plan to make updates smoother and more easily recoverable 
if it goes horribly wrong.  I think I have almost figured things out, 
just have a couple things left to figure out, one of which I am hoping 
someone on this list can help em out with, to save me some trial an 

Steps already figured out, mount new boot environment (using 9.1rc2 to 
test with) in /usr/jails/release91rc2, added the necessary settings to 
rc.conf, started jail, so far so good.  I now know I can run the boot 
environment from within the jail, stop the jail and begin the upgrade 
from source.

First step replace the usr/src within the jail with new source using 
svn, easy enough.  Then start make buildworld... oops, I have a problem 
now, the usr/obj/usr stuff is now under 
/usr/obj/usr/jails/release91rc2..., However I want it to be under 

 From looking at the usr/src/Makefile  It looks like I need to set the 
MAKEOBJDIRPREFIX=/usr/jails/relase91rc2/usr/obj/usr/src/tmp environment 
variable, but is that the best solution here?
There's also a /usr/obj/lib32 directory (system is running amd64, I 
assume this is for 32 bit libraries), so I would likely need to do 
something here as well, that I haven't gotten to yet.

I know the /usr/obj/usr directory can be deleted after the installation 
of the source, does the same go for the /usr/obj/lib32 directory?  if so 
perhaps it is a better option to make a new zfs data set outside the 
boot environments to mount under /usr/obj directory, let the default 
prefixes handle which sub directory to use, and just delete the 
directories when I am done working with the boot environment.

    Dean E. Weimer

Want to link to this message? Use this URL: <>