Installing to SSD with NanoBSD image

  • I finally got my SSD for my pfSense box, but in the interest of longevity would like to use the embedded/NanoBSD image (with VGA support) so most writes just occur in the generous 2GB RAM I have in the machine.

    The SSD in question is a 16GB drive, but the NanoBSD images only go up to 4GB… I read somewhere that the NanoBSD image is really only as big as it needs to be for the OS (or something to that effect) since most writes are to the filesystems in RAM, so my questions are thus:

    • Is there any functional benefit to using a larger image (i.e. 4GB) over a smaller image (i.e. 1GB)?

    • Is it possible (and if so, is it actually beneficial) to resize one of the NanoBSD images to 16GB?

    • If I just used a smaller image (i.e. the 1GB image), would this provide additional reliability in the form of the SSD's wear-leveling algorithm having more "spare room" to write to?

    • If the above answers are "yes", "yes and yes", and "no", how would I go about doing this?  Are the instructions in this thread still relevant? (given that the last post was in mid-2007)

  • Netgate Administrator

    1. Almost none. If you're planning to install every package you can then there will be more room for that. I've never come close to filling the 1GB image. I always use the 1GB image simply because it writes to my slow CF cards quicker.
    2. It is possible but I've never tried. This guy seems to be building 8 and 16GB images.
    3. I'm fairly sure the wear levelling algorithm can function whether or not the drive is completely in use. How does the drive firmware know which parts of the drive you have partitioned? It doesn't it only knows which bits are written often and which are not. Clearly having a larger drive gives it more bits to work with.
    If you are running Nano then you don't have to worry anyway.


  • Great, thanks for the info!  I don't plan on using many (if any) packages, so I'll probably stick to the 1GB image.  Is there a human-readable, comprehensive list of packages available for pfSense anywhere?  I found this, but my brain does not make for an efficient XML parser :P

    Also, are all packages compatible with NanoBSD, or is there any means of determining compatibility?

    (sorry for the segue, but I figure this is still at least tangentially on-topic)

  • Some packages do not work with NanoBSD.

  • Netgate Administrator

    Learn to look through the code, matrix style!  :P

    The config file to look at is:

    Any package containing <noembedded>true</noembedded> can't be run on Nano. However some that can, Squid for example, are very restricted.

    Packages that can't run on nano/embedded look to be:
    Light Squid


Log in to reply