Introduction to NanoBSD

DanielGerzo

This document provides information about the
NanoBSD tools, which can be used to
create FreeBSD system images for embedded applications, suitable
for use on a Compact Flash card (or other mass storage
medium).

1.Â Introduction to NanoBSD

NanoBSD is a tool currently
developed by Poul-Henning Kamp <phk@FreeBSD.org>. It creates a FreeBSD system image for
embedded applications, suitable for use on a Compact Flash card
(or other mass storage medium).

It can be used to build specialized install images, designed
for easy installation and maintenance of systems commonly called
“computer appliances”. Computer appliances have
their hardware and software bundled in the product, which means
all applications are pre-installed. The appliance is plugged
into an existing network and can begin working (almost)
immediately.

The features of NanoBSD
include:

Ports and packages work as in FreeBSD — Every single
application can be installed and used in a
NanoBSD image, the same way as in
FreeBSD.

No missing functionality — If it is possible to do
something with FreeBSD, it is possible to do the same thing
with NanoBSD, unless the specific
feature or features were explicitly removed from the
NanoBSD image when it was
created.

Everything is read-only at run-time — It is safe
to pull the power-plug. There is no necessity to run
fsck(8) after a non-graceful shutdown of the
system.

Easy to build and customize — Making use of just
one shell script and one configuration file it is possible
to build reduced and customized images satisfying any
arbitrary set of requirements.