diff --git a/en_US.ISO8859-1/books/handbook/Makefile b/en_US.ISO8859-1/books/handbook/Makefile index b27f0720db..4cbcbb1588 100644 --- a/en_US.ISO8859-1/books/handbook/Makefile +++ b/en_US.ISO8859-1/books/handbook/Makefile @@ -1,254 +1,255 @@ # # $FreeBSD$ # # Build the FreeBSD Handbook. # # ------------------------------------------------------------------------ # # Handbook-specific variables # # WITH_PGPKEYS The print version of the handbook only prints PGP # fingerprints by default. If you would like for the # entire key to be displayed, then set this variable. # This option has no affect on the HTML formats. # # Handbook-specific targets # # pgpkeyring This target will read the contents of # pgpkeys/chapter.sgml and will extract all of # the pgpkeys to standard out. This output can then # be redirected into a file and distributed as a # public keyring of FreeBSD developers that can # easily be imported into PGP/GPG. # # ------------------------------------------------------------------------ .PATH: ${.CURDIR}/../../share/sgml/glossary MAINTAINER= doc@FreeBSD.org DOC?= book FORMATS?= html-split HAS_INDEX= true USE_PS2PDF= yes INSTALL_COMPRESSED?= gz INSTALL_ONLY_COMPRESSED?= IMAGES_EN = advanced-networking/isdn-bus.eps IMAGES_EN+= advanced-networking/isdn-twisted-pair.eps IMAGES_EN+= advanced-networking/natd.eps IMAGES_EN+= advanced-networking/net-routing.pic IMAGES_EN+= advanced-networking/static-routes.pic IMAGES_EN+= geom/striping.pic IMAGES_EN+= install/adduser1.scr IMAGES_EN+= install/adduser2.scr IMAGES_EN+= install/adduser3.scr IMAGES_EN+= install/boot-mgr.scr IMAGES_EN+= install/console-saver1.scr IMAGES_EN+= install/console-saver2.scr IMAGES_EN+= install/console-saver3.scr IMAGES_EN+= install/console-saver4.scr IMAGES_EN+= install/desktop.scr IMAGES_EN+= install/disklabel-auto.scr IMAGES_EN+= install/disklabel-ed1.scr IMAGES_EN+= install/disklabel-ed2.scr IMAGES_EN+= install/disklabel-fs.scr IMAGES_EN+= install/disklabel-root1.scr IMAGES_EN+= install/disklabel-root2.scr IMAGES_EN+= install/disklabel-root3.scr IMAGES_EN+= install/disk-layout.eps IMAGES_EN+= install/dist-set.scr IMAGES_EN+= install/dist-set2.scr IMAGES_EN+= install/docmenu1.scr IMAGES_EN+= install/ed0-conf.scr IMAGES_EN+= install/ed0-conf2.scr IMAGES_EN+= install/edit-inetd-conf.scr IMAGES_EN+= install/fdisk-drive1.scr IMAGES_EN+= install/fdisk-drive2.scr IMAGES_EN+= install/fdisk-edit1.scr IMAGES_EN+= install/fdisk-edit2.scr IMAGES_EN+= install/ftp-anon1.scr IMAGES_EN+= install/ftp-anon2.scr IMAGES_EN+= install/hdwrconf.scr IMAGES_EN+= install/keymap.scr IMAGES_EN+= install/main1.scr IMAGES_EN+= install/mainexit.scr IMAGES_EN+= install/main-std.scr IMAGES_EN+= install/main-options.scr IMAGES_EN+= install/main-doc.scr IMAGES_EN+= install/main-keymap.scr IMAGES_EN+= install/media.scr IMAGES_EN+= install/mouse1.scr IMAGES_EN+= install/mouse2.scr IMAGES_EN+= install/mouse3.scr IMAGES_EN+= install/mouse4.scr IMAGES_EN+= install/mouse5.scr IMAGES_EN+= install/mouse6.scr IMAGES_EN+= install/mta-main.scr IMAGES_EN+= install/net-config-menu1.scr IMAGES_EN+= install/net-config-menu2.scr IMAGES_EN+= install/nfs-server-edit.scr IMAGES_EN+= install/ntp-config.scr IMAGES_EN+= install/options.scr IMAGES_EN+= install/pkg-cat.scr IMAGES_EN+= install/pkg-confirm.scr IMAGES_EN+= install/pkg-install.scr IMAGES_EN+= install/pkg-sel.scr IMAGES_EN+= install/probstart.scr IMAGES_EN+= install/routed.scr IMAGES_EN+= install/security.scr IMAGES_EN+= install/sysinstall-exit.scr IMAGES_EN+= install/timezone1.scr IMAGES_EN+= install/timezone2.scr IMAGES_EN+= install/timezone3.scr IMAGES_EN+= install/userconfig.scr IMAGES_EN+= install/userconfig2.scr IMAGES_EN+= install/xf86setup.scr IMAGES_EN+= mail/mutt1.scr IMAGES_EN+= mail/mutt2.scr IMAGES_EN+= mail/mutt3.scr IMAGES_EN+= mail/pine1.scr IMAGES_EN+= mail/pine2.scr IMAGES_EN+= mail/pine3.scr IMAGES_EN+= mail/pine4.scr IMAGES_EN+= mail/pine5.scr IMAGES_EN+= install/example-dir1.eps IMAGES_EN+= install/example-dir2.eps IMAGES_EN+= install/example-dir3.eps IMAGES_EN+= install/example-dir4.eps IMAGES_EN+= install/example-dir5.eps IMAGES_EN+= security/ipsec-network.pic IMAGES_EN+= security/ipsec-crypt-pkt.pic IMAGES_EN+= security/ipsec-encap-pkt.pic IMAGES_EN+= security/ipsec-out-pkt.pic IMAGES_EN+= vinum/vinum-concat.pic IMAGES_EN+= vinum/vinum-mirrored-vol.pic IMAGES_EN+= vinum/vinum-raid10-vol.pic IMAGES_EN+= vinum/vinum-raid5-org.pic IMAGES_EN+= vinum/vinum-simple-vol.pic IMAGES_EN+= vinum/vinum-striped-vol.pic IMAGES_EN+= vinum/vinum-striped.pic # Images from the cross-document image library IMAGES_LIB= callouts/1.png IMAGES_LIB+= callouts/2.png IMAGES_LIB+= callouts/3.png IMAGES_LIB+= callouts/4.png IMAGES_LIB+= callouts/5.png IMAGES_LIB+= callouts/6.png IMAGES_LIB+= callouts/7.png IMAGES_LIB+= callouts/8.png IMAGES_LIB+= callouts/9.png IMAGES_LIB+= callouts/10.png # # SRCS lists the individual SGML files that make up the document. Changes # to any of these files will force a rebuild # # SGML content SRCS+= audit/chapter.sgml SRCS+= book.sgml SRCS+= colophon.sgml SRCS+= freebsd-glossary.sgml SRCS+= advanced-networking/chapter.sgml SRCS+= basics/chapter.sgml SRCS+= bibliography/chapter.sgml SRCS+= boot/chapter.sgml SRCS+= config/chapter.sgml SRCS+= cutting-edge/chapter.sgml SRCS+= desktop/chapter.sgml SRCS+= disks/chapter.sgml SRCS+= eresources/chapter.sgml SRCS+= firewalls/chapter.sgml SRCS+= geom/chapter.sgml SRCS+= install/chapter.sgml SRCS+= introduction/chapter.sgml SRCS+= kernelconfig/chapter.sgml SRCS+= l10n/chapter.sgml SRCS+= linuxemu/chapter.sgml SRCS+= mac/chapter.sgml SRCS+= mail/chapter.sgml SRCS+= mirrors/chapter.sgml SRCS+= multimedia/chapter.sgml +SRCS+= nanobsd/chapter.sgml SRCS+= network-servers/chapter.sgml SRCS+= pgpkeys/chapter.sgml SRCS+= ports/chapter.sgml SRCS+= ppp-and-slip/chapter.sgml SRCS+= preface/preface.sgml SRCS+= printing/chapter.sgml SRCS+= security/chapter.sgml SRCS+= serialcomms/chapter.sgml SRCS+= users/chapter.sgml SRCS+= vinum/chapter.sgml SRCS+= x11/chapter.sgml # Entities SRCS+= chapters.ent SYMLINKS= ${DESTDIR} index.html handbook.html # Turn on all the chapters. CHAPTERS?= ${SRCS:M*chapter.sgml} SGMLFLAGS+= ${CHAPTERS:S/\/chapter.sgml//:S/^/-i chap./} SGMLFLAGS+= -i chap.freebsd-glossary pgpkeyring: pgpkeys/chapter.sgml @${JADE} -V nochunks ${OTHERFLAGS} ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC} # # Handbook-specific variables # .if defined(WITH_PGPKEYS) JADEFLAGS+= -V withpgpkeys .endif URL_RELPREFIX?= ../../../.. DOC_PREFIX?= ${.CURDIR}/../../.. # # rules generating lists of mirror site from XML database. # XMLDOCS= mirrors-ftp:::mirrors.sgml.ftp.inc.tmp \ mirrors-cvsup:::mirrors.sgml.cvsup.inc.tmp \ eresources:::eresources.sgml.www.inc.tmp DEPENDSET.DEFAULT= transtable mirror XSLT.DEFAULT= ${XSL_MIRRORS} XML.DEFAULT= ${XML_MIRRORS} NO_TIDY.DEFAULT= yes PARAMS.mirrors-ftp+= --param 'type' "'ftp'" \ --param 'proto' "'ftp'" \ --param 'target' "'handbook/mirrors/chapter.sgml'" PARAMS.mirrors-cvsup+= --param 'type' "'cvsup'" \ --param 'proto' "'cvsup'" \ --param 'target' "'handbook/mirrors/chapter.sgml'" PARAMS.eresources+= --param 'type' "'www'" \ --param 'proto' "'http'" \ --param 'target' "'handbook/eresources/chapter.sgml'" SRCS+= mirrors.sgml.ftp.inc \ mirrors.sgml.cvsup.inc \ eresources.sgml.www.inc CLEANFILES+= mirrors.sgml.ftp.inc mirrors.sgml.ftp.inc.tmp \ mirrors.sgml.cvsup.inc mirrors.sgml.cvsup.inc.tmp \ eresources.sgml.www.inc eresources.sgml.www.inc.tmp .include "${DOC_PREFIX}/share/mk/doc.project.mk" .for p in ftp cvsup mirrors.sgml.${p}.inc: mirrors.sgml.${p}.inc.tmp ${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>,;s,,,'\ < $@.tmp > $@ || (${RM} -f $@ && false) .endfor eresources.sgml.www.inc: eresources.sgml.www.inc.tmp ${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>,;s,,,'\ < $@.tmp > $@ || (${RM} -f $@ && false) diff --git a/en_US.ISO8859-1/books/handbook/book.sgml b/en_US.ISO8859-1/books/handbook/book.sgml index 8990443b02..65ebe21bbd 100644 --- a/en_US.ISO8859-1/books/handbook/book.sgml +++ b/en_US.ISO8859-1/books/handbook/book.sgml @@ -1,343 +1,345 @@ %books.ent; %chapters; %txtfiles; + %pgpkeys; ]> FreeBSD Handbook The FreeBSD Documentation Project February 1999 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 The FreeBSD Documentation Project &bookinfo.legalnotice; &tm-attrib.freebsd; &tm-attrib.3com; &tm-attrib.3ware; &tm-attrib.arm; &tm-attrib.adaptec; &tm-attrib.adobe; &tm-attrib.apple; &tm-attrib.corel; &tm-attrib.creative; &tm-attrib.cvsup; &tm-attrib.heidelberger; &tm-attrib.ibm; &tm-attrib.ieee; &tm-attrib.intel; &tm-attrib.intuit; &tm-attrib.linux; &tm-attrib.lsilogic; &tm-attrib.m-systems; &tm-attrib.macromedia; &tm-attrib.microsoft; &tm-attrib.netscape; &tm-attrib.nexthop; &tm-attrib.opengroup; &tm-attrib.oracle; &tm-attrib.powerquest; &tm-attrib.realnetworks; &tm-attrib.redhat; &tm-attrib.sap; &tm-attrib.sun; &tm-attrib.symantec; &tm-attrib.themathworks; &tm-attrib.thomson; &tm-attrib.usrobotics; &tm-attrib.vmware; &tm-attrib.waterloomaple; &tm-attrib.wolframresearch; &tm-attrib.xfree86; &tm-attrib.xiph; &tm-attrib.general; Welcome to FreeBSD! This handbook covers the installation and day to day use of FreeBSD &rel2.current;-RELEASE and FreeBSD &rel.current;-RELEASE. This manual is a work in progress and is the work of many individuals. Many sections do not yet exist and some of those that do exist need to be updated. If you are interested in helping with this project, send email to the &a.doc;. The latest version of this document is always available from the FreeBSD web site (previous versions of this handbook can be obtained from ). It may also be downloaded in a variety of formats and compression options from the FreeBSD FTP server or one of the numerous mirror sites. If you would prefer to have a hard copy of the handbook, you can purchase one at the FreeBSD Mall. You may also want to search the handbook. &chap.preface; Getting Started This part of the FreeBSD Handbook is for users and administrators who are new to FreeBSD. These chapters: Introduce you to FreeBSD. Guide you through the installation process. Teach you &unix; basics and fundamentals. Show you how to install the wealth of third party applications available for FreeBSD. Introduce you to X, the &unix; windowing system, and detail how to configure a desktop environment that makes you more productive. We have tried to keep the number of forward references in the text to a minimum so that you can read this section of the Handbook from front to back with the minimum page flipping required. Common Tasks Now that the basics have been covered, this part of the FreeBSD Handbook will discuss some frequently used features of FreeBSD. These chapters: Introduce you to popular and useful desktop applications: browsers, productivity tools, document viewers, etc. Introduce you to a number of multimedia tools available for FreeBSD. Explain the process of building a customized FreeBSD kernel, to enable extra functionality on your system. Describe the print system in detail, both for desktop and network-connected printer setups. Show you how to run Linux applications on your FreeBSD system. Some of these chapters recommend that you do some prior reading, and this is noted in the synopsis at the beginning of each chapter. System Administration The remaining chapters of the FreeBSD Handbook cover all aspects of FreeBSD system administration. Each chapter starts by describing what you will learn as a result of reading the chapter, and also details what you are expected to know before tackling the material. These chapters are designed to be read when you need the information. You do not have to read them in any particular order, nor do you need to read all of them before you can begin using FreeBSD. + Network Communication FreeBSD is one of the most widely deployed operating systems for high performance network servers. The chapters in this part cover: Serial communication PPP and PPP over Ethernet Electronic Mail Running Network Servers Firewalls Other Advanced Networking Topics These chapters are designed to be read when you need the information. You do not have to read them in any particular order, nor do you need to read all of them before you can begin using FreeBSD in a network environment. Appendices &chap.colophon; diff --git a/en_US.ISO8859-1/books/handbook/chapters.ent b/en_US.ISO8859-1/books/handbook/chapters.ent index e912b11ad4..d06de775b7 100644 --- a/en_US.ISO8859-1/books/handbook/chapters.ent +++ b/en_US.ISO8859-1/books/handbook/chapters.ent @@ -1,59 +1,60 @@ + diff --git a/en_US.ISO8859-1/books/handbook/nanobsd/Makefile b/en_US.ISO8859-1/books/handbook/nanobsd/Makefile new file mode 100644 index 0000000000..db8f4339d6 --- /dev/null +++ b/en_US.ISO8859-1/books/handbook/nanobsd/Makefile @@ -0,0 +1,15 @@ +# +# Build the Handbook with just the content from this chapter. +# +# $FreeBSD$ +# + +CHAPTERS= nanobsd/chapter.sgml + +VPATH= .. + +MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX} + +DOC_PREFIX?= ${.CURDIR}/../../../.. + +.include "../Makefile" diff --git a/en_US.ISO8859-1/books/handbook/nanobsd/chapter.sgml b/en_US.ISO8859-1/books/handbook/nanobsd/chapter.sgml new file mode 100644 index 0000000000..fbaffbb3d7 --- /dev/null +++ b/en_US.ISO8859-1/books/handbook/nanobsd/chapter.sgml @@ -0,0 +1,469 @@ + + + + + + + Daniel + Gerzo + Written by + + + + + + NanoBSD + + + Introduction to NanoBSD + + NanoBSD + + NanoBSD is a tool currently + developed by &a.phk;. It creates a &os; 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 &os; — Every single + application can be installed and used in a NanoBSD image, the same way as in + &os;. + + + + No missing functionality — If it is possible to do + something with &os;, 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 + &man.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. + + + + + + NanoBSD Howto + + + The design of NanoBSD + + Once the image is present on the medium, it is possible to + boot NanoBSD. The mass storage + medium is divided into three parts by default: + + + + Two image partitions: code#1 + and code#2. + + + + The configuration file partition, which can be mounted + under the /cfg directory at run + time. + + + + These partitions are normally mounted read-only. + + The /etc and + /var directories are + &man.md.4; (malloc) disks. + + The configuration file partition persists under the + /cfg directory. It + contains files for /etc + directory and is briefly mounted read-only right after the + system boot, therefore it is required to copy modified files + from /etc back to the + /cfg directory if changes + are expected to persist after the system restarts. + + + Making persistent changes to <filename>/etc/resolv.conf</filename> + + &prompt.root; vi /etc/resolv.conf +[...] +&prompt.root; mount /cfg +&prompt.root; cp /etc/resolv.conf /cfg +&prompt.root; umount /cfg + + + + The partition containing + /cfg should be mounted + only at boot time and while overriding the configuration + files. + + Keeping /cfg mounted + at all times is not a good idea, especially if the NanoBSD + system runs off a mass storage medium that may be adversely + affected by a large number of writes to the partition + (i.e. when the filesystem syncer flushes data to the system + disks). + + + + + Building a NanoBSD image + + A NanoBSD image is built using a + simple nanobsd.sh shell script, which can + be found in the + /usr/src/tools/tools/nanobsd + directory. This script creates an image, which can be copied on + the storage medium using the &man.dd.1; utility. + + The necessary commands to build a + NanoBSD image are: + + &prompt.root; cd /usr/src/tools/tools/nanobsd +&prompt.root; sh nanobsd.sh +&prompt.root; cd /usr/obj/nanobsd.full +&prompt.root; dd if=_.disk.full of=/dev/da0 bs=64k + + + + Change the current directory to the base directory of the + NanoBSD build script. + + + + Start the build process. + + + + Change the current directory to the place where the built + images are located. + + + + Install NanoBSD onto the + storage medium. + + + + + + Customizing a NanoBSD image + + This is probably the most important and most interesting + feature of NanoBSD. This is also + where you will be spending most of the time when + developing with NanoBSD. + + Invocation of the following command will force the + nanobsd.sh to read its configuration from + the myconf.nano file located in the current + directory: + + &prompt.root; sh nanobsd.sh -c myconf.nano + + Customization is done in two ways: + + + + Configuration options + + + + Custom functions + + + + + Configuration options + + With configuration settings, it is possible to configure options + passed to both the buildworld + and installworld stages of the + NanoBSD build process, as well as internal + options passed to the main build process of + NanoBSD. Through these options it is + possible to cut the system down, so it will fit on as little as + 64MB. You can use the configuration options to trim down &os; even + more, until it will consists of just the kernel and two or three + files in the userland. + + The configuration file consists of configuration options, + which override the default values. The most important + directives are: + + + + NANO_NAME — Name of build + (used to construct the workdir names). + + + + NANO_SRC — Path to the source + tree used to build the image. + + + + NANO_KERNEL — Name of kernel + configuration file used to build kernel. + + + + CONF_BUILD — Options passed + to the buildworld stage of the build. + + + + CONF_INSTALL — Options passed + to the installworld stage of the build. + + + + CONF_WORLD — Options passed to both + the buildworld and + the installworld stage of the build. + + + + FlashDevice — Defines what type of + media to use. Check the FlashDevice.sub + file for more details. + + + + + + Custom functions + + It is possible to fine-tune + NanoBSD using shell functions in + the configuration file. The following example illustrates the + basic model of custom functions: + + cust_foo () ( + echo "bar=topless" > \ + ${NANO_WORLDDIR}/etc/foo +) +customize_cmd cust_foo + + A more useful example of a customization function is the + following, which changes the default size of the + /etc directory + from 5MB to 30MB: + + cust_etc_size () ( + cd ${NANO_WORLDDIR}/conf + echo 30000 > default/etc/md_size +) +customize_cmd cust_etc_size + + There are a few default pre-defined customization functions + ready for use: + + + + cust_comconsole — Disables + &man.getty.8; on the VGA devices + (the /dev/ttyv* device nodes) and enables + the use of the COM1 serial port as the system console. + + + + cust_allow_ssh_root — Allow + root to login via &man.sshd.8;. + + + + cust_install_files — + Installs files from the nanobsd/Files + directory, which contains some useful scripts for system + administration. + + + + + + Configuration file example + + A complete example of a configuration file for building a + custom NanoBSD image can be: + + NANO_NAME=custom +NANO_SRC=/usr/src +NANO_KERNEL=MYKERNEL +NANO_IMAGES=2 + +CONF_BUILD=' +NO_KLDLOAD=YES +NO_NETGRAPH=YES +NO_PAM=YES +' + +CONF_INSTALL=' +NO_ACPI=YES +NO_BLUETOOTH=YES +NO_CVS=YES +NO_FORTRAN=YES +NO_HTML=YES +NO_LPR=YES +NO_MAN=YES +NO_SENDMAIL=YES +NO_SHAREDOCS=YES +NO_EXAMPLES=YES +NO_INSTALLLIB=YES +NO_CALENDAR=YES +NO_MISC=YES +NO_SHARE=YES +' + +CONF_WORLD=' +NO_BIND=YES +NO_MODULES=YES +NO_KERBEROS=YES +NO_GAMES=YES +NO_RESCUE=YES +NO_LOCALES=YES +NO_SYSCONS=YES +NO_INFO=YES +' + +FlashDevice SanDisk 1G + +cust_nobeastie() ( + touch ${NANO_WORLDDIR}/boot/loader.conf + echo "beastie_disable=\"YES\"" >> ${NANO_WORLDDIR}/boot/loader.conf +) + +customize_cmd cust_comconsole +customize_cmd cust_install_files +customize_cmd cust_allow_ssh_root +customize_cmd cust_nobeastie + + + + + Updating NanoBSD + + The update process of NanoBSD is + relatively simple: + + + + Build a new NanoBSD image, as + usual. + + + + Upload the new image into an unused partition of a + running NanoBSD appliance. + + The most important difference of this step from the + initial NanoBSD installation is that + now instead of using the _.disk.full file + (which contains an image of the entire disk), + the _.disk.image image is installed (which + contains an image of a single system partition). + + + + Reboot, and start the system from the newly installed + partition. + + + + If all goes well, the upgrade is finished. + + + + If anything goes wrong, reboot back into the previous + partition (which contains the old, working image), to restore system + functionality as fast as possible. Fix any problems of the new + build, and repeat the process. + + + + To install new image onto the running + NanoBSD system, it is possible to use + either the updatep1 or + updatep2 script located in the + /root directory, depending + from which partition is running the current system. + + According to which services are available on host serving + new NanoBSD image and what type of + transfer is prefered, it is possible to examine one of these + three ways: + + + Using &man.ftp.1; + + If the transfer speed is in first place, use this + example: + + &prompt.root; ftp myhost +get _.disk.image "| sh updatep1" + + + + Using &man.ssh.1; + + If a secure transfer is prefered, consider using this + example: + + &prompt.root; ssh myhost cat _.disk.image.gz | zcat | sh updatep1 + + + + Using &man.nc.1; + + Try this example if the remote host is not running neither + &man.ftp.1; or &man.sshd.8; service: + + + + At first, open a TCP listener on host serving the + image and make it send the image to client: + + myhost&prompt.root; nc -l 2222 < _.disk.image + + + Make sure that the used port is not blocked to + receive incomming connections from + NanoBSD host by + firewall. + + + + Connect to the host serving new image and execute + updatep1 sript: + + &prompt.root; nc myhost 2222 | sh updatep1 + + + + + +