custom kernel, make buildkernel and then?

Erik Norgaard norgaard at
Wed Oct 11 02:38:34 PDT 2006

Zbigniew Szalbot wrote:

> I have in the past used supfile with ports-all option and couldn't build 
> a custom kernel. Yesterday it dawned on me that I need sources for that, 
> not ports. So I ran cvsup with src-all option. Now, I followed these steps:
> # cd /usr/src/sys/i386/conf
> # mkdir /root/kernels
> # cp GENERIC /root/kernels/LISTS
> # ln -s /root/kernels/LISTS

The target directory for the build is /usr/obj, so in 
/usr/obj/usr/src/sys you can see what kernels have been built.

Now BEWARE! One thing is the filename of the kernel config, another 
thing is the string set in the "ident" parameter in the config file.

To stay sane, always change it to the same as the config file name. The 
ident is what the kernel reports it self to be, and a custom kernel 
should not claim to be a GENERIC kernel. And this may also determine 
where the kernel is built.

So, if you didn't change the ident, then you may find you have a 
non-generic GENERIC kernel and

   # make installkernel

will install that. But don't! Change the ident, rebuild your kernel and 
install the custom kernel.

This is important, because if you later report a bug you are asked to 
submit the output of 'uname -a' and developers will think you are using 
a GENERIC kernel when in fact you are not.

Cheers, Erik

Ph: +34.666334818                      web:
X.509 Certificate:
Key ID: 69:79:B8:2C:E3:8F:E7:BE:5D:C3:C3:B1:74:62:B8:3F:9F:1F:69:B9

More information about the freebsd-questions mailing list