How to create a FreeBSD 8.0 boot CD without boot.flp?
Pierre-Luc Drouin
pldrouin at pldrouin.net
Wed Feb 10 22:23:30 UTC 2010
Manolis Kiagias wrote:
> On 11/02/2010 12:08 π.μ., Pierre-Luc Drouin wrote:
>
>> What I am trying to do is basically to install FreeBSD 8.0 on a CD. I
>> followed these instructions to install FreeBSD on a USB stick:
>>
>> http://typo.submonkey.net/articles/2006/04/13/installing-freebsd-on-usb-stick-episode-2
>>
>>
>> minus the fdisk/bsdlabel/newfs part . I just set up rc.conf to
>> configure the ethernet interface with DHCP and load sshd
>>
>> then I am now creating an iso image with the boot image. So at the
>> root of the CD I will have the boot directory containing the kernel
>> subdirectory.
>>
>> I figured out about the boot image error from mkisofs. I had to copy
>> cdboot into the actual boot directory for the image and the path
>> specified by the -b option is relative to the root directory of the CD...
>>
>> So should this work according to you?
>>
>> Thanks!
>>
>>
>
> It is going to be an interesting experiment. The official install
> CD/DVDs boot from boot/kernel on the CD but the root filesystem used is
> actually in an mfs (memory disk). Also it executes sysinstall instead of
> init at the end of the boot sequence. I suppose you can mount the root
> filesystem from CD as read-only but you will have to handle things like
> /var and /usr and you will probably need some writing capability. I am
> sure this can be done in more than a few ways though I've never
> researched this myself.
>
yes I did some checks and it seems that sysinstall is loaded via the
mfsroot instruction in loader.conf that somehow loads /stand/boot_crunch
in the mfsroot image. If I change the content of loader.conf I think it
should behave like a regular installation (?). I have also written a
special fstab:
# Device Mountpoint FStype Options Dump
Pass#
/dev/iso9660/FreeBSD_Custom / cd9660 ro,noatime 0 0
md /etc_tmp mfs rw,-s4M,nosuid,noatime
0 0
/etc_tmp /etc nullfs rw 0 0
md /tmp mfs rw,-s16M,nosuid,noatime
0 0
md /var/run mfs rw,-s4M,nosuid,noatime
0 0
md /var/log mfs rw,-s16M,nosuid,noatime
0 0
/proc /proc procfs rw,noauto 0 0
/tmp /var/tmp nullfs rw 0 0
As you can see I do not have any hardcoded device name. I use the CD
label, which is used by geom_label to create a device file in
/dev/iso9660/. So in order to have geom_label loaded as early as
possible I have added geom_label_load="YES" in loader.conf. I hope this
will work...
More information about the freebsd-questions
mailing list