On Fri, Oct 12, 2001 at 12:03:07PM +0200, Jean-Francois Dockes wrote: > > I recently configured a diskless FreeBSD machine, and I found the > handbook section to be outdated to the point of irrelevance. > > I wrote an updated version, which I hereby submit for review, as suggested > by the documentation project 'Submitting documentation' section.
Great work! Your document seems very useful, although I've never used diskless booting. The attached patch contains fixes for some of the English, a minor stylistic change (linking directly to a man page) and a few examples of removing unecessary space within tags. The last point is something you've done throughout the document, which causes it to render peculiarly. For example, you've got space after a word before a full-stop in several places. The end of the patch contains a few examples of this. Hopefully your work can be incorporated into the Handbook soon. Thanks, Tom
--- diskless-chapter.sgml.orig Fri Oct 12 12:33:02 2001 +++ diskless-chapter.sgml Fri Oct 12 12:18:26 2001 @@ -1109,8 +1109,8 @@ <para>A FreeBSD machine can boot over the network and operate without a local disk, using file systems mounted from an NFS server. No system - modification is necessary, beyond standard configuration files. - Such a system is easy to set up because all the necessary elements + modification is necessary, beyond standard configuration files, and + such a system is easy to set up because all the necessary elements are readily available: </para> <itemizedlist> <listitem> @@ -1156,15 +1156,15 @@ <para>There are many ways to set up diskless workstations. Many elements are involved, and most can be customized to suit local taste. The following will describe the setup of a complete system, - emphasising simplicity and compatibility with the + with an emphasis on simplicity and compatibility with the standard FreeBSD startup scripts. The system described has the following characteristics: </para> <itemizedlist> <listitem> <para>The diskless workstations use a shared - read-only <filename>root</filename> filesystem, and a shared - read-only <filename>/usr</filename>. </para> + readonly <filename>root</filename> filesystem, and a shared + readonly <filename>/usr</filename>. </para> <para>The <filename>root</filename> file system is a copy of a standard FreeBSD root (typically the server's), with some configuration files overriden by ones specific to diskless @@ -1179,9 +1179,9 @@ </listitem> </itemizedlist> - <caution><para>As described, this system is insecure. It should - live in a protected area of a network, and be untrusted by - other hosts.</para> + <caution><para>The security of the whole system (server+workstations) + is probably very bad. It should live in a protected area + of a network, and be untrusted by other hosts.</para> </caution> @@ -1191,8 +1191,8 @@ <sect3> <title>Configuring DHCP/BOOTP</title> - <para>There are two protocols that are commonly used to boot a - workstation that retrieves its configuration over the network: BOOTP + <para>There are two main standard protocols used by a booting + workstation to retrieve its configuration over the network: BOOTP and DHCP. They are used at several points in the workstation bootstrap: </para> <itemizedlist> @@ -1206,7 +1206,7 @@ </itemizedlist> <para>It is possible to configure a system to use only BOOTP. - The &man.bootpd.8; server program is included in the + The <command>bootpd</command> server program is included in the base FreeBSD system.</para> <para>However, DHCP has a number of advantages over BOOTP (nicer @@ -1222,8 +1222,8 @@ <para>The <application>isc-dhcp</application> server can answer both BOOTP and DHCP requests.</para> - <para>As of release 4.4, <application>isc-dhcp</application> is not part of the base - system. You will first need to install the + <para><application>isc-dhcp</application> is not part of the base + system (as of release 4.4). You will first need to install the <filename>/usr/ports/net/isc-dhcp3</filename> port or the corresponding package. Please refer to <xref linkend="ports"> for general information about ports and packages.</para> @@ -1324,11 +1324,12 @@ <title>Preparing a boot program with <application>Etherboot</application></title> - <para><ulink url="http://etherboot.sourceforge.net">Etherboot's Web - site</ulink> contains + <para>You can find extensive <ulink url="http://etherboot.sourceforge.net/doc/html/userman.html"> - extensive documentation </ulink> mainly intended for Linux - systems, but nonetheless containing useful information. The following + <application> etherboot </application> documentation </ulink> + on its <ulink url="http://etherboot.sourceforge.net"> home site + </ulink>. This documentation is mainly intended for Linux + systems, but contains a lot of useful explanations. The following will just outline how you would use <application>etherboot</application> on a FreeBSD system.</para> @@ -1488,9 +1489,9 @@ conf/31200 </ulink> for the small adjustment needed in <filename> clone_root </filename>. Also see PR - <ulink url="http://www.freebsd.org/cgi/query-pr.cgi?pr=29870">conf/29870</ulink> - about a small adjustment needed in - <filename>/etc/rc.diskless2</filename>. + <ulink url="http://www.freebsd.org/cgi/query-pr.cgi?pr=29870"> + conf/29870 </ulink> about a small adjustment needed in + <filename> /etc/rc.diskless2 </filename>. </para> </sect3> @@ -1498,8 +1499,8 @@ <title>Configuring swap</title> <para>If needed, it is possible to do swapping over NFS, to a file - on the server. The exact <filename>bootptab /filename> or - <filename>dhcpd.conf</filename> options are a little mysterious + on the server. The exact <filename> bootptab </filename> or + <filename> dhcpd.conf </filename> options are a little mysterious and poorly documented. Anyway, here is what worked for me, using isc-dhcp 3.0rc11.</para> <procedure> @@ -1558,7 +1559,7 @@ <sect4> - <title>Running with a read-only <filename>/usr</filename></title + <title>Running with a readonly <filename>/usr</filename></title <para>If the diskless workstation is configured to run X, you will have to adjust the xdm configuration file, which puts the error log on <filename>/usr</filename> by default.</para>