Installing nanobsd images on real hard drive setups?



  • I am trying to work on fixing at least one package so it will run on nanobsd.  I don't have a spare HW, so I decided to try to do this in a VM (virtualbox).  My approach: do a minimal freebsd7.2 install on HD #1.  Boot it and ftp the nanobsd.img file.  'dd' the nanobsd.img to the second hard drive.  Power off the VM.  Remove the freebsd7.2 virtual HD.  Boot the VM.  Issues I had to resolve: remove the '-h' from /etc/boot.config (done), edit /boot/loader.conf and add 'console=vidconsole' (done).  I still needed (apparently) to have a serial port visible to the VM even if it doesn't use it (no big deal).  I can now see pfsense start to boot.  It gets to the point where it says (from memory) "booting /boot/kernel/kernel" or whatever.  The next line which would otherwise have the spinning '-', shows one '-' and then nothing.  Any ideas what else I am missing here?


  • Rebel Alliance Developer Netgate

    Seems it is still sending that output to serial, in that case. That's about when it makes the switch.



  • that's what i'm thinking.  i guess i need to also tweak the ttys file or whatever to cause it to spawn a console on vidconsole too.


  • Rebel Alliance Developer Netgate

    If you have looked at the builder code, there is a profile out there for building a VGA enabled NanoBSD image that might have some pointers.

    It may actually need a different kernel.



  • ugh, this is getting complicated :(



  • what i saw was going on: i interrupted the boot to get into the bootloader and saw that currdev was disk1s1a, even though there was only one disk.  i think this might have been confusion due to the virtualbox emulation (it seemed to think there was a floppy, so setting currdev to disk0s1a resulted in inability to load the kernel.)  i tried an experiment, and booted the livefs cd, mounted the pfsense nano filesystem, renamed /boot/kernel to /boot/kernel.nano and copied over /boot/kernel from the livefs and it came up.  some warnings about ipsec OIDs but i don't think i care about that.  on to the real work now :)



  • One oddity I noticed:  I do not get prompted for anything related to which slice to boot from (e.g. it goes straight to boot process.)


  • Rebel Alliance Developer Netgate

    Nano uses geom labels to find the slices to mount, not hardcoded devices. No need to update fstab in that case to get it to boot.

    For example, instead of using /dev/ad0s3 for the config slice, it's /dev/ufs/cf



  • yeah, i noticed that.  i'm not sure how that explains my not being prompted for the slice though?  it did prompt me (if i recall) until i replaced the /boot/kernel directory.  oh well, i don't much care at this point, i now have the packages git repo and a booting nano install in virtualbox, so i can actually get some work done :)


Log in to reply