New sysinstall in 6.1-PRE. make own release

Sam Leffler sam at errno.com
Fri Mar 24 16:57:40 UTC 2006


Dmitriy Kirhlarov wrote:
> Hi, all
> 
> I need building my own install server and want install my custom
> world, custom kernel and other in non-interactive mode.
> With 6.1-beta3 it work in mass (I not try install my kernel).
> With 6.1-beta4 and more fresh I can't get non-interactive
> installation.
> 
> 1. I can't find how to select timezone non-interactive.
> 2. I can't good variant for installing my own kernel (now I use
> command=/dist/my.custom.installer
> system
> 
> /dist/my.custom.installer -- simple script:
> ----------------
> #!/bin/sh
> 
> cd /dist/kernels
> ./install.sh OILSPACE1
> rm -rf /boot/kernel
> ln -s /boot/OILSPACE1 /boot/kernel
> ----------------
> but it's hack.

It seems simpler to just setup OILSPACE1 as the GENERIC kernel on your 
install iso so everything else would work as intended.  Doing that would 
require a small change to release/Makefile to make "GENERIC" a name you 
can set from the command line.

I'm not sure when the custom installer script gets run but be sure to 
look at install.c:installFixupKernel as it might explain some of your 
problems.  There was also a bug in the install.sh script that was fixed 
after BETA4.

In general the recent changes for packaging+installing kernels should 
simplify _adding_ custom kernels to an install but not replacing GENERIC 
and/or SMP kernel configurations.

> 
> 
> Also I have question about making my own release.
> 
> I can't understand, how to create my own loader.conf for pxeboot.
> Default not work -- machine panic with "no init" diagnose. Reason --
> need string in loader.conf:
> vfs.root.mountfrom="ufs:/dev/md0c"
> (I need some another strings for my own loader.conf)
> 
> For creating release I use command:
> make release BUILDNAME=6.1-PRERELEASE CHROOTDIR=/usr/release \
> CVSROOT=/home/ncvs EXTSRCDIR=/usr/src KERNELS=OILSPACE1 \
> LOCAL_PATCHES=/usr/src_local_patches NO_FLOPPIES=yes NO_ISOS=yes \
> NODOC=yes NOPORTS=yes RELEASETAG=RELENG_6 KERNELS_BASE="OILSPACE1 \
> GENERIC"

KERNELS_BASE was not intended to be overridden as sysinstall has builtin 
knowledge about "GENERIC" and "SMP".  KERNELS is documented as a knob to 
set to add additional kernel configurations to an iso.

> 
> My local patches -- only new unionfs currently.
> install.cfg I put in /usr/src/release directory.
> 
> Can anybody help me with auto-select timezone, right way for
> installing kernel and place in source tree for PXE loader.conf?

I don't know about the timezone setting.  Hopefully the above helps with 
setting up a custom kernel.  FWIW I used qemu to test the 
release+sysinstall changes (in case you aren't aware of it).

	Sam


More information about the freebsd-stable mailing list