Making Customized Bootable FreeBSD
Kevin Kinsey
kdk at daleco.biz
Mon Mar 26 19:32:43 UTC 2007
Olivier Regnier wrote:
> Hello,
>
> After 3 hours, i made my bootable FreeBSD CD/Floppies. Actually, i
> finished my install.cfg but i have a problem because i don't understand
> the final step :
>
I'm not sure I do either, but I'm willing to attempt to help. Bearing
in mind IANAE, I *think* this is what you're seeing:
> # mkdir /img
> # cd $CHROOTDIR/R/cdrom/disk1/floppies
Should be self-explanatory; $CHROOTDIR should be
set in the environment if you are doing "make release"....
> /* Get mfsroot.gz from mfsroot.flp */
> # vnconfig /dev/vn0c mfsroot.flp
> # mount /dev/vn0c /img
> # cp /img/mfsroot.gz .
> # umount /img
> # vnconfig -u /dev/vn0c
Create a "memory disk" from the floppy image "mfsroot.flp",
mount it, copy the "mfsroot.gz" to the current working dir,
unmount it and destroy the "memory disk".
> /* Unzip mfsroot.gz to get mfsroot */
> # gunzip mfsroot.gz
Obvious, I hope.
> /* Put your config file in mfsroot */
> # vnconfig /dev/vn0c mfsroot
> # mount /dev/vn0c /img
> # cp install.cfg /img/.
> # umount /img
> # vnconfig -u /dev/vn0c
> /* (If you 'gzip mfsroot' here, you can use that for bootable
> mfsroot.flp for floppies) */
>
Mount the unzipped "mfsroot" file in a memory disk,
cp your install.cfg to this memory disk, unmount it
and destroy the memory disk.
(Note of concern ... I don't see this getting moved
back to anywhere were it will do some good before moving
to the next step. Where did you get these instructions?)
> /* Put mfsroot in kernel so that it will read it when boot time */
> # vnconfig /dev/vn0c boot.flp
> # mount /dev/vn0c /img
> # cp /img/kernel.gz .
> # gunzip kernel.gz
> # write_mfs_in_kernel -f kernel mfsroot
> /* write_mfs_in_kernel can be found at /usr/src/release. Compile it if
> you haven't. */
>
> # gzip kernel
> # cp kernel.gz /img/.
> # umount /img
> # vnconfig -u /dev/vn0c
>
Mount the "boot.flp" image in a memory disk, grab the kernel,
unzip it, add the altered "mfsroot" to the kernel using the
write_mfs_in_kernel program/script, zip up the new kernel,
copy it to the image and unmount said image.
I'm concerned though about this documentation; for one thing
vnconfig is deprecated (except for 4.X releases, which are, uh,
deprecated<?>), and "write_mfs_in_kernel" was "nuked" from CVS
**8 years ago** by the venerable jkh himself, so I have to
wonder, "Where did this 'how-to' come from?"
You may need someone more familiar with the modern RELENG
system to help with this....
Kevin Kinsey
--
Fortune favors the lucky.
More information about the freebsd-questions
mailing list