Optimizing "make release"

Eric Anderson anderson at freebsd.org
Tue Sep 25 18:01:19 PDT 2007


Erik Cederstrand wrote:
> Brooks Davis wrote:
>> On Tue, Sep 25, 2007 at 08:59:44AM +0200, Erik Cederstrand wrote:
>>>  Brooks Davis wrote:
>>>> On Mon, Sep 24, 2007 at 01:34:34PM +0200, Erik Cederstrand wrote:
>>>  >> [...]
>>>>>  If I ignore documentation distfiles (will this affect benchmarks 
>>>>> in any  way?), AFAICT the only distribution sets I need are base, 
>>>>> proflibs, kernels  and (maybe) lib32. Is there a way to get "make 
>>>>> release" to do just that? I'm  open to other suggestions, of course.
>>>> To just create a working image you can just do:
>>>> make buildworld
>>>> make buildkernel
>>>> make DESTDIR=/target/directory installworld
>>>> make DESTDIR=/target/directory distribution
>>>> make DESTDIR=/target/directory installkernel
>>>  This doesn't seem to create the distribution sets I want. It just 
>>> creates  the hierarchy of files which are eventually going to be on 
>>> the hard-disk on  the clients. I may be wrong, but it seems that to 
>>> be able to use sysinstall  to install the clients, I need to create 
>>> distribution sets like the ones  supplied here:
>>>
>>>  ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/6.2-RELEASE/
>>
>> Ah, I didn't realized you wanted to do that.  If you do want to use 
>> sysinstall,
>> then you do indeed to use make release.  The various NO* options 
>> documented in
>> the release(7) manpage and the makefile should be useful here.
> 
> Ok, thanks.
> 
>> That said, I can't imagine why you'd want sysinstall to be involved in
>> a automated benchmark system.
> 
> Incompetence is probably the best answer :-)
> 
>> Doing what it does using a hand rolled script is way easier then 
>> trying work with it.
> 
> Ok, so are you suggesting something like this?:
> 
> 1. make world, distribution, kernel
> 2. make any necessary changes to config files
> 3. cram the result onto a custom mfs (or make it available somewhere)
> 4. boot using the custom mfs as root device
> 5. point init_path in loader.conf to my own script which:
>  5a. prepares (bsdlabel, newfs etc.) the hard-disk
>  5b. mounts the hard-disk and copies the distribution files over
> 5. reboot
> 6. install any necessary packages
> 7. run benchmarks

It would probably be easier if you just NFS booted into a small FreeBSD 
installation, and then had a script that set up the drive, and ran an 
installworld/kernel/etc against it.  No need to use mfs I don't think.

This kind of sounds like the automated performance measurement project 
that has been mentioned here (or was it -current?) a few times, once 
somewhat recently.

Eric




More information about the freebsd-performance mailing list