kernel replacement in installation media

Jason C. Wells jcw at
Sat Sep 11 03:56:39 UTC 2010

On 09/10/10 20:01, CyberLeo Kitsana wrote:
> On 09/10/2010 07:57 PM, Samuel Martín Moro wrote:
>> Hi,
>> ...
>> The thing is, it only have a 128M flash disk (seen as /dev/da0)
>> GENERIC needs almost 250M.
> I have run into something similar, while building a ZFS install to run
> on an Intel SS4200EHW NAS device. Utilizing a series of scripts I have
> developed[1], I was able to compact an entire functional FreeBSD system
> into 4.6MB /boot and 84MB root with mkisofs and mkuzip, without
> permanently tying up a bunch of the machine's limited RAM with an MFS,
> and with acceptable performance despite the IDE channel's speed limit of
> 1.6MB/sec. Plus, boot and root are read-only, so the CompactFlash card
> won't wear out prematurely.
> You can make use of src.conf(5) while building world and kernel to
> eliminate a lot of unnecessary userland components, and MODULES_OVERRIDE
> and WITHOUT_MODULES to control what modules get built, as the kernel
> build process will build all modules regardless of what might be in your
> kernel config. Be prepared to perform lots of testing, though, as a
> missed critical dependency can appear to succeed, but leave something
> else broken.
I do believe you can omit the *.symbols files.  I plan to try it 
myself.  Would someone please confirm this?

And you might look at resurrecting the picobsd method of crunching 
binaries into one single statically linked binary with hard links of 
differing file names if you want to get really small.  I used to do this 
when compactflash was only 128MiB.

Jason C. Wells

More information about the freebsd-questions mailing list