# How to create bootable iso to install custom FreeBSD build?



## rlorentz (Apr 23, 2011)

Here's my hardware situation:

(Remote) Box foo, running 8.2 -RELEASE FreeBSD (running some server daemons and such).
(Local) OS X host OS, hoping to run FreeBSD 9.0 -CURRENT within VMware Fusion, currently running nothing.

I've got -CURRENT sources checked out to 'foo' and am building the world and kernel there.  I'm hitting some snags but helpful folks have got that sorted out it seems.  I've built with DESTDIR=/FreeBSD-CURRENT/build.  It *seems* that I'm installing to /FreeBSD-CURRENT/build but also /usr/obj???  I'm unclear on this.

To be clear, this is what I'm doing:


```
mv /usr/obj /usr/obj.old ; mkdir /usr/obj
make buildworld DESTDIR=/FreeBSD-CURRENT/build TARGET=amd64 TARGET_ARCH=amd64 && make buildkernel DESTDIR=/FreeBSD-CURRENT/build TARGET=amd64 
TARGET_ARCH=amd64 && make installworld DESTDIR=/FreeBSD-CURRENT/build TARGET=amd64 TARGET_ARCH=amd64 && make installkernel DESTDIR=/FreeBSD-
CURRENT/build TARGET=amd64 TARGET_ARCH=amd64 && make distribution DESTDIR=/FreeBSD-CURRENT/build TARGET=amd64 TARGET_ARCH=amd64
```

I want to ideally create, on 'foo', my_bootable_freebsd_current.iso that I can mount with my VM and completely install with.  I can't find anything on the net about doing this, but it's obviously possible, since that's how FreeBSD releases are distributed.  How do I do this?  If this is going to be a hassle, what is better to do?  Is there a smart way to create an iso of the files I care about, boot up with an older 9.0 live CD, and then install from the iso I've made?  Would I be best off to put up these built files on my OS X machine as an NFS export - if so, exactly what files do I care about and how do I do this?  I'm quite flexible but just don't know how to achieve it

My next issue is what happens when I do a '*svn update*' and see that some commits have been made to FreeBSD -CURRENT?  Ok, I get the new files, now what?  Should I now use my -CURRENT VM and check out the sources and build on there?  Given my above codeblock, what would that become exactly in order to upgrade in-place on my -CURRENT VM?

Thanks,

Robert


----------



## gkontos (Apr 23, 2011)

/usr/src/UPDATING


> 20110314:
> As part of the replacement of sysinstall, the process of building
> release media has changed significantly. For details, please re-read
> release(7), which has been updated to reflect the new build process.


From release(7)


> EXAMPLES
> The following sequence of commands can be used to build a ``-CURRENT
> snapshot'':
> 
> ...



In any case you will need to do that from a working 9-Current and not from 8.2-Release.
Hope that helps.


----------



## rlorentz (Apr 23, 2011)

gkontos said:
			
		

> /usr/src/UPDATING
> 
> From release(7)
> 
> ...



That's great that it can automatically build all those images.  That'll help once I need to update I guess (will it?)  But how does that apply to me when getting started


----------



## gkontos (Apr 23, 2011)

I thought that you want to make a 9-Current snapshot (custom release). If I am not mistaken this can not be done from a 8.2-Release.


----------



## stewe (Jun 3, 2011)

gkontos said:
			
		

> I thought that you want to make a 9-Current snapshot (custom release). If I am not mistaken this can not be done from a 8.2-Release.



Why not?


----------



## gkontos (Jun 3, 2011)

stewe said:
			
		

> Why not?


Because you have to be running 9-Current


----------



## Terry_Kennedy (Jun 5, 2011)

rlorentz said:
			
		

> I want to ideally create, on 'foo', my_bootable_freebsd_current.iso that I can mount with my VM and completely install with.  I can't find anything on the net about doing this, but it's obviously possible, since that's how FreeBSD releases are distributed.  How do I do this?  If this is going to be a hassle, what is better to do?  Is there a smart way to create an iso of the files I care about, boot up with an older 9.0 live CD, and then install from the iso I've made?  Would I be best off to put up these built files on my OS X machine as an NFS export - if so, exactly what files do I care about and how do I do this?  I'm quite flexible but just don't know how to achieve it.


Maybe I'm missing something, but why not just download a CURRENT snapshot from ftp://ftp.freebsd.org/pub/FreeBSD/snapshots, install from that, and then use whatever method you prefer to update your source tree and rebuild kernel + world? Normally a custom install disc would be used if you wanted to install to multiple systems and either needed a non-standard kernel or wanted to deploy a specific set of software not provided by the standard sysinstall options.


----------



## linuxunix (Apr 23, 2012)

Guys,

I am following http://wiki.idefix.fechner.net/index.php/FreeBSD-Build_Own_CD for building a custom FreeBSD 9.0 Final Release for including custom-mfi driver. Will that link work? Please suggest.


----------

