How To Setup Another Bootdisk

Hi,

imagine you install FreeBSD 13, but your HBA/SAS/SATA-Controler cannot install its BIOS, so booting from that device is impossible as you will witness.

But you can setup another disk to be new boot disk booting your installation.

This is not working with encrypted zroot pool!

Assuming you have FreeBSD on a mirrored disk setup, da0 da1.
Your new boot disk might be ada0.

Use live system after FreeBSD installation (bsdinstall) or just boot some live system.

Switch to root.

Enter the commands to set up the new boot disk:

fdisk -BI /dev/ada0
bsdlabel -B -w ada0s1
newfs -U -O1 /dev/ada0s1a

Install boot loader:
boot0cfg -v -B -t1 ada0

Mount your installation (if it is not already mounted) and mount your new boot disk:
mount /dev/ada0s1a /mnt

Assuming that your installation is mounted to /live copy the boot directory on the new boot disk:
cp -r /live/boot /mnt

Make your kernel mount your pool that is on da0 and da1:
echo 'vfs.root.mountfrom="zfs:zroot:/ROOT/default"' >> /mnt/boot/loader.conf

umount /mnt

Do not forget to switch to your new boot device in your BIOS after reboot.

So, what do you have in the end? Now, you have a new thin boot device, containing essential stuff to boot the system. Footprint is approx. 80MB.

Enjoy. :beer::cool:👍
 
Back
Top