Source string Read only

(itstool) path: listitem/para
192/1920
Context English State
_ translator-credits
Introduction to NanoBSD
<personname><firstname>Daniel</firstname><surname>Gerzo</surname></personname>
<year>2006</year> <holder>The FreeBSD Documentation Project</holder>
FreeBSD is a registered trademark of the FreeBSD Foundation.
Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this document, and the FreeBSD Project was aware of the trademark claim, the designations have been followed by the <quote>™</quote> or the <quote>®</quote> symbol.
$FreeBSD: head/en_US.ISO8859-1/articles/nanobsd/article.xml 52722 2018-12-24 19:45:39Z crees $
This document provides information about the <application>NanoBSD</application> 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).
<primary>NanoBSD</primary>
<application>NanoBSD</application> is a tool currently developed by Poul-Henning Kamp <email>phk@FreeBSD.org</email>. 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 <quote>computer appliances</quote>. 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 <application>NanoBSD</application> include:
Ports and packages work as in FreeBSD — Every single application can be installed and used in a <application>NanoBSD</application> 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 <application>NanoBSD</application>, unless the specific feature or features were explicitly removed from the <application>NanoBSD</application> 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 <citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> 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.
NanoBSD Howto
The Design of NanoBSD
Once the image is present on the medium, it is possible to boot <application>NanoBSD</application>. The mass storage medium is divided into three parts by default:
Two image partitions: <literal>code#1</literal> and <literal>code#2</literal>.
The configuration file partition, which can be mounted under the <filename>/cfg</filename> directory at run time.
These partitions are normally mounted read-only.
The <filename>/etc</filename> and <filename>/var</filename> directories are <citerefentry><refentrytitle>md</refentrytitle><manvolnum>4</manvolnum></citerefentry> (malloc) disks.
The configuration file partition persists under the <filename>/cfg</filename> directory. It contains files for <filename>/etc</filename> directory and is briefly mounted read-only right after the system boot, therefore it is required to copy modified files from <filename>/etc</filename> back to the <filename>/cfg</filename> directory if changes are expected to persist after the system restarts.
Making Persistent Changes to <filename>/etc/resolv.conf</filename>
<prompt>#</prompt> <userinput>vi /etc/resolv.conf</userinput>
[...]
<prompt>#</prompt> <userinput>mount /cfg</userinput>
<prompt>#</prompt> <userinput>cp /etc/resolv.conf /cfg</userinput>
<prompt>#</prompt> <userinput>umount /cfg</userinput>
The partition containing <filename>/cfg</filename> should be mounted only at boot time and while overriding the configuration files.
Keeping <filename>/cfg</filename> mounted at all times is not a good idea, especially if the <application>NanoBSD</application> system runs off a mass storage medium that may be adversely affected by a large number of writes to the partition (like when the filesystem syncer flushes data to the system disks).
Building a NanoBSD Image
A <application>NanoBSD</application> image is built using a simple <filename>nanobsd.sh</filename> shell script, which can be found in the <filename><replaceable>/usr</replaceable>/src/tools/tools/nanobsd</filename> directory. This script creates an image, which can be copied on the storage medium using the <citerefentry><refentrytitle>dd</refentrytitle><manvolnum>1</manvolnum></citerefentry> utility.
The necessary commands to build a <application>NanoBSD</application> image are:

Loading…

No matching activity found.

Browse all component changes

Glossary

English English
No related strings found in the glossary.

Source information

Source string comment
(itstool) path: listitem/para
Flags
read-only
Source string location
article.translate.xml:85
String age
a year ago
Source string age
a year ago
Translation file
articles/nanobsd.pot, string 16