I'm trying to build and install a custom kernel for a machine with very limited resources (a Soekris net4501). It has no floppy, cdrom, HDD, keyboard, mouse, or VGA. It does have serial, ethernet, the capability to boot using PXE, and a compact flash that acts like an IDE drive. I'm switching it from OpenBSD to FreeBSD because I need to add firewire support, but I'm new to FreeBSD so this is my first time building a custom kernel.
Using the instructions here along with a FreeBSD installation created using VMWare on a Mac, I have been able to compile a bootloader and use it to install a GENERIC 8.1 kernel onto the target machine from an nfs mount of an exploded disk 1 ISO image. The GENERIC kernel mostly works on the target device, but it still needs a couple drivers and I'd also like to recover some memory by removing unneeded drivers for hardware that isn't ever going to be on this box. Between section 8.6 of the handbook, assorted man pages, dmesg, devinfo and pciconf on the GENERIC install, I think I've got a pretty good inventory of what to keep.
Since the target device has such limited resources, I need to build the kernel on the virtual FreeBSD image then move the binary files. After a few tries, the "make buildkernel [CONFIG]" step completes with no errors, but all the instructions for building a custom kernel seem to end with "make installkernel [CONFIG]" and a reboot. Since the "make buildkernel" is not on the target machine, I need to perform the kernel installation manually.
What do I need to move besides /boot/kernel/kernel? Anything?
Using the instructions here along with a FreeBSD installation created using VMWare on a Mac, I have been able to compile a bootloader and use it to install a GENERIC 8.1 kernel onto the target machine from an nfs mount of an exploded disk 1 ISO image. The GENERIC kernel mostly works on the target device, but it still needs a couple drivers and I'd also like to recover some memory by removing unneeded drivers for hardware that isn't ever going to be on this box. Between section 8.6 of the handbook, assorted man pages, dmesg, devinfo and pciconf on the GENERIC install, I think I've got a pretty good inventory of what to keep.
Since the target device has such limited resources, I need to build the kernel on the virtual FreeBSD image then move the binary files. After a few tries, the "make buildkernel [CONFIG]" step completes with no errors, but all the instructions for building a custom kernel seem to end with "make installkernel [CONFIG]" and a reboot. Since the "make buildkernel" is not on the target machine, I need to perform the kernel installation manually.
What do I need to move besides /boot/kernel/kernel? Anything?