booting kernel.old uses /boot/modules, not modules.old
YONETANI Tomokazu
qhwt+dfly at les.ath.cx
Wed Sep 1 05:31:32 PDT 2010
On Wed, Sep 01, 2010 at 01:03:04AM -0700, Matthew Dillon wrote:
>
> :go to
> : ${DESTDIR}/boot/kernel.${DESTLABEL} and
> : ${DESTDIR}/boot/modules.${DESTLABEL},
> :respectively. I believe that the idea was to be able to specify this
> :${DESTLABEL} in the boot loader, for example,
> :
> : OK boot ${DESTLABEL} # or maybe .${DESTLABEL}
> :
> :and $kernel and $module_path are set up to point to those locations.
> :I'm not sure how to do this in Forth, though.
> :
> :/boot/<directory> is fine as well, but it could be useful if we have
> :some make variables for installkernel target to point to where old
> :kernel/modules should go or where new kernel/modules should be installed.
>
> I managed to the whole thing in one day, including ripping out the
> 4th loader and putting in a saner C-based menu system.
That's cool!
> Not only can we now boot from directories/{kernel+modules}, but
> I got directories/loader.conf localization working so it is possible
> to have different root mounts, and thus possible to boot 32 or 64 bits
> (though of course root, bins, usr bins, etc have to be different),
> as well as keeping around backup kernels+modules and such.
If you try to install a module from e.g. /sys/dev/acpica5, the KLD goes
to right under /boot, is this intended? $modules_path contains /boot,
so KLDs installed that way should just work, but it also affects the
traditional method:
$ cd /sys/config
$ config -d /path/to/writable MYKERNEL
$ make depend && make
$ sudo make install
This will install the kernel to /boot/kernel/kernel but all KLDs under /boot.
This is because KLDs are now installed to ${DESTKERNDIR}, which defaults to
/boot/${KERNEL}, but no .mk files included from within a module directory
supplies the default value for ${KERNEL}.
More information about the Bugs
mailing list