Merged in the following changes. This was done by taking diffs between the

tags LINUXDOC_2_DOCBOOK_START and LINUXDOC_2_DOCBOOK from doc/handbook/.

Note that the LINUXDOC_2_DOCBOOK tag is not necessarily at the HEAD of
the file. So some files won't show changes because changes were applied
after I laid down the LINUXDOC_2_DOCBOOK tag.

Not everything was merged. In some cases, URLs had been shortened;

    http://www.freebsd.org/docproj/

becomes

     ../docproj/

This is a mistake, since users browsing the Handbook on their own machine
can't be expected to have links like this work. Of course, for mirrors,
they'll end up pointing back to the main site. For the mean time, do
nothing -- this will need an entity defined to reference the base URL
of the FreeBSD site, individual mirrors can set this as necessary.

Notice how some files (on the left) are merged to the same file (on
the right). This is because the new Handbook file structure is organised
on DocBook chapter lines.

Files with no revision number in the "From" column didn't exist when I
started the conversion.

File                 From  ->  To      Merged to files...
---------------------------------------------------------------
anoncvs.sgml               ->  1.1     cutting-edge/chapter.sgml
authors.sgml         1.93  ->  1.118   authors.ent
backups.sgml               ->  1.4     backups/chapter.sgml
bibliography.sgml    1.33  ->  1.37    bibliography/chapter.sgml
contrib.sgml         1.274 ->  1.312   staff/chapter.sgml
ctm.sgml             1.22  ->  1.23    cutting-edge/chapter.sgml
cvsup.sgml           1.36  ->  1.40    cutting-edge/chapter.sgml
disks.sgml                 ->  1.3     disks/chapter.sgml
eresources.sgml      1.39  ->  1.50    eresources/chapter.sgml
firewalls.sgml       1.19  ->  1.20    security/chapter.sgml
handbook.sgml        1.83  ->  1.91    handbook.sgml
history.sgml         1.24  ->  1.25    introduction/chapter.sgml
install.sgml         1.65  ->  1.67    install/chapter.sgml
isdn.sgml            1.12  ->  1.15    advanced-networking/chapter.sgml
kerberos.sgml        1.12  ->  1.13    security/chapter.sgml
kernelconfig.sgml    1.31  ->  1.32    kernelconfig/chapter.sgml
kerneldebug.sgml     1.17  ->  1.19    kerneldebug/chapter.sgml
linuxemu.sgml        1.22  ->  1.24    linuxemu/chapter.sgml
memoryuse.sgml       1.11  ->  1.12    internals/chapter.sgml
mirrors.sgml         1.80  ->  1.92    mirrors/chapter.sgml
nutshell.sgml        1.14  ->  1.15    introduction/chapter.sgml
pgpkeys.sgml         1.25  ->  1.28    pgpkeys/chapter.sgml
policies.sgml        1.16  ->  1.18    policies/chapter.sgml
porting.sgml         1.93  ->  1.112   contrib/chapter.sgml
ports.sgml           1.29  ->  1.31    ports/chapter.sgml
printing.sgml        1.21  ->  1.22    printing/chapter.sgml
relnotes.sgml        1.24  ->  1.28    introduction/chapter.sgml  [1]
submitters.sgml      1.161 ->  1.246   contrib/chapter.sgml
synching.sgml        1.12  ->  1.13    cutting-edge/chapter.sgml
userppp.sgml         1.28  ->  1.30    ppp-and-slip/chapter.sgml

[1] A chunk of relnotes.sgml is in an IGNORED marked section. Why?

Submitted by:	A bunch (~ 50%) of merging done by Charles A. Wimmer
                (cawimm@FreeBSD.ORG), rest by Nik.
This commit is contained in:
Nik Clayton 1998-11-12 01:26:39 +00:00
parent 80e2e9e012
commit 276c9344d5
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=3793
75 changed files with 9786 additions and 4996 deletions
en/handbook
en_US.ISO8859-1
articles/contributing
books
developers-handbook
kerneldebug
policies
handbook
share/sgml
en_US.ISO_8859-1/books/handbook

View file

@ -738,86 +738,49 @@ hostname myclient.mydomain</programlisting>
<sect2>
<title>ISDN Cards</title>
<para><emphasis>Original Contribution by &a.hm;.</emphasis></para>
<para><emphasis>Contributed by &a.hm;.</emphasis></para>
<para>This section is really only relevant to European ISDN users.
The cards supported are not yet(?) available for North American
ISDN standards.</para>
<para>You should be aware that this code is largely under
development. Specifically, drivers have only been written for two
manufacturers cards.</para>
<para>PC ISDN cards support the full bandwidth of ISDN, 128Kbs.
These cards are often the least expensive type of ISDN equipment.</para>
<para>Under FreeBSD 2.1.0 and 2.1.5, there is early unfinished ISDN
code under <filename>/usr/src/gnu/isdn</filename>. This code is
out of date and should not be used. If you want to go this route,
get the bisdn stuff. This code has been removed from the main
source tree starting with FreeBSD 2.2.</para>
<para>There is the bisdn ISDN package available from <ulink
URL="ftp://hub.freebsd.org/pub/bisdn">hub.freebsd.org</ulink>
supporting FreeBSD 2.1R, FreeBSD-current and NetBSD. The latest
source can be found on the above mentioned ftp server under
directory isdn as file bisdn-097.tar.gz.</para>
<para>There are drivers for the following cards:</para>
<itemizedlist>
<listitem>
<para>Currently all (passive) Teles cards and their clones are
supported for the EuroISDN (DSS1) and 1TR6 protocols.</para>
</listitem>
<listitem>
<para>Dr. Neuhaus &mdash; Niccy 1016</para>
</listitem>
</itemizedlist>
<para>There are several limitations with the bisdn stuff.
Specifically the following features usually associated with ISDN
are not supported.</para>
<itemizedlist>
<listitem>
<para>No PPP support, only raw hdlc. This means you cannot
connect to most standalone routers.</para>
</listitem>
<listitem>
<para>Bridging Control Protocol not supported.</para>
</listitem>
<listitem>
<para>Multiple cards are not supported.</para>
</listitem>
<listitem>
<para>No bandwidth on demand.</para>
</listitem>
<listitem>
<para>No channel bundling.</para>
</listitem>
</itemizedlist>
<para>A majordomo maintained mailing list is available. To join the
list, send mail to &a.majordomo; and specify:
<para>This section is really only relevant to ISDN users in countries
where the DSS1/Q.931 ISDN standard is supported. </para>
<para>Some growing number of PC ISDN cards are supported under FreeBSD
2.2.x and up by the isdn4bsd driver package. It is still under
development but the reports show that it is successfully used all
over Europe.</para>
<programlisting>
<para>The latest isdn4bsd version is available from <ulink
url="ftp://isdn4bsd@ftp.consol.de/pub/">ftp://isdn4bsd@ftp.consol.de/pub/</ulink>,
the main isdn4bsd ftp site (you have to log in as user
<username>isdn4bsd</username> , give your mail address as the
password and change to the <filename>pub</filename>
directory. Anonymous ftp as user <username>ftp</username> or
<username>anonymous</username> will <emphasis>not</emphasis> give
the desired result).</para>
<para>Isdn4bsd allows you to connect to other ISDN routers using
either IP over raw HDLC or by using synchronous PPP. A telephone
answering machine application is also available.</para>
<para>Many ISDN PC cards are supported, mostly the ones with a Siemens
ISDN chipset (ISAC/HSCX), support for other chipsets (from Motorola,
Cologne Chip Designs) is currently under development. For an
up-to-date list of supported cards, please have a look at the
<ulink url="ftp://isdn4bsd@ftp.consol.de/pub/README">README</ulink>
file.</para>
<para>In case you are interested in adding support for a different
ISDN protocol, a currently unsupported ISDN PC card or otherwise
enhancing isdn4bsd, please get in touch with
<email>hm@kts.org</email>.</para>
<para>A majordomo maintained mailing list is available. To join the
list, send mail to <email>majordomo@FreeBSD.ORG</email> and
specify:</para>
<programlisting>
subscribe freebsd-isdn</programlisting>
in the body
of your message.</para>
<para>in the body of your message.</para>
</sect2>
<sect2>

View file

@ -7,15 +7,15 @@
Please keep this list in alphabetical order by entity names.
$Id: authors.ent,v 1.2 1998-11-09 17:41:07 archie Exp $
$Id: authors.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!ENTITY a.abial "Andrzej Bialecki <email>abial@FreeBSD.ORG</email>">
<!ENTITY a.ache "Andrey A. Chernov <email>ache@FreeBSD.ORG</email>">
<!ENTITY a.adam "Adam David <email>adam@FreeBSD.ORG</email>">
<!ENTITY a.ahasty "Amancio Hasty <email>ahasty@FreeBSD.ORG</email>">
<!ENTITY a.alex "Alex Nash <email>alex@freebsd.org</email>">
<!ENTITY a.amurai "Atsushi Murai <email>amurai@FreeBSD.ORG</email>">
@ -54,28 +54,38 @@
<!ENTITY a.darrenr "Darren Reed <email>darrenr@FreeBSD.ORG</email>">
<!ENTITY a.dave "Dave Cornejo <email>dave@FreeBSD.ORG</email>">
<!ENTITY a.davidg "David Greenman <email>davidg@FreeBSD.ORG</email>">
<!ENTITY a.dg "David Greenman <email>dg@FreeBSD.ORG</email>">
<!ENTITY a.davidn "David Nugent <email>davidn@blaze.net.au</email>">
<!ENTITY a.dburr "Donald Burr <email>dburr@FreeBSD.ORG</email>">
<!ENTITY a.des "Dag-Erling C. Sm&oslash;rgrav <email>des@FreeBSD.ORG</email>">
<!ENTITY a.dfr "Doug Rabson <email>dfr@FreeBSD.ORG</email>">
<!ENTITY a.dillon "Matthew Dillon <email>dillon@FreeBSD.ORG</email>">
<!ENTITY a.dima "Dima Ruban <email>dima@FreeBSD.ORG</email>">
<!ENTITY a.dirkvangulik "Dirk-Willem van Gulik <email>Dirk.vanGulik@jrc.it</email>">
<!ENTITY a.dt "Dmitrij Tejblum <email>dt@FreeBSD.ORG</email>">
<!ENTITY a.dwhite "Doug White <email>dwhite@FreeBSD.ORG</email>">
<!ENTITY a.dufault "Peter Dufault <email>dufault@FreeBSD.ORG</email>">
<!ENTITY a.dyson "John Dyson <email>dyson@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.eivind "Eivind Eklund <email>perhaps@yes.no</email>">
<!ENTITY a.ejc "Eric J. Chet <email>ejc@FreeBSD.ORG</email>">
<!ENTITY a.erich "Eric L. Hernes <email>erich@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.fenner "Bill Fenner <email>fenner@FreeBSD.ORG</email>">
<!ENTITY a.fsmp "Steve Passe <email>fsmp@FreeBSD.ORG</email>">
@ -94,6 +104,8 @@
<!ENTITY a.graichen "Thomas Graichen <email>graichen@FreeBSD.ORG</email>">
<!ENTITY a.grog "Greg Lehey <email>grog@FreeBSD.ORG</email>">
<!ENTITY a.gryphon "Coranth Gryphon <email>gryphon@healer.com</email>">
<!ENTITY a.guido "Guido van Rooij <email>guido@FreeBSD.ORG</email>">
@ -132,6 +144,8 @@
<!ENTITY a.jkh "Jordan K. Hubbard <email>jkh@FreeBSD.ORG</email>">
<!ENTITY a.jkoshy "Joseph Koshy <email>jkoshy@FreeBSD.ORG</email>">
<!ENTITY a.jlemon "Jonathan Lemon <email>jlemon@FreeBSD.ORG</email>">
<!ENTITY a.jlind "John Lind <email>john@starfire.MN.ORG</email>">
@ -164,12 +178,18 @@
<!ENTITY a.kelly "Sean Kelly <email>kelly@fsl.noaa.gov</email>">
<!ENTITY a.ken "Kenneth D. Merry <email>ken@FreeBSD.ORG</email>">
<!ENTITY a.kjc "Kenjiro Cho <email>kjc@FreeBSD.ORG</email>">
<!ENTITY a.kuriyama "Jun Kuriyama <email>kuriyama@FreeBSD.ORG</email>">
<!ENTITY a.lars "Lars Fredriksen <email>lars@FreeBSD.ORG</email>">
<!ENTITY a.ljo "L Jonas Olsson <email>ljo@FreeBSD.ORG</email>">
<!ENTITY a.luoqi "Luoqi Chen <email>luoqi@FreeBSD.ORG</email>">
<!ENTITY a.markm "Mark Murray <email>markm@FreeBSD.ORG</email>">
<!ENTITY a.martin "Martin Renters <email>martin@FreeBSD.ORG</email>">
@ -182,14 +202,22 @@
<!ENTITY a.mckay "Stephen McKay <email>mckay@FreeBSD.ORG</email>">
<!ENTITY a.mckusick "Kirk McKusick <email>mckusick@FreeBSD.ORG</email>">
<!ENTITY a.md "Mark Dapoz <email>md@bsc.no</email>">
<!ENTITY a.motoyuki "Motoyuki Konno <email>motoyuki@FreeBSD.ORG</email>">
<!ENTITY a.mph "Matthew Hunt <email>mph@FreeBSD.ORG</email>">
<!ENTITY a.mpp "Mike Pritchard <email>mpp@FreeBSD.ORG</email>">
<!ENTITY a.msmith "Michael Smith <email>msmith@FreeBSD.ORG</email>">
<!ENTITY a.nate "Nate Williams <email>nate@FreeBSD.ORG</email>">
<!ENTITY a.nectar "Jacques Vidrine <email>nectar@FreeBSD.ORG</email>">
<!ENTITY a.nik "Nik Clayton <email>nik@FreeBSD.ORG</email>">
<!ENTITY a.nsj "Nate Johnson <email>nsj@FreeBSD.ORG</email>">
@ -202,6 +230,8 @@
<!ENTITY a.paul "Paul Richards <email>paul@FreeBSD.ORG</email>">
<!ENTITY a.pb "Pierre Beyssac <email>pb@fasterix.freenix.org</email>">
<!ENTITY a.pds "Peter da Silva <email>pds@FreeBSD.ORG</email>">
<!ENTITY a.peter "Peter Wemm <email>peter@FreeBSD.ORG</email>">
@ -222,6 +252,8 @@
<!ENTITY a.rich "Rich Murphey <email>rich@FreeBSD.ORG</email>">
<!ENTITY a.rnordier "Robert Nordier <email>rnordier@FreeBSD.ORG</email>">
<!ENTITY a.roberto "Ollivier Robert <email>roberto@FreeBSD.ORG</email>">
<!ENTITY a.rse "Ralf S. Engelschall <email>rse@FreeBSD.ORG</email>">
@ -252,6 +284,8 @@
<!ENTITY a.tg "Thomas Gellekum <email>tg@FreeBSD.ORG</email>">
<!ENTITY a.thepish "Peter Hawkins <email>thepish@FreeBSD.ORG</email>">
<!ENTITY a.torstenb "Torsten Blum <email>torstenb@FreeBSD.ORG</email>">
<!ENTITY a.ugen "Ugen J.S.Antsilevich <email>ugen@FreeBSD.ORG</email>">

View file

@ -0,0 +1,731 @@
<chapter id="backups">
<title>Backups</title>
<para>Issues of hardware compatibility are among the most troublesome in the
computer industry today and FreeBSD is by no means immune to trouble. In
this respect, FreeBSD's advantage of being able to run on inexpensive
commodity PC hardware is also its liability when it comes to support for
the amazing variety of components on the market. While it would be
impossible to provide a exhaustive listing of hardware that FreeBSD
supports, this section serves as a catalog of the device drivers included
with FreeBSD and the hardware each drivers supports. Where possible and
appropriate, notes about specific products are included. You may also want
to refer to <link linkend="kernelconfig-config"> the kernel configuration
file</link> section in this handbook for a list of supported
devices.</para>
<para>As FreeBSD is a volunteer project without a funded testing department,
we depend on you, the user, for much of the information contained in this
catalog. If you have direct experience of hardware that does or does not
work with FreeBSD, please let us know by sending e-mail to the &a.doc;.
Questions about supported hardware should be directed to the &a.questions
(see <link linkend="eresources-mail">Mailing Lists</link> for more
information). When submitting information or asking a question, please
remember to specify exactly what version of FreeBSD you are using and
include as many details of your hardware as possible.</para>
<sect1>
<title>* What about backups to floppies?</title>
<para></para>
</sect1>
<sect1 id="backups-tapebackups">
<title>Tape Media</title>
<para>The major tape media are the 4mm, 8mm, QIC, mini-cartridge and
DLT.</para>
<sect2 id="backups-tapebackups-4mm">
<title>4mm (DDS: Digital Data
Storage)</title>
<para>4mm tapes are replacing QIC as the workstation backup media of
choice. This trend accelerated greatly when Conner purchased Archive,
a leading manufacturer of QIC drives, and then stopped production of
QIC drives. 4mm drives are small and quiet but do not have the
reputation for reliability that is enjoyed by 8mm drives. The
cartridges are less expensive and smaller (3 x 2 x 0.5 inches, 76 x 51
x 12 mm) than 8mm cartridges. 4mm, like 8mm, has comparatively short
head life for the same reason, both use helical scan.</para>
<para>Data thruput on these drives starts ~150kB/s, peaking at ~500kB/s.
Data capacity starts at 1.3 GB and ends at 2.0 GB. Hardware
compression, available with most of these drives, approximately
doubles the capacity. Multi-drive tape library units can have 6 drives
in a single cabinet with automatic tape changing. Library capacities
reach 240 GB.</para>
<para>4mm drives, like 8mm drives, use helical-scan. All the benefits
and drawbacks of helical-scan apply to both 4mm and 8mm drives.</para>
<para>Tapes should be retired from use after 2,000 passes or 100 full
backups.</para>
</sect2>
<sect2 id="backups-tapebackups-8mm">
<title>8mm (Exabyte)</title>
<para>8mm tapes are the most common SCSI tape drives; they are the best
choice of exchanging tapes. Nearly every site has an exabyte 2 GB 8mm
tape drive. 8mm drives are reliable, convenient and quiet. Cartridges
are inexpensive and small (4.8 x 3.3 x 0.6 inches; 122 x 84 x 15 mm).
One downside of 8mm tape is relatively short head and tape life due to
the high rate of relative motion of the tape across the heads.</para>
<para>Data thruput ranges from ~250kB/s to ~500kB/s. Data sizes start at
300 MB and go up to 7 GB. Hardware compression, available with most of
these drives, approximately doubles the capacity. These drives are
available as single units or multi-drive tape libraries with 6 drives
and 120 tapes in a single cabinet. Tapes are changed automatically by
the unit. Library capacities reach 840+ GB.</para>
<para>Data is recorded onto the tape using helical-scan, the heads are
positioned at an angle to the media (approximately 6 degrees). The
tape wraps around 270 degrees of the spool that holds the heads. The
spool spins while the tape slides over the spool. The result is a high
density of data and closely packed tracks that angle across the tape
from one edge to the other.</para>
</sect2>
<sect2 id="backups-tapebackups-qic">
<title>QIC</title>
<para>QIC-150 tapes and drives are, perhaps, the most common tape drive
and media around. QIC tape drives are the least expensive "serious"
backup drives. The downside is the cost of media. QIC tapes are
expensive compared to 8mm or 4mm tapes, up to 5 times the price per GB
data storage. But, if your needs can be satisfied with a half-dozen
tapes, QIC may be the correct choice. QIC is the
<emphasis>most</emphasis> common tape drive. Every site has a QIC
drive of some density or another. Therein lies the rub, QIC has a
large number of densities on physically similar (sometimes identical)
tapes. QIC drives are not quiet. These drives audibly seek before they
begin to record data and are clearly audible whenever reading, writing
or seeking. QIC tapes measure (6 x 4 x 0.7 inches; 15.2 x 10.2 x 1.7
mm). <link linkend="backups-tapebackups-mini">Mini-cartridges</link>,
which also use 1/4" wide tape are discussed separately. Tape libraries
and changers are not available.</para>
<para>Data thruput ranges from ~150kB/s to ~500kB/s. Data capacity
ranges from 40 MB to 15 GB. Hardware compression is available on many
of the newer QIC drives. QIC drives are less frequently installed;
they are being supplanted by DAT drives.</para>
<para>Data is recorded onto the tape in tracks. The tracks run along the
long axis of the tape media from one end to the other. The number of
tracks, and therefore the width of a track, varies with the tape's
capacity. Most if not all newer drives provide backward-compatibility
at least for reading (but often also for writing). QIC has a good
reputation regarding the safety of the data (the mechanics are simpler
and more robust than for helical scan drives).</para>
<para>Tapes should be retired from use after 5,000 backups.</para>
</sect2>
<sect2 id="backups-tapebackups-mini">
<title>* Mini-Cartridge</title>
<para></para>
</sect2>
<sect2 id="backups-tapebackups-dlt">
<title>DLT</title>
<para>DLT has the fastest data transfer rate of all the drive types
listed here. The 1/2" (12.5mm) tape is contained in a single spool
cartridge (4 x 4 x 1 inches; 100 x 100 x 25 mm). The cartridge has a
swinging gate along one entire side of the cartridge. The drive
mechanism opens this gate to extract the tape leader. The tape leader
has an oval hole in it which the drive uses to "hook" the tape. The
take-up spool is located inside the tape drive. All the other tape
cartridges listed here (9 track tapes are the only exception) have
both the supply and take-up spools located inside the tape cartridge
itself.</para>
<para>Data thruput is approximately 1.5MB/s, three times the thruput of
4mm, 8mm, or QIC tape drives. Data capacities range from 10GB to 20GB
for a single drive. Drives are available in both multi-tape changers
and multi-tape, multi-drive tape libraries containing from 5 to 900
tapes over 1 to 20 drives, providing from 50GB to 9TB of
storage.</para>
<para>Data is recorded onto the tape in tracks parallel to the direction
of travel (just like QIC tapes). Two tracks are written at once.
Read/write head lifetimes are relatively long; once the tape stops
moving, there is no relative motion between the heads and the
tape.</para>
</sect2>
<sect2>
<title>Using a new tape for the first time</title>
<para>The first time that you try to read or write a new,
completely blank tape, the operation will fail. The console
messages should be similar to:</para>
<informalexample>
<screen>st0(ncr1:4:0): NOT READY asc:4,1
st0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
</informalexample>
<para>The tape does not contain an Identifier Block (block number 0).
All QIC tape drives since the adoption of QIC-525 standard write an
Identifier Block to the tape. There are two solutions:</para>
<para><command>mt fsf 1</command> causes the tape drive to write an
Identifier Block to the tape.</para>
<para>Use the front panel button to eject the tape.</para>
<para>Re-insert the tape and
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> data to the tape.</para>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> will report <literal>DUMP:
End of tape detected</literal> and the console will show:
<literal>HARDWARE FAILURE info:280 asc:80,96</literal></para>
<para>rewind the tape using: <command>mt rewind</command></para>
<para>Subsequent tape operations are successful.</para>
</sect2>
</sect1>
<sect1 id="backup-programs">
<title>Backup Programs</title>
<para>The three major programs are
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>,
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>,
and
<citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>.</para>
<sect2>
<title>Dump and Restore</title>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>restore</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> are the traditional Unix backup programs. They operate
on the drive as a collection of disk blocks, below the abstractions of
files, links and directories that are created by the filesystems.
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> backs up devices, entire filesystems, not parts of a
filesystem and not directory trees that span more than one filesystem,
using either soft links <citerefentry>
<refentrytitle>ln</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> or mounting one filesystem onto another.
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> does not write files and directories to tape, but
rather writes the data blocks that are the building blocks of files
and directories. <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> has quirks that remain from its early days in
Version 6 of ATT Unix (circa 1975). The default parameters are
suitable for 9-track tapes (6250 bpi), not the high-density media
available today (up to 62,182 ftpi). These defaults must be overridden
on the command line to utilize the capacity of current tape
drives.</para>
<para><citerefentry>
<refentrytitle>rdump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>rrestore</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> backup data across the
network to a tape drive attached to another computer. Both programs
rely upon <citerefentry>
<refentrytitle>rcmd</refentrytitle>
<manvolnum>3</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>ruserok</refentrytitle>
<manvolnum>3</manvolnum></citerefentry> to access the remote tape
drive. Therefore, the user performing the backup must have
<literal>rhosts</literal> access to the remote computer. The
arguments to <citerefentry>
<refentrytitle>rdump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>rrestore</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> must suitable to use on the remote computer. (e.g.
When <command>rdump</command>'ing from a FreeBSD computer to an
Exabyte tape drive connected to a Sun called
<hostid>komodo</hostid>, use: <command>/sbin/rdump 0dsbfu 54000
13000 126 komodo:/dev/nrst8 /dev/rsd0a 2>&amp;1</command>) Beware:
there are security implications to allowing <literal>rhosts</literal>
commands. Evaluate your situation carefully.</para>
</sect2>
<sect2>
<title>Tar</title>
<para><citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> also dates back to Version 6 of ATT Unix (circa
1975). <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> operates in cooperation with the filesystem;
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> writes files and directories to tape.
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> does not support the full range of options that are
available from <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>, but <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not require the
unusual command pipeline that <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> uses.</para>
<para>Most versions of <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> do not support backups across the network. The GNU
version of <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>, which FreeBSD utilizes,
supports remote devices using the same syntax as
<command>rdump</command>. To <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> to an Exabyte tape drive connected to a Sun called
komodo, use: <command>/usr/bin/tar cf komodo:/dev/nrst8 .
2>&amp;1</command>. For versions without remote device support,
you can use a pipeline and <citerefentry>
<refentrytitle>rsh</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> to send the data to a
remote tape drive. (XXX add an example command)</para>
</sect2>
<sect2>
<title>Cpio</title>
<para><citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> is the original Unix
file interchange tape program for magnetic media. <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> has options (among many
others) to perform byte-swapping, write a number of different
archives format, and pipe the data to other programs. This last
feature makes <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> and excellent choice for
installation media. <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not know how to walk
the directory tree and a list of files must be provided thru
<filename>STDIN</filename>.</para>
<para><citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not support backups
across the network. You can use a pipeline and <citerefentry>
<refentrytitle>rsh</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> to send the data to a
remote tape drive. (XXX add an example command)</para>
</sect2>
<sect2>
<title>Pax</title>
<para><citerefentry>
<refentrytitle>pax</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> is IEEE/POSIX's answer to
<command>tar</command> and <command>cpio</command>. Over the years the
various versions of <command>tar</command> and <command>cpio</command>
have gotten slightly incompatible. So rather than fight it out to
fully standardize them, POSIX created a new archive utility.
<command>pax</command> attempts to read and write many of the various
cpio and tar formats, plus new formats of its own. Its command set
more resembles <command>cpio</command> than
<command>tar</command>.</para>
</sect2>
<sect2 id="backups-programs-amanda">
<title>Amanda</title>
<para><ulink url="../ports/misc.html#amanda-2.4.0">Amanda</ulink>
(Advanced Maryland Network Disk Archiver) is a client/server backup
system, rather than a single program. An Amanda server will backup to
a single tape drive any number of computers that have Amanda clients
and network communications with the Amanda server. A common problem at
locations with a number of large disks is the length of time required
to backup to data directly to tape exceeds the amount of time
available for the task. Amanda solves this problem. Amanda can use a
"holding disk" to backup several filesystems at the same time. Amanda
creates "archive sets": a group of tapes used over a period of time to
create full backups of all the filesystems listed in Amanda's
configuration file. The "archive set" also contains nightly
incremental (or differential) backups of all the filesystems.
Restoring a damaged filesystem requires the most recent full backup
and the incremental backups.</para>
<para>The configuration file provides fine control backups and the
network traffic that Amanda generates. Amanda will use any of the
above backup programs to write the data to tape. Amanda is available
as either a port or a package, it is not installed by default.</para>
</sect2>
<sect2>
<title>Do nothing</title>
<para>&ldquo;Do nothing&rdquo; is not a computer program, but it is the
most widely used backup strategy. There are no initial costs. There is
no backup schedule to follow. Just say no. If something happens to
your data, grin and bear it!</para>
<para>If your time and your data is worth little to nothing, then
&ldquo;Do nothing&rdquo; is the most suitable backup program for your
computer. But beware, Unix is a useful tool, you may find that within
six months you have a collection of files that are valuable to
you.</para>
<para>&ldquo;Do nothing&rdquo; is the correct backup method for
<filename>/usr/obj</filename> and other directory trees that can be
exactly recreated by your computer. An example is the files that
comprise these handbook pages-they have been generated from
<acronym>SGML</acronym> input files. Creating backups of these
<acronym>HTML</acronym> files is not necessary. The
<acronym>SGML</acronym> source files are backed up regularly.</para>
</sect2>
<sect2>
<title>Which Backup Program is Best?</title>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> <emphasis>Period.</emphasis>
Elizabeth D. Zwicky torture tested all the backup programs discussed
here. The clear choice for preserving all your data and all the
peculiarities of Unix filesystems is <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>. Elizabeth created
filesystems containing a large variety of unusual conditions (and some
not so unusual ones) and tested each program by do a backup and
restore of that filesystems. The peculiarities included: files with
holes, files with holes and a block of nulls, files with funny
characters in their names, unreadable and unwritable files, devices,
files that change size during the backup, files that are
created/deleted during the backup and more. She presented the results
at LISA V in Oct. 1991. See <ulink
url="http://reality.sgi.com/zwicky_neu/testdump.doc.html">torture-testing Backup and Archive Programs</ulink>.</para>
</sect2>
<sect2>
<title>Emergency Restore Procedure</title>
<sect3>
<title>Before the Disaster</title>
<para>There are only four steps that you need to perform in
preparation for any disaster that may occur.</para>
<para>First, print the disklabel from each of your disks
(<command>e.g. disklabel sd0 | lpr</command>), your filesystem table
(<command>/etc/fstab</command>) and all boot messages, two copies of
each.</para>
<para>Second, determine that the boot and fixit floppies
(<filename>boot.flp</filename> and <filename>fixit.flp</filename>)
have all your devices. The easiest way to check is to reboot your
machine with the boot floppy in the floppy drive and check the boot
messages. If all your devices are listed and functional, skip on to
step three.</para>
<para>Otherwise, you have to create two custom bootable floppies
which has a kernel that can mount your all of your disks and
access your tape drive. These floppies must contain:
<citerefentry>
<refentrytitle>fdisk</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>disklabel</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>newfs</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>mount</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, and whichever backup
program you use. These programs must be statically linked. If you
use <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, the floppy must contain
<citerefentry>
<refentrytitle>restore</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>.</para>
<para>Third, create backup tapes regularly. Any changes that you make
after your last backup may be irretrievably lost. Write-protect the
backup tapes.</para>
<para>Fourth, test the floppies (either <filename>boot.flp</filename>
and <filename>fixit.flp</filename> or the two custom bootable
floppies you made in step two.) and backup tapes. Make notes of the
procedure. Store these notes with the bootable floppy, the printouts
and the backup tapes. You will be so distraught when restoring that
the notes may prevent you from destroying your backup tapes (How?
In place of <command>tar xvf /dev/rst0</command>, you might
accidently type <command>tar cvf /dev/rst0</command> and over-write
your backup tape).</para>
<para>For an added measure of security, make bootable floppies and two
backup tapes each time. Store one of each at a remote location. A
remote location is NOT the basement of the same office building. A
number of firms in the World Trade Center learned this lesson the
hard way. A remote location should be physically separated from your
computers and disk drives by a significant distance.</para>
<para>An example script for creating a bootable floppy:</para>
<programlisting>
<![ CDATA [#!/bin/sh
#
# create a restore floppy
#
# format the floppy
#
PATH=/bin:/sbin:/usr/sbin:/usr/bin
fdformat -q fd0
if [ $? -ne 0 ]
then
echo "Bad floppy, please use a new one"
exit 1
fi
# place boot blocks on the floppy
#
disklabel -w -B -b /usr/mdec/fdboot -s /usr/mdec/bootfd /dev/rfd0c fd1440
#
# newfs the one and only partition
#
newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/rfd0a
#
# mount the new floppy
#
mount /dev/fd0a /mnt
#
# create required directories
#
mkdir /mnt/dev
mkdir /mnt/bin
mkdir /mnt/sbin
mkdir /mnt/etc
mkdir /mnt/root
mkdir /mnt/mnt # for the root partition
mkdir /mnt/tmp
mkdir /mnt/var
#
# populate the directories
#
if [ ! -x /sys/compile/MINI/kernel ]
then
cat << EOM
The MINI kernel does not exist, please create one.
Here is an example config file:
#
# MINI -- A kernel to get FreeBSD on onto a disk.
#
machine "i386"
cpu "I486_CPU"
ident MINI
maxusers 5
options INET # needed for _tcp _icmpstat _ipstat
# _udpstat _tcpstat _udb
options FFS #Berkeley Fast File System
options FAT_CURSOR #block cursor in syscons or pccons
options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device
options NCONS=2 #1 virtual consoles
options USERCONFIG #Allow user configuration with -c XXX
config kernel root on sd0 swap on sd0 and sd1 dumps on sd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller ncr0
controller scbus0
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
device sd0
device sd1
device sd2
device st0
pseudo-device loop # required by INET
pseudo-device gzip # Exec gzipped a.out's
EOM
exit 1
fi
cp -f /sys/compile/MINI/kernel /mnt
gzip -c -best /sbin/init > /mnt/sbin/init
gzip -c -best /sbin/fsck > /mnt/sbin/fsck
gzip -c -best /sbin/mount > /mnt/sbin/mount
gzip -c -best /sbin/halt > /mnt/sbin/halt
gzip -c -best /sbin/restore > /mnt/sbin/restore
gzip -c -best /bin/sh > /mnt/bin/sh
gzip -c -best /bin/sync > /mnt/bin/sync
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV sd0
./MAKEDEV sd1
./MAKEDEV sd2
./MAKEDEV st0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat > /mnt/etc/fstab <<EOM
/dev/fd0a / ufs rw 1 1
EOM
#
# create minimum passwd file
#
cat > /mnt/etc/passwd <<EOM
root:*:0:0:Charlie &:/root:/bin/sh
EOM
cat > /mnt/etc/master.passwd <<EOM
root::0:0::0:0:Charlie &:/root:/bin/sh
EOM
chmod 600 /mnt/etc/master.passwd
chmod 644 /mnt/etc/passwd
/usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd
#
# umount the floppy and inform the user
#
/sbin/umount /mnt]]></programlisting>
</sect3>
<sect3>
<title>After the Disaster</title>
<para>The key question is: did your hardware survive? You have been
doing regular backups so there is no need to worry about the
software.</para>
<para>If the hardware has been damaged. First, replace those parts
that have been damaged.</para>
<para>If your hardware is okay, check your floppies. If you are using
a custom boot floppy, boot single-user (type <literal>-s</literal>
at the <prompt>boot:</prompt> prompt). Skip the following
paragraph.</para>
<para>If you are using the <filename>boot.flp</filename> and
<filename>fixit.flp</filename> floppies, keep reading. Insert the
<filename>boot.flp</filename> floppy in the first floppy drive and
boot the computer. The original install menu will be displayed on
the screen. Select the <literal>Fixit--Repair mode with CDROM or
floppy.</literal> option. Insert the
<filename>fixit.flp</filename> when prompted.
<command>restore</command> and the other programs that you need are
located in <filename>/mnt2/stand</filename>.</para>
<para>Recover each filesystem separately.</para>
<para>Try to <citerefentry>
<refentrytitle>mount</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry>(e.g. <command>mount /dev/sd0a
/mnt</command>) the root partition of your first disk. If the
disklabel was damaged, use <citerefentry>
<refentrytitle>disklabel</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> to re-partition and
label the disk to match the label that your printed and saved. Use
<citerefentry>
<refentrytitle>newfs</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> to re-create the
filesystems. Re-mount the root partition of the floppy read-write
(<command>mount -u -o rw /mnt</command>). Use your backup program
and backup tapes to recover the data for this filesystem (e.g.
<command>restore vrf /dev/st0</command>). Unmount the filesystem
(e.g. <command>umount /mnt</command>) Repeat for each filesystem
that was damaged.</para>
<para>Once your system is running, backup your data onto new tapes.
Whatever caused the crash or data loss may strike again. An another
hour spent now, may save you from further distress later.</para>
</sect3>
<sect3>
<title>* I did not prepare for the Disaster, What Now?</title>
<para></para>
</sect3>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../handbook.sgml" "part" "chapter")
End:
-->

View file

@ -49,7 +49,11 @@
<ulink URL="http://www.ascii.co.jp/">ASCII</ulink>. ISBN
4-7561-1580-2 P3800E.</para>
</listitem>
<listitem>
<para>FreeBSD mit Methode (in German), publiched by Computer und
Literatur Verlag/Vertrieb Hanser, 1998. ISBN 3-93211-31-0.</para>
</listitem>
</itemizedlist>
@ -151,7 +155,7 @@
<listitem>
<para>Nemeth, Evi. <emphasis>UNIX System Administration
Handbook</emphasis>. 2nd ed. Prentice Hall, 1995. <!-- <br>
Handbook</emphasis>. 2nd Ed. Prentice Hall, 1995. <!-- <br>
--> ISBN 0131510517</para>
</listitem>
@ -190,12 +194,6 @@
<!-- <br> --> ISBN 1-56592-079-1</para>
</listitem>
<listitem>
<para>Ellis, Margaret A. and Stroustrup, Bjarne. <emphasis>The
Annotated C++ Reference Manual</emphasis>. Addison-Wesley,
1990. <!-- <br> --> ISBN 0-201-51459-1</para>
</listitem>
<listitem>
<para>Harbison, Samuel P. and Steele, Guy L. Jr. <emphasis>C: A
Reference Manual</emphasis>. 4rd ed. Prentice Hall, 1995.
@ -209,7 +207,7 @@
</listitem>
<listitem>
<para>Lehey, Greg. <emphasis>Port UNIX Software</emphasis>.
<para>Lehey, Greg. <emphasis>Porting UNIX Software</emphasis>.
O'Reilly &amp; Associates, Inc., 1995.<!-- <br> --> ISBN
1-56592-126-7</para>
</listitem>
@ -226,11 +224,11 @@
Addison-Wesley, 1992<!-- <br> --> ISBN 0-201-56317-7</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>UNIX Network
Programming</emphasis>. PTR Prentice Hall, 1990. <!-- <br>
--> ISBN 0-13-949876-1</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>UNIX Network
Programming</emphasis>. 2nd Ed, PTR Prentice Hall, 1998. ISBN
0-13-490012-X</para>
</listitem>
<listitem>
<para>Wells, Bill. &ldquo;Writing Serial Drivers for UNIX&rdquo;.
@ -288,7 +286,13 @@
1: The Protocols</emphasis>. Reading, Mass. :
Addison-Wesley, 1996.<!-- <br> --> ISBN 0-201-63346-9</para>
</listitem>
<listitem>
<para>Schimmel, Curt. <emphasis>Unix Systems for Modern
Architectures</emphasis>. Reading, Mass. : Addison-Wesley,
1994. ISBN 0-201-63338-8</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>TCP/IP Illustrated, Volume
3: TCP for Transactions, HTTP, NNTP and the UNIX Domain
@ -322,7 +326,7 @@
<listitem>
<para>Cheswick, William R. and Steven M. Bellovin.
<emphasis>Firewalls and Internal Security: Repelling the Wily
<emphasis>Firewalls and Internet Security: Repelling the Wily
Hacker</emphasis>. Reading, Mass. : Addison-Wesley,
1995.<!-- <br> --> ISBN 0-201-63357-4</para>
</listitem>
@ -352,7 +356,7 @@
<listitem>
<para>Anderson, Don and Tom Shanley. <emphasis>Pentium Processor
System Architecture</emphasis>. 2nd ed. Reading, Mass. :
System Architecture</emphasis>. 2nd Ed. Reading, Mass. :
Addison-Wesley, 1995.<!-- <br> --> ISBN 0-201-40992-5</para>
</listitem>
@ -362,7 +366,14 @@
Mass. : Addison-Wesley, 1995.<!-- <br> --> ISBN
0-201-62490-7</para>
</listitem>
<listitem>
<para>Intel Corporation publishes documentation on their CPUs,
chipsets and standards on their <ulink
url="http://developer.intel.com/">developer web site</ulink>,
usually as PDF files.</para>
</listitem>
<listitem>
<para>Shanley, Tom. <emphasis>80486 System
Architecture</emphasis>. 3rd ed. Reading, Mass. :
@ -433,7 +444,7 @@
<listitem>
<para><emphasis>The BSD family tree</emphasis>. 1997.<!-- <br>
--> <ulink
URL="http://www.de.freebsd.org/de/ftp/unix-stammbaum">http://www.de.freebsd.org/de/ftp/unix-stammbaum</ulink> or <ulink URL="file:/usr/share/misc/bsd-family-tree">local</ulink> on a FreeBSD-current machine.</para>
url="ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree">ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree</ulink> or <ulink URL="file:/usr/share/misc/bsd-family-tree">local</ulink> on a FreeBSD-current machine.</para>
</listitem>
<listitem>
@ -447,7 +458,12 @@
Library</emphasis>.<!-- <br> --> <ulink
URL="http://www.ncstrl.org/">http://www.ncstrl.org/</ulink></para>
</listitem>
<listitem>
<para><emphasis>Old BSD releases from the Computer Systems Research
group (CSRG)</emphasis>. <ulink
url="http://www.mckusick.com/csrg/">http://www.mckusick.com/csrg/</ulink>: The 4CD set covers all BSD versions from 1BSD to 4.4BSD and 4.4BSD-Lite2 (but not 2.11BSD, unfortunately). As well, the last disk holds the final sources plus the SCCS files.</para>
</listitem>
</itemizedlist>

View file

@ -6,7 +6,7 @@
Chapters should be listed in the order in which they are referenced.
$Id: chapters.ent,v 1.2 1998-11-04 22:38:06 nik Exp $
$Id: chapters.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!-- Part one -->
@ -19,6 +19,8 @@
<!ENTITY chap.kernelconfig SYSTEM "kernelconfig/chapter.sgml">
<!ENTITY chap.security SYSTEM "security/chapter.sgml">
<!ENTITY chap.printing SYSTEM "printing/chapter.sgml">
<!ENTITY chap.disks SYSTEM "disks/chapter.sgml">
<!ENTITY chap.backups SYSTEM "backups/chapter.sgml">
<!ENTITY chap.quotas SYSTEM "quotas/chapter.sgml">
<!ENTITY chap.x11 SYSTEM "x11/chapter.sgml">
<!ENTITY chap.hw SYSTEM "hw/chapter.sgml">

File diff suppressed because it is too large Load diff

View file

@ -359,10 +359,13 @@ subscribe freebsd-stable</programlisting> In the body of your
<para>There are various ways of using an Internet (or email)
connection to stay up-to-date with any given area of the FreeBSD
project sources, or all areas, depending on what interests you. The
primary services we offer are <application>CVSup</application> and <application>CTM</application>.</para>
primary services we offer are <link linkend="anoncvs">Anonymous
CVS</link>, <link linkend="cvsup">CVSup</link>, and
<link linkend="ctm">CTM</link>.</para>
<para><application>CVSup</application> uses the
<emphasis>pull</emphasis> model of updating. The user (or a cron
<para><application>Anonymous CVS</application> and <application>CVSup</application> use the
<emphasis>pull</emphasis> model of updating sources. In the case of
<application>CVSup</application> the user (or a cron
script) invokes the <command>cvsup</command> program, and
it interacts with a <command>cvsupd</command> server
somewhere to bring your files up to date. The updates you receive
@ -370,14 +373,21 @@ subscribe freebsd-stable</programlisting> In the body of your
them. You can easily restrict your updates to the specific files or
directories that are of interest to you. Updates are generated on
the fly by the server, according to what you have and what you want
to have.</para>
to have. <application>Anonymous CVS</application> is quite a bit more simplistic
than CVSup in that it's just an extension to
<application>CVS</application> which allows it to pull changes
directly from a remote CVS
repository. <application>CVSup</application> can do this far more
efficiently, but <application>Anonymous CVS</application> is easier to
use.</para>
<para><application>CTM</application>, on the other hand, does not
interactively compare the sources you have with those on the master
archive. Instead, a script which identifies changes in files since
its previous run is executed several times a day on the master
archive, any detected changes being compressed, stamped with a
sequence-number and encoded for transmission over email (printable
archive or otherwise pull them across.. Instead, a script which identifies changes in files since
its previous run is executed several times a day on the master CTM
machine,
any detected changes being compressed, stamped with a
sequence-number and encoded for transmission over email (in printable
ASCII only). Once received, these &ldquo;CTM deltas&rdquo; can then be handed
to the <citerefentry><refentrytitle>ctm_rmail</refentrytitle><manvolnum>1</manvolnum></citerefentry> utility which will automatically decode, verify
and apply the changes to the user's copy of the sources. This
@ -390,12 +400,313 @@ subscribe freebsd-stable</programlisting> In the body of your
damaged portions for you. <application>CTM</application> won't do this, and if you wipe some
portion of your source tree out (and don't have it backed up) then
you will have to start from scratch (from the most recent CVS &ldquo;base
delta&rdquo;) and rebuild it all.</para>
delta&rdquo;) and rebuild it all with CTM or, with anoncvs, simply
delete the bad bits and resync.</para>
<para>For more information on <application>CTM</application> and <application>CVSup</application>, please see one of the
<para>For more information on <application>Anonymous CVS</application>, <application>CTM</application>, and <application>CVSup</application>, please see one of the
following sections:</para>
<sect2 id="anoncvs">
<title>Anonymous CVS</title>
<para><emphasis>Contributed by &a.jkh;</emphasis></para>
<sect3>
<title><anchor id="anoncvs-intro">Introduction</title>
<para>Anonymous CVS (or, as it is otherwise known,
<emphasis>anoncvs</emphasis>) is a feature provided by the CVS
utilities bundled with FreeBSD for synchronizing with a remote CVS
repository. Among other things, it allows users of FreeBSD to
perform, with no special privileges, read-only CVS operations
against one of the FreeBSD project's official anoncvs servers. To
use it, one simply sets the <envar>CVSROOT</envar> environment
variable to point at the appropriate anoncvs server and then uses
the <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> command to access it like any local
repository.</para>
<para>While it can also be said that the <link
linkend="cvsup">CVSup</link> and <emphasis>anoncvs</emphasis>
services both perform essentially the same function, there are
various trade-offs which can influence the user's choice of
synchronization methods. In a nutshell,
<application>CVSup</application> is much more efficient in its
usage of network resources and is by far the most technically
sophisticated of the two, but at a price. To use
<application>CVSup</application>, a special client must first be
installed and configured before any bits can be grabbed, and then
only in the fairly large chunks which
<application>CVSup</application> calls
<emphasis>collections</emphasis>.</para>
<para><application>Anoncvs</application>, by contrast, can be used
to examine anything from an individual file to a specific program
(like <command>ls</command> or <command>grep</command>) by
referencing the CVS module name. Of course,
<application>anoncvs</application> is also only good for read-only
operations on the CVS repository, so if it's your intention to
support local development in one repository shared with the
FreeBSD project bits then <application>CVSup</application> is
really your only option.</para>
</sect3>
<sect3>
<title><anchor id="anoncvs-usage">Using Anonymous CVS</title>
<para>Configuring <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> to use an Anonymous CVS repository is a simple
matter of setting the <envar>CVSROOT</envar> environment variable
to point to one of the FreeBSD project's
<emphasis>anoncvs</emphasis> servers. At the time of this writing,
the following servers are available:</para>
<itemizedlist>
<listitem>
<para><emphasis>USA</emphasis>:
anoncvs@anoncvs.freebsd.org:/cvs</para>
</listitem>
</itemizedlist>
<para>Since CVS allows one to &ldquo;check out&rdquo; virtually any
version of the FreeBSD sources that ever existed (or, in some
cases, will exist <!-- smiley -->:), you need to be familiar with
the revision (<option>-r</option>) flag to <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> and what some of the permissible values for it in
the FreeBSD Project repository are.</para>
<para>There are two kinds of tags, revision tags and branch tags. A
revision tag refers to a specific revision. Its meaning stays the
same from day to day. A branch tag, on the other hand, refers to
the latest revision on a given line of development, at any given
time. Because a branch tag does not refer to a specific revision,
it may mean something different tomorrow than it means
today.</para>
<para>Here are the branch tags that users might be interested
in:</para>
<variablelist>
<varlistentry>
<term>HEAD</term>
<listitem>
<para>Symbolic name for the main line, or FreeBSD-current.
Also the default when no revision is
specified.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2</term>
<listitem>
<para>The line of development for FreeBSD-2.2.x, also known as
FreeBSD-stable. Not valid for the ports collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_0</term>
<listitem>
<para>The line of development for FreeBSD-2.1.x - this branch
is largely obsolete. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Here are the revision tags that users might be interested
in:</para>
<variablelist>
<varlistentry>
<term>RELENG_2_2_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.6. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_5_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.5. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_2_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.2. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_1_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.1. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_0_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.0. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_7_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.7. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_6_1_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.6.1. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.6. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_5_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.5. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_0_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.0. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
</variablelist>
<para>When you specify a branch tag, you normally receive the latest
versions of the files on that line of development. If you wish to
receive some past version, you can do so by specifying a date with
the <option>-D date</option> flag. See the <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> man page for more details.</para>
</sect3>
<sect3>
<title>Examples</title>
<para>While it really is recommended that you read the manual page
for <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> thoroughly before doing
anything, here are some quick examples which essentially show how
to use Anonymous CVS:</para>
<example>
<title>Checking out something from -current (<citerefentry>
<refentrytitle>ls</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>) and deleting it
again:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co ls</userinput>
&prompt.user; <userinput>cvs release -d ls</userinput></screen>
</example>
<example>
<title>Checking out the version of ls(1) in the 2.2-stable
branch:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co -rRELENG_2_2 ls</userinput>
&prompt.user; <userinput>cvs release -d ls</userinput></screen>
</example>
<example>
<title>Creating a list of changes (as unidiffs) to <citerefentry>
<refentrytitle>ls</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> between FreeBSD 2.2.2
and FreeBSD 2.2.6:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs rdiff -u -rRELENG_2_2_2_RELEASE -rRELENG_2_2_6_RELEASE ls</userinput></screen>
</example>
<example>
<title>Finding out what other module names can be used:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co modules</userinput>
&prompt.user; <userinput>more modules/modules</userinput>
&prompt.user; <userinput>cvs release -d modules</userinput></screen>
</example>
</sect3>
<sect3>
<title>Other Resources</title>
<para>The following additional resources may be helpful in learning
CVS:</para>
<itemizedlist>
<listitem>
<para><ulink
url="http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/cvs/">CVS Tutorial</ulink> from Cal Poly.</para>
</listitem>
<listitem>
<para><ulink url="http://www.cyclic.com">Cyclic
Software</ulink>, commercial maintainers of CVS.</para>
</listitem>
<listitem>
<para><ulink
url="http://www.freebsd.org/cgi/cvsweb.cgi">CVSWeb</ulink>
is the FreeBSD Project web interface for CVS.</para>
</listitem>
</itemizedlist>
</sect3>
</sect2>
<sect2 id="ctm">
<title><application>CTM</application></title>
@ -511,23 +822,27 @@ subscribe freebsd-stable</programlisting> In the body of your
produced subsequently to it.</para>
<para>First you should determine what you already have. Everyone
can start from an &ldquo;empty&rdquo; directory. However, since the trees
can start from an &ldquo;empty&rdquo; directory. You must use an
initial &ldquo;Empty&rdquo delta to start off your
<application>CTM</application> supported tree. At some point it is
intended that one of these &ldquo;started&rdquo; deltas be
distributed on the CD for your convenience. This does not
currently happen however.</para>
<para>You can recognize
However, since the trees
are many tens of megabytes, you should prefer to start from
something already at hand. If you have a RELEASE CD, you can
copy or extract an initial source from it. This will save a
significant transfer of data.</para>
<para>Once you identify a suitable starting point, you must use an
initial &ldquo;transition&rdquo; delta to transform your starting point
into a <application>CTM</application> supported tree.</para>
<para>You can recognize these transition deltas by the
<para>You can recognize these &ldquo;starter&rdquo; deltas by the
<literal>X</literal> appended to the number
(<filename>src-cur.3210XEmpty.gz</filename> for instance). The
designation following the <filename>X</filename>
corresponds to the origin of your initial &ldquo;seed&rdquo;. <filename>Empty</filename> is
an empty directory, <filename>R225</filename> would designate the 2.2.5 release,
etc. As a rule a base transition from <filename>Empty</filename> is producted
an empty directory. As a rule a base transition from
<filename>Empty</filename> is produced
every 100 deltas. By the way, they are large! 25 to 30
Megabytes of <command>gzip</command>'ed data is
common for the <filename>XEmpty</filename> deltas.</para>
@ -791,7 +1106,7 @@ subscribe freebsd-stable</programlisting> In the body of your
<para>The easiest way to install <application>CVSup</application> if you are running FreeBSD
2.2 or later is to use either <ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/ports-current/net/cvsup.tar">the port</ulink> from the FreeBSD <link linkend="ports">ports collection</link> or the corresponding <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages-current/net/cvsup-15.3.tgz">binary package</ulink>, depending on whether you prefer to roll your own or not.</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/ports-current/net/cvsup.tar">the port</ulink> from the FreeBSD <link linkend="ports">ports collection</link> or the corresponding <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages-current/net/cvsup-15.4.2.tgz">binary package</ulink>, depending on whether you prefer to roll your own or not.</para>
<para>If you are running FreeBSD-2.1.6 or 2.1.7, you unfortunately
cannot use the binary package versions due to the fact that it
@ -813,24 +1128,25 @@ subscribe freebsd-stable</programlisting> In the body of your
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.3.tar.gz</ulink> (client including GUI).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.4.2.tar.gz</ulink> (client including GUI).</para>
</listitem>
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.3.tar.gz</ulink> (client without GUI).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.4.2.tar.gz</ulink> (client without GUI).</para>
</listitem>
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.3.tar.gz</ulink> (server).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.4.2.tar.gz</ulink> (server).</para>
</listitem>
</itemizedlist>
<para>or the German mirror:</para>
<para>as well as from the many FreeBSD <link
linkend="mirrors-ftp">FTP mirror sites</link> around the
world.</para>
<itemizedlist>
@ -1066,6 +1382,24 @@ cvs-crypto</programlisting>
<variablelist>
<varlistentry>
<term>tag=RELENG_3_0_0_RELEASE</term>
<listitem>
<para>FreeBSD-3.0. Not valid for the ports-*
collections.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>tag=RELENG_2_2_7_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.7. Not valid for the ports-*
collections.</para>
</listitem>
</varlistentry>
<varlistentry><term>tag=RELENG_2_2_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.6. Not valid for the ports-*
@ -1521,7 +1855,17 @@ cvs-crypto</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term><literal></literal>ports-deskutils
release=cvs</term>
<listitem>
<para>Things that used to be on the desktop before
computers were invented.</para>
</listitem>
</varlistentry>
<varlistentry><term><literal>ports-devel
release=cvs</literal></term>
@ -1746,10 +2090,54 @@ cvs-crypto</programlisting>
release=cvs</literal></term>
<listitem>
<para>X11 software.</para>
<para>Ports to support the X window
system.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-clocks
release=cvs</literal></term>
<listitem>
<para>X11 clocks.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-fm
release=cvs</literal></term>
<listitem>
<para>X11 file managers.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-fonts
release=cvs</literal></term>
<listitem>
<para>X11 fonts and font utilities.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-toolkits
release=cvs</literal></term>
<listitem>
<para>X11 toolkits.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-wm</literal></term>
<listitem>
<para>X11 window managers.</para>
</listitem>
</varlistentry>
</variablelist>

View file

@ -0,0 +1,165 @@
<chapter id="disks">
<title>Disks</title>
<para><emphasis>Contributed by &a.obrien; 26 April 1998</emphasis></para>
<para>Lets say we want to add a new SCSI disk to a machine that currently
only has a single drive. First turn off the computer and install the
drive in the computer following the instructions of the computer,
controller, and drive manufacturer. Due the wide variations of procedures
to do this, the details are beyond the scope of this document.</para>
<para>Login as user <username>root</username>. After you've installed the
drive, inspect <filename>/var/run/dmesg.boot</filename> to ensure the new
disk was found. Continuing with our example, the newly added drive will be
<filename>sd1</filename> and we want to mount it on
<filename>/1</filename>. (if you are adding an IDE drive substitute
<filename>wd</filename> for <filename>sd</filename>)</para>
<para>Because FreeBSD runs on IBM-PC compatible computers, it must take into
account the PC BIOS partitions. These are different from the traditional
BSD partitions. A PC disk has up to four BIOS partition entries. If the
disk is going to be truly dedicated to FreeBSD, you can use the
<emphasis>dedicated</emphasis> mode. Otherwise, FreeBSD will have to live
with in one of the PC BIOS partitions. FreeBSD calls the PC BIOS
partitions, <emphasis>slices</emphasis> so as not to confuse them with
traditional BSD partitions. You may also use slices on a disk that is
dedicated to FreeBSD, but used in a computer that also has another
operating system installed. This is to not confuse the
<command>fdisk</command> utility of the other operating system.</para>
<para>In the slice case the drive will be added as
<filename>/dev/sd1s1e</filename>. This is read as: SCSI disk, unit number
1 (second SCSI disk), slice 1 (PC BIOS partition 1), and
<filename>e</filename> BSD partition. In the dedicated case, the drive
will be added simply as <filename>/dev/sd1e</filename>.</para>
<sect1>
<title>Using sysinstall</title>
<para> You may use <command>/stand/sysinstall</command> to partition and
label a new disk using its easy to use menus. Either login as user
<username>root</username> or use the <command>su</command> command. Run
<command>/stand/sysinstall</command> and enter the
<literal>Configure</literal> menu. With in the <literal>FreeBSD
Configuration Menu</literal>, scroll down and select the
<literal>Partition</literal> item. Next you should be presented with a
list of hard drives installed in your system. If you do not see
<literal>sd1</literal> listed, you need to recheck your physical
installation and <command>dmesg</command> output in the file
<filename>/var/run/dmesg.boot</filename>.</para>
<para>Select <literal>sd1</literal> to enter the <literal>FDISK Partition
Editor</literal>. Choose <literal>A</literal> to use the entire disk
for FreeBSD. When asked if you want to <quote>remain cooperative with
any future possible operating systems</quote>, answer
<literal>YES</literal>. Write the changes to the disk using
<command>W</command>. Now exit the FDISK editor using
<command>q</command>. Next you will be asked about the Master Boot
Record. Since you are adding a disk to an already running system, choose
<literal>None</literal>.</para>
<para>Next enter the <literal>Disk Label Editor</literal>. This is where
you will create the traditional BSD partitions. A disk can have up to
eight partitions, labeled a-h. A few of the partition labels have
special uses. The <literal>a</literal> partition is used for the root
partition (<filename>/</filename>). Thus only your system disk (e.g, the
disk you boot from) should have an <literal>a</literal> partition. The
<literal>b</literal> partition is used for swap partitions, and you may
have many disks with swap partitions. The <literal>c</literal> partition
addresses the entire disk in dedicated mode, or the entire FreeBSD slice
in slice mode. The other partitions are for general use.</para>
<para>Sysinstall's Label editor favors the <literal>e</literal> partition
for non-root, non-swap partitions. With in the Label editor, create a
single file system using <command>C</command>. When prompted if this
will be a FS (file system) or swap, choose <literal>FS</literal> and
give a mount point (e.g, <filename>/mnt</filename>). When adding a disk
in post-install mode, Sysinstall will not create entries in
<filename>/etc/fstab</filename> for you, so the mount point you specify
isn't important.</para>
<para>You are now ready to write the new label to the disk and create a
file system on it. Do this by hitting <command>W</command>. Ignore any
errors from Sysinstall that it could not mount the new partition. Exit
the Label Editor and Sysinstall completely.</para>
<para>The last step is to edit <filename>/etc/fstab</filename> to add an
entry for your new disk.</para>
</sect1>
<sect1>
<title>Using command line utilities</title>
<sect2>
<title>* Using Slices</title>
<para></para>
</sect2>
<sect2>
<title>Dedicated</title>
<para>If you will not be sharing the new drive with another operating
system, you may use the <literal>dedicated</literal> mode. Remember
this mode can confuse Microsoft operating systems; however, no damage
will be done by them. IBM's OS/2 however, will
&ldquo;appropriate&rdquo; any partition it finds which it doesn't
understand.</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rsd1 bs=1k count=1</userinput>
&prompt.root; <userinput>disklabel -Brw sd1 auto</userinput>
&prompt.root; <userinput>disklabel -e sd</userinput>1 # create the `e' partition
&prompt.root; <userinput>newfs -d0 /dev/rsd1e</userinput>
&prompt.root; <userinput>mkdir -p /1</userinput>
&prompt.root; <userinput>vi /etc/fstab</userinput> # add an entry for /dev/sd1e
&prompt.root; <userinput>mount /1</userinput></screen>
</informalexample>
<para>An alternate method is:</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rsd1 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/rsd1 | disklabel -BrR sd1 /dev/stdin</userinput>
&prompt.root; <userinput>newfs /dev/rsd1e</userinput>
&prompt.root; <userinput>mkdir -p /1</userinput>
&prompt.root; <userinput>vi /etc/fstab</userinput> # add an entry for /dev/sd1e
&prompt.root; <userinput>mount /1</userinput></screen>
</informalexample>
</sect2>
</sect1>
<sect1>
<title>* Non-traditional Drives</title>
<sect2>
<title>* Zip Drives</title>
<para></para>
</sect2>
<sect2>
<title>* Jazz Drives</title>
<para></para>
</sect2>
<sect2>
<title>* Sequest Drives</title>
<para></para>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../handbook.sgml" "part" "chapter")
End:
-->

View file

@ -49,7 +49,7 @@
<title>List summary</title>
<para><emphasis>General lists:</emphasis> The following are
general lists which anyone is free to join:</para>
general lists which anyone is free (and encouraged) to join:</para>
<informaltable frame="none">
<tgroup cols="2">
@ -61,6 +61,11 @@
</thead>
<tbody>
<row>
<entry>freebsd-advocacy</entry>
<entry>FreeBSD Evangelism</entry>
</row>
<row>
<entry>freebsd-announce</entry>
<entry>Important events and project milestones</entry>
@ -101,6 +106,11 @@
opportunities</entry>
</row>
<row>
<entry>freebsd-newbies</entry>
<entry>New FreeBSD users activities and discussions</entry>
</row>
<row>
<entry>freebsd-questions</entry>
<entry>User questions</entry>
@ -139,6 +149,12 @@
<entry>The FreeBSD Documentation project</entry>
</row>
<row>
<entry>freebsd-database</entry>
<entry>Discussing database use and development under
FreeBSD</entry>
</row>
<row>
<entry>freebsd-emulation</entry>
<entry>Emulation of other systems such as
@ -178,10 +194,15 @@
</row>
<row>
<entry>freebsd-multimedia</entry>
<entry>Multimedia discussion</entry>
<entry>freebsd-mozilla</entry>
<entry>Porting mozilla to FreeBSD</entry>
</row>
<row>
<entry>freebsd-net</entry>
<entry>Networking discussion and TCP/IP/source code</entry>
</row>
<row>
<entry>freebsd-platforms</entry>
<entry>Concerning ports to non-Intel architecture
@ -203,6 +224,11 @@
<entry>Security issues</entry>
</row>
<row>
<entry>freebsd-small</entry>
<entry>Using FreeBSD in embedded applications</entry>
</row>
<row>
<entry>freebsd-smp</entry>
<entry>Design discussions for [A]Symmetric
@ -213,6 +239,11 @@
<entry>freebsd-sparc</entry>
<entry>Porting FreeBSD to Sparc systems</entry>
</row>
<row>
<entry>freebsd-tokenring</entry>
<entry>Support Token Ring in FreeBSD</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -540,7 +571,7 @@ help
milestones</emphasis></para>
<para>This is the mailing list for people interested only
in occasional announcements of significant freebsd events.
in occasional announcements of significant FreeBSD events.
This includes announcements about snapshots and other
releases. It contains announcements of new FreeBSD
capabilities. It may contain calls for volunteers etc.
@ -555,10 +586,39 @@ help
<para><emphasis>Architecture and design
discussions</emphasis></para>
<para>This is the mailing
list for people discussing FreeBSD architectural issues.
It is a closed list, and not for general
subscription.</para>
<para>This is a moderated list for discussion of FreeBSD
architecture. Messages will mostly be kept technical in
nature, with (rare) exceptions for other messages the
moderator deems need to reach all the subscribers of the
list. Examples of suitable topics;</para>
<itemizedlist>
<listitem>
<para>How to re-vamp the build system to have several
customized builds running at the same time.</para>
</listitem>
<listitem>
<para>What needs to be fixed with VFS to make Heidemann
layers work.</para>
</listitem>
<listitem>
<para>How do we change the device driver interface to be
able to use the ame drivers cleanly on many buses and
architectures?</para>
</listitem>
<listitem>
<para>How do I write a network driver?</para>
</listitem>
</itemizedlist>
<para>The moderator reserves the right to do minor editing
(spell-checking, grammar correction, trimming) of messages
that are posted to the list. The volume of the list will be
kept low, which may involve having to delay topics until an
active discussion has been resolved.</para>
</listitem>
</varlistentry>
@ -660,9 +720,11 @@ help
<listitem>
<para><emphasis>Documentation project</emphasis></para>
<para>This mailing list belongs to the FreeBSD Doc Project
and is for the discussion of documentation related issues
and projects.</para>
<para>This mailing list is for the discussion of documentation
related issues and projects. The members of this mailing list
are collectively referred to as &ldquo;The FreeBSD
Documentation Project&rdquo;. It is an open list; feel free to
join and contribute.</para>
</listitem>
</varlistentry>
@ -766,16 +828,22 @@ help
</listitem>
</varlistentry>
<varlistentry><term>FREEBSD-MULTIMEDIA</term>
<varlistentry><term>FREEBSD-NEWBIES</term>
<listitem>
<para><emphasis>Multimedia discussions</emphasis></para>
<para>This is a forum about multimedia applications using
FreeBSD. Discussion center around multimedia applications,
their installation, their development and their support
within FreeBSD This is a technical mailing list for which
strictly technical content is expected.</para>
<para><emphasis>Newbies activities
discussion</emphasis></para>
<para>We cover any of the activities of newbies that are not
already dealt with elsewhere, including: independent learning
and problem solving techniques, finding and using resources
and asking for help elsewhere, how to use mailing lists and
which lists to use, general chat, making mistakes, boasting,
sharing ideas, stories, moral (but not technical) support, and
taking an active part in the FreeBSD community. We take our
problems and support questions to freebsd-questions, and use
freebsd-newbies to meet others who are doing the same things
that we do as newbies.</para>
</listitem>
</varlistentry>
@ -866,7 +934,17 @@ help
FreeBSD-security.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>FREEBSD-SMALL</term>
<listitem>
<para>This list discusses topics related to unsually small and
embedded FreeBSD installations. This is a technical mailing
list for which strictly technical content is expected.</para>
</listitem>
</varlistentry>
<varlistentry><term>FREEBSD-USER-GROUPS</term>
<listitem>
@ -972,36 +1050,6 @@ help
URL="news:comp.unix.misc">comp.unix.misc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.announc">comp.os.386bsd.announc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.app">comp.os.386bsd.app</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.bugs">comp.os.386bsd.bugs</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.development">comp.os.386bsd.development</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.misc">comp.os.386bsd.misc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.questions">comp.os.386bsd.questions</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.bugs.4bsd">comp.bugs.4bsd</ulink></para>

View file

@ -3,7 +3,7 @@
<!ENTITY % authors SYSTEM "authors.ent"> %authors;
<!ENTITY % mailing-lists SYSTEM "mailing-lists.ent"> %mailing-lists;
<!ENTITY rel.current CDATA "2.2.6">
<!ENTITY rel.current CDATA "3.0">
]>
<book>
@ -16,7 +16,7 @@
</author>
</authorgroup>
<pubdate>March 1998</pubdate>
<pubdate>July 1998</pubdate>
<copyright>
<year>1995</year>
@ -35,11 +35,12 @@
with this project, send email to the &a.doc; The latest version of
this document is always available from the <ulink
URL="http://www.FreeBSD.ORG/">FreeBSD World Wide Web server</ulink>.
It may also be downloaded in plain text, postscript or HTML from the
<ulink URL="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs">FreeBSD FTP
server</ulink> or one of the numerous <link
It may also be downloaded in <ulink url="handbook.latin1">plain
text</ulink>, <ulink url="handbook.ps">postscript</ulink> or <ulink
url="handbook-html.tar.gz">HTML</ulink> with HTTP or gzip'd from the <ulink
url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs/">FreeBSD FTP server</ulink> or one of the numerous <link
linkend="mirrors-ftp">mirror sites</link>. You may also want to
<ulink URL="/search.html">Search the Handbook</ulink>.</para>
<ulink URL="http://www.FreeBSD.ORG/search.html">Search the Handbook</ulink>.</para>
</abstract>
</bookinfo>
@ -58,6 +59,8 @@
&chap.kernelconfig;
&chap.security;
&chap.printing;
&chap.disks;
&chap.backups;
&chap.quotas;
&chap.x11;
&chap.hw;

View file

@ -78,24 +78,20 @@
<para>For Pentium Pro (P6) systems, I'm quite fond of the <ulink
URL="http://www.tyan.com/html/products.html">Tyan</ulink>
S1668 dual-processor motherboard. It makes a dandy little
single or dual processor system (which is supported in FreeBSD
3.0) and the price of the Pentium Pro 180/256K chip has fallen
to truly affordable levels. The Pentium Pro remains my favorite
processor solution server systems (Megahertz ratings aren't
everything).</para>
S1668 dual-processor motherboard as well as the Intel PR440FX
motherboard with on-board SCSI WIDE and 100/10MB Intel
Etherexpress NIC. You can build a dandy little single or dual
processor system (which is supported in FreeBSD 3.0) for very
little cost now that the Pentium Pro 180/256K chips have fallen so
greatly in price, but no telling how much longer this will
last.</para>
<para>For the Pentium II, I'm rather partial to the <ulink
URL="http://www.asus.com.tw">ASUS</ulink> <ulink
URL="http://www.asus.com.tw/Products/Motherboard/Pentiumpro/P2l97-s/index.html">P2l97-S</ulink> motherboard with the on-board Adaptec SCSI WIDE controller.</para>
<para>For Pentium machines, the ASUS <ulink
URL="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> motherboard appears to be a good choice for mid-to-high range Pentium server and workstation systems. You might also wish to investigate ASUS's <ulink URL="http://asustek.asus.com.tw/FTP/ASUS/Info/Spec/pvi-486sp3.txt">486SP3G</ulink> offering if it's a 486-class motherboard you're looking for.</para>
<note>
<para>These have become increasingly hard to get as ASUS
apparently no longer manufactures them).</para>
</note>
URL="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> motherboard appears to be a good choice for mid-to-high range Pentium server and workstation systems.</para>
<para>Those wishing to build more fault-tolerant systems should
also be sure to use Parity memory or, for truly 24/7
@ -131,6 +127,13 @@
your scarce PCI bus resources by buying the Adaptec 3940 card,
which puts two SCSI controllers (and internal busses) in a
single slot.</para>
<note>
<para>There are two types of 3940 on the market&mdash;the older
model with AIC 7880 chips on it, and hte newer one with AIC 7895
chips. The newer model requires <ulink
url="http://www.freebsd.org/pub/FreeBSD/development/cam/">CAM</ulink> support which is not yet part of FreeBSD&mdash;you have to add it, or install from one of the CAM binary snapshot release.</para>
</note>
</sect3>
@ -144,11 +147,8 @@
drives from server to desktop as falling drive prices make it
economical to do so. If you have more than one machine to
administer then think of it not simply as storage, think of it
as a food chain!</para>
<para>I do not currently see SCSI WIDE drives as a necessary
expense unless you're putting together an NFS or NEWS server
that will be doing a lot of multiuser disk I/O.</para>
as a food chain! For a serious server configuration, there's not
even any argument&mdash;use SCSI equipment and good cables.</para>
</sect3>
@ -157,12 +157,11 @@
<para>My SCSI preferences extend to SCSI CDROM drives as well, and
while the <ulink URL="http://www.toshiba.com">Toshiba</ulink>
XM-3501B (also released in a caddy-less model called the
XM-5401B) drive has always performed well for me, I'm now a
great fan of the <ulink
URL="http://www.plextor.com">Plextor</ulink> PX-12CS drive.
It's a 12 speed drive with excellent performance and
reliability.</para>
drives have always been favourites of mine (in whatever speed is
hot that week), I'm still fond of my good old <ulink
url="http://www.plextor.com">Plextor</ulink> PX-12CS drive. It's
only a 12 speed, but it's offered excellent performance and
reliability.</para>
<para>Generally speaking, most SCSI CDROM drives I've seen have
been of pretty solid construction and you probably won't go
@ -182,8 +181,8 @@
drives (though I believe they all ultimately come from Phillips
anyway): The Phillips CDD 522 (Acts like a Plasmon), the PLASMON
RF4100 and the HP 6020i. I myself use the HP 6020i for burning
CDROMs (with 2.2-current &mdash; it does not work with 2.1.5 or
earlier releases of the SCSI code) and it works very well. See
CDROMs (in 2.2 and alter releases&mdash;it does not work with
earlier releases of the SCSI code) and it works very well. See
<ulink
URL="file:/usr/share/examples/worm">/usr/share/examples/worm</ulink> on your 2.2 system for example scripts used to created ISO9660 filesystem images (with RockRidge extensions) and burn them onto an HP6020i CDR.</para>
@ -209,12 +208,14 @@
Inc. (formerly X Inside, Inc)</ulink> then I can heartily
recommend the <ulink URL="http://www.matrox.com/">Matrox</ulink>
<ulink
URL="http://www.matrox.com/mgaweb/brochure.htm">Millenium</ulink> card. Note that support for this card is also excellent with the <ulink URL="http://www.xfree86.org/">XFree86</ulink> server, which is now at version 3.3.2.</para>
URL="http://www.matrox.com/mgaweb/brochure.htm">Millenium II</ulink> card. Note that support for this card is also excellent with the <ulink URL="http://www.xfree86.org/">XFree86</ulink> server, which is now at version 3.3.2.</para>
<para>You also certainly can't go wrong with one of <ulink
URL="http://www.nine.com/">Number 9's</ulink> cards &mdash; their S3
Vision 868 and 968 based cards (the 9FX series) also being quite
fast and very well supported by XFree86's S3 server.</para>
fast and very well supported by XFree86's S3 server. You can
also pick up their Revolution 3D cards very cheaply these days,
especially if you require a lot of video memory.</para>
</sect3>
@ -222,27 +223,28 @@
<title>Monitors</title>
<para>I have had very good luck with the <ulink
URL="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII monitors</ulink>, as have I with the Viewsonic offering in the same (Trinitron) tube. For larger than 17", all I can recommend at the time of this writing is to not spend any less than U.S. &#36;2,500 for a 21" monitor or &#36;1,700 for a 20" monitor if that's what you really need. There are good monitors available in the &gt;=20" range and there are also cheap monitors in the &gt;=20" range. Unfortunately, very few are both cheap and good!</para>
URL="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII monitors</ulink>, as have I with the Viewsonic offering in the same (Trinitron) tube. For larger than 17", all I can recommend at the time of this writing is to not spend any less than U.S. &#36;2,000 for a 21" monitor or &#36;1,700 for a 20" monitor if that's what you really need. There are good monitors available in the &gt;=20" range and there are also cheap monitors in the &gt;=20" range. Unfortunately, very few are both cheap and good!</para>
</sect3>
<sect3 id="hw-networking">
<title>Networking</title>
<para>I can recommend the <ulink
<para>I can recommend the Intel EtherExpress Pro/100B card first
ande foremost, followed by the <ulink
URL="http://www.smc.com/">SMC</ulink> Ultra 16 controller for
any ISA application and the SMC EtherPower or Compex ENET32
cards for any serious PCI based networking. Both of the PCI
cards are based around DEC's DC21041 Ethernet controller chip
and other cards using it, such as the Zynx ZX342 or DEC DE435,
will generally work as well. For 100Mbit networking, either the
SMC SMC9332DST 10/100MB or Intel EtherExpress Pro/100B cards
will do a fine job, the Intel EtherExpress generally getting my
vote.</para>
cards for slightly cheaper PCI based networking. In general, any
PCI NIC based around DEC's DC21041 Ethernet controller chip,
such as the Zynx ZX342 or DEC DE435, will generally work quite
well and can frequently be found in 2-port and 4-port version
(useful for firewalls and routers), though the Pro/100MB card has
the edge when it comes to providing the best performance with teh
lower overhead.</para>
<para>If what you're looking for is, on the other hand, the
cheapest possible solution which will still work reasonably
well, then almost any NE2000 clone is a good choice.</para>
<para>If what you're looking for is the
cheapest possible solution then almost any NE2000 clone will do
a fine job for very little cost.</para>
</sect3>
@ -334,7 +336,7 @@
<sect3 id="hw-mb-pci">
<title>PCI</title>
<para><emphasis>Contributed by &a.rgrimes;.<!-- <br> -->25 April
<para><emphasis>Contributed by &a.obrien; from postings by &a.rgrimes;.<!-- <br> -->25 April
1995.</emphasis></para>
<para><emphasis>Continuing updates by &a.jkh;.</emphasis><!-- <br>
@ -4875,7 +4877,7 @@ options "TUNE_1542" #dynamic tune of bus DMA speed</programli
<para>Data transfer rate is 350kB/s using
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Rates of 530kB/s have been
reported when using <link
linkend="hw-storage-amanda">Amanda</link></para>
linkend="backups-programs-amanda">Amanda</link></para>
<para>Production of this drive has been discontinued.</para>
@ -5655,653 +5657,6 @@ scsi -f $2 -s 100 -c "1b 0 0 $cdb3 $cdb4 $cdb5"</programlisting>
<para></para>
</sect2>
<sect2>
<title>* Adding and reconfiguring disks</title>
<para></para>
</sect2>
<sect2 id="hw-storage-tapebackups">
<title>Tapes and backups</title>
<sect3>
<title>* What about backups to floppies?</title>
<para></para>
</sect3>
<sect3>
<title>Tape Media</title>
<sect4 id="hw-storage-tapebackups-4mm">
<title>4mm (DDS: Digital Data Storage)</title>
<para>4mm tapes are replacing QIC as the workstation backup
media of choice. This trend accelerated greatly when Conner
purchased Archive, a leading manufacturer of QIC drives, and
then stopped production of QIC drives. 4mm drives are small
and quiet but do not have the reputation for reliability that
is enjoyed by 8mm drives. The cartridges are less expensive
and smaller (3 x 2 x 0.5 inches, 76 x 51 x 12 mm) than 8mm
cartridges. 4mm, like 8mm, has comparatively short head life
for the same reason, both use helical scan.</para>
<para>Data thruput on these drives starts ~150kB/s, peaking at
~500kB/s. Data capacity starts at 1.3 GB and ends at 2.0 GB.
Hardware compression, available with most of these drives,
approximately doubles the capacity. Multi-drive tape library
units can have 6 drives in a single cabinet with automatic
tape changing. Library capacities reach 240 GB.</para>
<para>4mm drives, like 8mm drives, use helical-scan. All the
benefits and drawbacks of helical-scan apply to both 4mm and
8mm drives.</para>
<para>Tapes should be retired from use after 2,000 passes or 100
full backups.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-8mm">
<title>8mm (Exabyte)</title>
<para>8mm tapes are the most common SCSI tape drives; they are
the best choice of exchanging tapes. Nearly every site has an
exabyte 2 GB 8mm tape drive. 8mm drives are reliable,
convenient and quiet. Cartridges are inexpensive and small
(4.8 x 3.3 x 0.6 inches; 122 x 84 x 15 mm). One downside of
8mm tape is relatively short head and tape life due to the
high rate of relative motion of the tape across the
heads.</para>
<para>Data thruput ranges from ~250kB/s to ~500kB/s. Data sizes
start at 300 MB and go up to 7 GB. Hardware compression,
available with most of these drives, approximately doubles the
capacity. These drives are available as single units or
multi-drive tape libraries with 6 drives and 120 tapes in a
single cabinet. Tapes are changed automatically by the unit.
Library capacities reach 840+ GB.</para>
<para>Data is recorded onto the tape using helical-scan, the
heads are positioned at an angle to the media (approximately 6
degrees). The tape wraps around 270 degrees of the spool that
holds the heads. The spool spins while the tape slides over
the spool. The result is a high density of data and closely
packed tracks that angle across the tape from one edge to the
other.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-qic">
<title>QIC</title>
<para>QIC-150 tapes and drives are, perhaps, the most common
tape drive and media around. QIC tape drives are the least
expensive &ldquo;serious&rdquo; backup drives. The downside is the cost
of media. QIC tapes are expensive compared to 8mm or 4mm
tapes, up to 5 times the price per GB data storage. But, if
your needs can be satisfied with a half-dozen tapes, QIC may
be the correct choice. QIC is the <emphasis>most</emphasis>
common tape drive. Every site has a QIC drive of some density
or another. Therein lies the rub, QIC has a large number of
densities on physically similar (sometimes identical) tapes.
QIC drives are not quiet. These drives audibly seek before
they begin to record data and are clearly audible whenever
reading, writing or seeking. QIC tapes measure (6 x 4 x 0.7
inches; 15.2 x 10.2 x 1.7 mm). <link
linkend="hw-storage-tapebackups-mini">Mini-cartridges</link>,
which also use 1/4" wide tape are
discussed separately. Tape libraries and changers are not
available.</para>
<para>Data thruput ranges from ~150kB/s to ~500kB/s. Data
capacity ranges from 40 MB to 15 GB. Hardware compression is
available on many of the newer QIC drives. QIC drives are
less frequently installed; they are being supplanted by DAT
drives.</para>
<para>Data is recorded onto the tape in tracks. The tracks run
along the long axis of the tape media from one end to the
other. The number of tracks, and therefore the width of a
track, varies with the tape's capacity. Most if not all newer
drives provide backward-compatibility at least for reading
(but often also for writing). QIC has a good reputation
regarding the safety of the data (the mechanics are simpler
and more robust than for helical scan drives).</para>
<para>Tapes should be retired from use after 5,000
backups.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-mini">
<title>* Mini-Cartridge</title>
<para></para>
</sect4>
<sect4 id="hw-storage-tapebackups-dlt">
<title>DLT</title>
<para>DLT has the fastest data transfer rate of all the drive
types listed here. The 1/2" (12.5mm) tape is contained in a
single spool cartridge (4 x 4 x 1 inches; 100 x 100 x 25 mm).
The cartridge has a swinging gate along one entire side of the
cartridge. The drive mechanism opens this gate to extract the
tape leader. The tape leader has an oval hole in it which the
drive uses to &ldquo;hook&rdquo; the tape. The take-up spool is located
inside the tape drive. All the other tape cartridges listed
here (9 track tapes are the only exception) have both the
supply and take-up spools located inside the tape cartridge
itself.</para>
<para>Data thruput is approximately 1.5MB/s, three times the
thruput of 4mm, 8mm, or QIC tape drives. Data capacities
range from 10GB to 20GB for a single drive. Drives are
available in both multi-tape changers and multi-tape,
multi-drive tape libraries containing from 5 to 900 tapes over
1 to 20 drives, providing from 50GB to 9TB of storage.</para>
<para>Data is recorded onto the tape in tracks parallel to the
direction of travel (just like QIC tapes). Two tracks are
written at once. Read/write head lifetimes are relatively
long; once the tape stops moving, there is no relative motion
between the heads and the tape.</para>
</sect4>
</sect3>
<sect3>
<title>Using a new tape for the first time</title>
<para>The first time that you try to read or write a new,
completely blank tape, the operation will fail. The console
messages should be similar to:</para>
<informalexample>
<screen>st0(ncr1:4:0): NOT READY asc:4,1
st0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
</informalexample>
<para>The tape does not contain an Identifier Block (block number
0). All QIC tape drives since the adoption of QIC-525 standard
write an Identifier Block to the tape. There are two solutions:</para>
<para><command>mt fsf 1</command> causes the tape drive
to write an Identifier Block to the tape.</para>
<para>Use the front panel button to eject the tape.</para>
<para>Re-insert the tape and <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> data to
the tape.</para>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> will report <errorname>DUMP: End of tape detected</errorname> and the console
will show: <errorname>HARDWARE FAILURE info:280
asc:80,96</errorname></para>
<para>rewind the tape using: <command>mt
rewind</command></para>
<para>Subsequent tape operations are successful.</para>
</sect3>
<sect3>
<title>Backup Programs</title>
<para>The three major programs are <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>, and
<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
<sect4>
<title>Dump and Restore</title>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry> are the traditional Unix backup
programs. They operate on the drive as a collection of disk
blocks, below the abstractions of files, links and directories
that are created by the filesystems.
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> backs up devices, entire
filesystems, not parts of a filesystem and not directory trees
that span more than one filesystem, using either soft links
<citerefentry><refentrytitle>ln</refentrytitle><manvolnum>1</manvolnum></citerefentry> or mounting one filesystem onto
another. <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> does not write files and
directories to tape, but rather writes the data blocks that
are the building blocks of files and directories.
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> has quirks that remain from its
early days in Version 6 of ATT Unix (circa 1975). The default
parameters are suitable for 9-track tapes (6250 bpi), not the
high-density media available today (up to 62,182 ftpi). These
defaults must be overridden on the command line to utilize the
capacity of current tape drives.</para>
<para><citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>rrestore</refentrytitle><manvolnum>8</manvolnum></citerefentry> backup data across the network
to a tape drive attached to another computer. Both programs
rely upon <citerefentry><refentrytitle>rcmd</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
<citerefentry><refentrytitle>ruserok</refentrytitle><manvolnum>3</manvolnum></citerefentry> to access the remote tape
drive. Therefore, the user performing the backup must have
<filename>rhosts</filename> access to the remote
computer. The arguments to <citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>rrestore</refentrytitle><manvolnum>8</manvolnum></citerefentry> must suitable to use on the
remote computer. e.g. When <command>rdump</command>'ing from a FreeBSD computer to an
Exabyte tape drive connected to a Sun called komodo, use:</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nrst8 /dev/rsd0a 2&gt;&amp;1</userinput></screen>
</informalexample>
<para>Beware:
there are security implications to allowing <filename>rhosts</filename> commands. Evaluate your
situation carefully.</para>
</sect4>
<sect4>
<title>Tar</title>
<para><citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> also dates back to Version 6 of
ATT Unix (circa 1975). <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> operates in
cooperation with the filesystem; <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>
writes files and directories to tape.
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not support the full range of
options that are available from <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
but <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not require the unusual
command pipeline that <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> uses.</para>
<para>Most versions of <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> do not support
backups across the network. The GNU version of
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>, which FreeBSD utilizes, supports
remote devices using the same syntax as <command>rdump</command>. To <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> to
an Exabyte tape drive connected to a Sun called komodo, use:
<command>/usr/bin/tar cf komodo:/dev/nrst8 .
2&gt;&amp;1</command>. For versions without remote device
support, you can use a pipeline and <citerefentry><refentrytitle>rsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>
to send the data to a remote tape drive. (XXX add an example
command)</para>
</sect4>
<sect4>
<title>Cpio</title>
<para><citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> is the original Unix file
interchange tape program for magnetic media.
<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> has options (among many others) to
perform byte-swapping, write a number of different archives
format, and pipe the data to other programs. This last feature
makes <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> and excellent choice for
installation media. <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not know
how to walk the directory tree and a list of files must be
provided thru <acronym>STDIN</acronym>.</para>
<para><citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not support backups across
the network. You can use a pipeline and
<citerefentry><refentrytitle>rsh</refentrytitle><manvolnum>1</manvolnum></citerefentry> to send the data to a remote tape
drive. (XXX add an example command)</para>
</sect4>
<sect4>
<title>Pax</title>
<para><citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> is IEEE/POSIX's answer to
<command>tar</command> and <command>cpio</command>. Over the years the various
versions of <command>tar</command> and <command>cpio</command> have gotten slightly incompatible.
So rather than fight it out to fully standardize them, POSIX
created a new archive utility. <command>pax</command> attempts to read and write many of
the various cpio and tar formats, plus new formats of its own.
Its command set more resembles <command>cpio</command> than <command>tar</command>.</para>
</sect4>
<sect4 id="hw-storage-amanda">
<title><ulink
URL="http://www.freebsd.org/ports/misc.html#amanda-2.2.6.5">Amanda</ulink></title>
<para>Amanda (Advanced Maryland Network Disk Archiver) is a
client/server backup system, rather than a single program. An
Amanda server will backup to a single tape drive any number of
computers that have Amanda clients and network communications
with the Amanda server. A common problem at locations with a
number of large disks is the length of time required to backup
to data directly to tape exceeds the amount of time available
for the task. Amanda solves this problem. Amanda can use a
&ldquo;holding disk&rdquo; to backup several filesystems at the same time.
Amanda creates &ldquo;archive sets&rdquo;: a group of tapes used over a
period of time to create full backups of all the filesystems
listed in Amanda's configuration file. The &ldquo;archive set&rdquo; also
contains nightly incremental (or differential) backups of all
the filesystems. Restoring a damaged filesystem requires the
most recent full backup and the incremental backups.</para>
<para>The configuration file provides fine control backups and
the network traffic that Amanda generates. Amanda will use
any of the above backup programs to write the data to tape.
Amanda is available as either a port or a package, it is not
installed by default.</para>
</sect4>
<sect4>
<title>Do nothing</title>
<para>&ldquo;Do nothing&rdquo; is not a computer program, but it is the most
widely used backup strategy. There are no initial costs.
There is no backup schedule to follow. Just say no. If
something happens to your data, grin and bear it!</para>
<para>If your time and your data is worth little to nothing,
then &ldquo;Do nothing&rdquo; is the most suitable backup program for your
computer. But beware, Unix is a useful tool, you may find
that within six months you have a collection of files that are
valuable to you.</para>
<para>&ldquo;Do nothing&rdquo; is the correct backup method for
<filename>/usr/obj</filename> and other directory trees that
can be exactly recreated by your computer. An example is the
files that comprise these handbook pages-they have been
generated from <acronym>SGML</acronym> input files. Creating
backups of these <acronym>HTML</acronym> files is not
necessary. The <acronym>SGML</acronym> source files are
backed up regularly.</para>
</sect4>
<sect4>
<title>Which Backup Program is Best?</title>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> <emphasis>Period.</emphasis>
Elizabeth D. Zwicky torture tested all the backup programs
discussed here. The clear choice for preserving all your data
and all the peculiarities of Unix filesystems is
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Elizabeth created filesystems
containing a large variety of unusual conditions (and some not
so unusual ones) and tested each program by do a backup and
restore of that filesystems. The peculiarities included:
files with holes, files with holes and a block of nulls, files
with funny characters in their names, unreadable and
unwritable files, devices, files that change size during the
backup, files that are created/deleted during the backup and
more. She presented the results at LISA V in Oct.
1991.</para>
</sect4>
</sect3>
<sect3>
<title>Emergency Restore Procedure</title>
<sect4>
<title>Before the Disaster</title>
<para>There are only four steps that you need to perform in
preparation for any disaster that may occur.</para>
<procedure>
<step>
<para>Print the disklabel from each of your disks
(e.g., <command>disklabel sd0 | lpr</command>), your
filesystem table (<filename>/etc/fstab</filename>) and all
boot messages, two copies of each.</para>
</step>
<step>
<para>Determine the boot and fixit floppies (<filename>boot.flp</filename>
and <filename>fixit.flp</filename>) have all your devices. The easiest way to
check is to reboot your machine with the boot floppy in the
floppy drive and check the boot messages. If all your devices
are listed and functional, skip on to step three.</para>
<para>Otherwise, you have to create two custom bootable floppies
which has a kernel that can mount your all of your disks and
access your tape drive. These floppies must contain:
<citerefentry><refentrytitle>fdisk</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>disklabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>newfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>, and
whichever backup program you use. These programs must be
statically linked. If you use <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>, the
floppy must contain <citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
</step>
<step>
<para>Create backup tapes regularly. Any changes that you
make after your last backup may be irretrievably lost.
Write-protect the backup tapes.</para>
</step>
<step>
<para>Test the floppies (either <filename>boot.flp</filename> and <filename>fixit.flp</filename>
or the two custom bootable floppies you made in step two.)
and backup tapes. Make notes of the procedure. Store these
notes with the bootable floppy, the printouts and the backup
tapes. You will be so distraught when restoring that the
notes may prevent you from destroying your backup tapes (How?
In place of <command>tar xvf /dev/rst0</command>, you might
accidently type <command> tar cvf /dev/rst0</command> and
over-write your backup tape).</para>
<para>For an added measure of security, make bootable floppies
and two backup tapes each time. Store one of each at a remote
location. A remote location is NOT the basement of the same
office building. A number of firms in the World Trade Center
learned this lesson the hard way. A remote location should be
physically separated from your computers and disk drives by a
significant distance.</para>
<para>An example script for creating a bootable floppy:</para>
<programlisting>
#!/bin/sh
#
# create a restore floppy
#
# format the floppy
#
PATH=/bin:/sbin:/usr/sbin:/usr/bin
fdformat -q fd0
if [ $? -ne 0 ]
then
echo "Bad floppy, please use a new one"
exit 1
fi
# place boot blocks on the floppy
#
disklabel -w -B -b /usr/mdec/fdboot -s /usr/mdec/bootfd /dev/rfd0c fd1440
#
# newfs the one and only partition
#
newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/rfd0
#
# mount the new floppy
#
mount /dev/fd0a /mnt
#
# create required directories
#
mkdir /mnt/dev
mkdir /mnt/bin
mkdir /mnt/sbin
mkdir /mnt/etc
mkdir /mnt/root
mkdir /mnt/mnt # for the root partition
mkdir /mnt/tmp
mkdir /mnt/var
#
# populate the directories
#
if [ ! -x /sys/compile/MINI/kernel ]
then
cat &lt;&lt; EOM
The MINI kernel does not exist, please create one.
Here is an example config file:
#
# MINI -- A kernel to get FreeBSD on onto a disk.
#
machine "i386"
cpu "I486_CPU"
ident MINI
maxusers 5
options INET # needed for _tcp _icmpstat _ipstat
# _udpstat _tcpstat _udb
options FFS #Berkeley Fast File System
options FAT_CURSOR #block cursor in syscons or pccons
options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device
options NCONS=2 #1 virtual consoles
options USERCONFIG #Allow user configuration with -c XXX
config kernel root on sd0 swap on sd0 and sd1 dumps on sd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller ncr0
controller scbus0
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
device sd0
device sd1
device sd2
device st0
pseudo-device loop # required by INET
pseudo-device gzip # Exec gzipped a.out's
EOM
exit 1
fi
cp -f /sys/compile/MINI/kernel /mnt
gzip -c -best /sbin/init &gt; /mnt/sbin/init
gzip -c -best /sbin/fsck &gt; /mnt/sbin/fsck
gzip -c -best /sbin/mount &gt; /mnt/sbin/mount
gzip -c -best /sbin/halt &gt; /mnt/sbin/halt
gzip -c -best /sbin/restore &gt; /mnt/sbin/restore
gzip -c -best /bin/sh &gt; /mnt/bin/sh
gzip -c -best /bin/sync &gt; /mnt/bin/sync
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV sd0
./MAKEDEV sd1
./MAKEDEV sd2
./MAKEDEV st0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat &gt; /mnt/etc/fstab &lt;&lt;EOM
/dev/fd0a / ufs rw 1 1
EOM
#
# create minimum passwd file
#
cat &gt; /mnt/etc/passwd &lt;&lt;EOM
root:*:0:0:Charlie &amp;:/root:/bin/sh
EOM
cat &gt; /mnt/etc/master.passwd &lt;&lt;EOM
root::0:0::0:0:Charlie &amp;:/root:/bin/sh
EOM
chmod 600 /mnt/etc/master.passwd
chmod 644 /mnt/etc/passwd
/usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd
#
# umount the floppy and inform the user
#
/sbin/umount /mnt</programlisting>
</step>
</procedure>
</sect4>
<sect4>
<title>After the Disaster</title>
<para>The key question is: did your hardware survive? You have
been doing regular backups so there is no need to worry about
the software.</para>
<para>If the hardware has been damaged. First, replace those
parts that have been damaged.</para>
<para>If your hardware is okay, check your floppies. If you are
using a custom boot floppy, boot single-user (type <option>-s</option> at the
<prompt>boot:</prompt> prompt). Skip the following paragraph.</para>
<para>If you are using the boot.flp and fixit.flp floppies, keep
reading. Insert the boot.flp floppy in the first floppy drive
and boot the computer. The original install menu will be
displayed on the screen. Select the "Fixit--Repair mode with
CDROM or floppy." option. Insert the <filename>fixit.flp</filename> when prompted.
<command>restore</command> and the other programs
that you need are located in
<filename>/mnt2/stand</filename>.</para>
<para>Recover each filesystem separately.</para>
<para>Try to <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> (e.g. <command>mount /dev/sd0a /mnt</command>) the root partition of your first disk. If
the disklabel was damaged, use <citerefentry><refentrytitle>disklabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>
to re-partition and label the disk to match the label that
your printed and saved. Use <citerefentry><refentrytitle>newfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> to
re-create the filesystems. Re-mount the root partition of the
floppy read-write (<command>mount -u -o rw /mnt</command>).
Use your backup program and backup tapes to recover the data
for this filesystem (e.g. <command>restore vrf
/dev/st0</command>). Unmount the filesystem (e.g.
<filename>umount /mnt</filename>) Repeat for each filesystem
that was damaged.</para>
<para>Once your system is running, backup your data onto new
tapes. Whatever caused the crash or data loss may strike
again. An another hour spent now, may save you from further
distress later.</para>
</sect4>
<sect4>
<title>* I did not prepare for the Disaster, What Now?</title>
<para></para>
</sect4>
</sect3>
</sect2>
</sect1>
<sect1 id="hw-other">

View file

@ -15,10 +15,13 @@
between FreeBSD and your hardware which may, in turn, dictate which
installation options are even possible. It can also provide early
clues to any compatibility problems which could prevent FreeBSD
running on your system at all. If you plan on installing via
anonymous FTP then this installation disk is all you need to download
(the installation will handle any further required downloading
itself).</para>
running on your system at all.</para>
<para>If you plan on installing via
anonymous FTP then this installation floppy is all you need to
download and create&mdash;the installation program itself will handle
any further required downloading directly (using an ethernet connection,
a modem and ppp dialip #, etc).</para>
<para>For more information on obtaining the latest FreeBSD
distributions, please see <link linkend="mirrors">Obtaining
@ -180,6 +183,11 @@ Boot:
cause a later probe for another device that is present to fail. In
that case, the probes for the conflicting driver(s) should be
disabled.</para>
<warning>
<para>Do not disable any device you will need during installation, such
as your screen (<devicename>sc0</devicename>).</para>
</warning>
<para>In the configuration mode, you can:</para>

View file

@ -286,7 +286,7 @@
point paging will be enabled and the kernel will finally run at the
address for which it was linked.</para>
<para><emphasis>Contributed by &a.davidg;.<!-- <br> --> 16 Apr
<para><emphasis>Contributed by &a.dg;.<!-- <br> --> 16 Apr
1995.</emphasis></para>
<para>The physical pages immediately following the kernel BSS contain

View file

@ -102,7 +102,7 @@
</listitem>
<listitem>
<para>A full compliment of <emphasis>C</emphasis>,
<para>A full complement of <emphasis>C</emphasis>,
<emphasis>C++</emphasis> and <emphasis>Fortran</emphasis> development tools. Many
additional languages for advanced research and development are
also available in the ports and packages collection.</para>
@ -245,7 +245,7 @@
<listitem>
<para><emphasis>Software Development:</emphasis> The
basic FreeBSD system comes with a full compliment of
basic FreeBSD system comes with a full complement of
development tools including the renowned GNU C/C++ compiler
and debugger.</para>
</listitem>
@ -348,8 +348,9 @@
(&ldquo;-current&rdquo;) in November 1996 as the RELENG_2_2 branch, and the
first full release (2.2.1) was released in April, 1997. Further
releases along the 2.2 branch were done in the Summer and Fall of
'97, the latest being 2.2.6 which appeared in late March of '98.
The first official 3.0 release will appear later in 1998.</para>
'97, the latest being 2.2.7 which appeared in late July of '98.
The first official 3.0 release will appear in October, 1998 and the
last release on the 2.2 branch, 2.2.8, will appear in November.</para>
<para>Long term development projects for everything from SMP to DEC
ALPHA support will continue to take place in the 3.0-current branch
@ -539,7 +540,7 @@
<para>In addition to the base distributions, FreeBSD offers a new
ported software collection with hundreds of commonly sought-after
programs. At the end of March 1998 there were more than 1300 ports!
programs. At the end of August 1998 there were more than 1700 ports!
The list of ports ranges from http (WWW) servers, to games,
languages, editors and almost everything in between. The entire
ports collection requires approximately 26MB of storage, all ports

View file

@ -1118,16 +1118,7 @@
<listitem>
<para>AT&amp;T StarLAN 10 and EN100; 3Com 3C507;
unknown NI5210</para>
</listitem>
</varlistentry>
<varlistentry><term><literal>device ix0 at isa? port 0x300 net
irq 10 iomem 0xd0000 iosiz 32768 vector
ixintr</literal></term>
<listitem>
<para>Intel EtherExpress 16</para>
unknown NI5210; Intel EtherExpress 16</para>
</listitem>
</varlistentry>

View file

@ -13,7 +13,13 @@
is too small to hold the dump, you can configure your kernel to use
an alternate dump device (in the <literal>config
kernel</literal> line), or you can specify an alternate using the
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. Dumps to non-swap devices, tapes for example,
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. The best way to use <citerefentry>
<refentrytitle>dumpon</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> is to set the <literal>dumpdev</literal> variable in
<filename>/etc/rc.conf</filename>. Typically you want to specify one of
the swap devices specified in <filename>/etc/fstab</filename>.
Dumps to non-swap devices, tapes for example,
are currently not supported. Config your kernel using
<command>config -g</command>. See <link linkend="kernelconfig">Kernel
Configuration</link> for
@ -232,7 +238,23 @@
</sect1>
<sect1>
<title>Debugging a crash dump with DDD</title>
<para>Examining a kernel crash dump with a graphical debugger like
<command>ddd</command> is also possible. Add the <option>-k</option>
option to the <command>ddd</command> command line you would use
normally. For example;</para>
<informalexample>
<screen>&prompt.root; <userinput>ddd -k /var/crash/kernel.0 /var/crash/vmcore.0</userinput></screen>
</informalexample>
<para>You should then be able to go about looking at the crash dump using
<command>ddd</command>'d graphical interface.</para>
</sect1>
<sect1>
<title>Post-mortem Analysis of a Dump</title>

View file

@ -11,7 +11,7 @@
possible to run a large fraction of Linux binaries in both a.out and
ELF format. The linux emulation in the 2.1-STABLE branch is capable
of running Linux DOOM and Mathematica; the version present in
FreeBSD-2.2-RELEASE is vastly more capable and runs all these as
&rel.current;-RELEASE is vastly more capable and runs all these as
well as Quake, Abuse, IDL, netrek for Linux and a whole host of
other programs.</para>
@ -22,11 +22,6 @@
filesystem) or i386-specific calls, such as enabling virtual 8086
mode.</para>
<para>To tell whether your kernel is configured for Linux
compatibility simply run any Linux binary. If it prints the error
message <errorname>linux-executable: Exec format error. Wrong Architecture.</errorname> then you do not have linux compatibility support
and you need to configure and install a new kernel.</para>
<para>Depending on which version of FreeBSD you are running, how you
get Linux-emulation up will vary slightly:</para>
@ -180,7 +175,7 @@ options LINUX</programlisting>
just grab the linux_lib port:</para>
<informalexample>
<screen>&prompt.root; <userinput>cd /usr/ports-current/emulators/linux_lib</userinput>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_lib</userinput>
&prompt.root; <userinput>make all install</userinput></screen>
</informalexample>
@ -188,10 +183,9 @@ options LINUX</programlisting>
the mail archives <!-- smiley -->:-) seems to hold that Linux emulation works
best with linux binaries linked against the ZMAGIC libraries;
QMAGIC libraries (such as those used in Slackware V2.0) may tend
to give the Linuxulator heartburn. As of this writing (March
1996) ELF emulation is still in the formulative stages but seems
to work pretty well. Also, expect some programs to complain
about incorrect minor versions. In general this does not seem
to give the Linuxulator heartburn. Also, expect some programs to complain
about incorrect minor versions of the system libraries. In
general, however, this does not seem
to be a problem.</para>
</sect3>
@ -216,7 +210,7 @@ options LINUX</programlisting>
that the Linux <command>ld.so</command> reports.</para>
<para>FreeBSD-2.2-RELEASE and later works slightly differently
with respect to <command>/compat/linux</command>. On -CURRENT, all files, not just
with respect to <filename>/compat/linux</filename>: all files, not just
libraries, are searched for from the &ldquo;shadow root&rdquo;
<filename>/compat/linux</filename>.</para>
@ -240,7 +234,7 @@ options LINUX</programlisting>
do the necessary installation steps).</para>
<para>If you have access to a Linux system, see what shared
libraries it needs, and copy them to your FreeBSD system.
libraries the application needs, and copy them to your FreeBSD system.
Example: you have just ftp'ed the Linux binary of Doom. Put it
on the Linux system you have access to, and check which shared
libraries it needs by running <command>ldd linuxxdoom</command>:</para>
@ -313,7 +307,7 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
<sect3>
<title>Configuring the <filename>ld.so</filename> &mdash; for FreeBSD
2.2-RELEASE only</title>
2.2-RELEASE and later</title>
<para>This section applies only to FreeBSD 2.2-RELEASE and later.
Those running 2.1-STABLE should skip this section.</para>
@ -424,7 +418,35 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
</sect3>
</sect2>
<sect2>
<title>Installing Linux ELF binaries</title>
<para>ELF binaries sometimes require an extra step of
&ldquo;branding&rdquo;. If you attempt to run an unbranded ELF binary,
you will get an error message like the following;</para>
<informalexample>
<screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput>
ELF binary type not known
Abort</screen>
</informalexample>
<para>To help the FreeBSD kernel distinguish between a FreeBSD ELF
binary from a Linux one, use the <citerefentry>
<refentrytitle>brandelf</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> utility.</para>
<informalexample>
<screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen>
</informalexample>
<para>The GNU toolchain now places the appropriate branding information
into ELF binaries automatically, so you should be needing to do this
step increasingly rarely in future.</para>
</sect2>
<sect2>
<title>Configuring the host name resolver</title>
@ -455,7 +477,7 @@ multi on</programlisting>
<para>Lastly, those who run 2.1-STABLE need to set an the
<envar>RESOLV_HOST_CONF</envar> environment variable so that applications will
know how to search the host tables. If you run FreeBSD
2.2-RELEASE, you can skip this. For the
2.2-RELEASE or later, you can skip this. For the
<filename>/bin/csh</filename> shell use:</para>
<informalexample>
@ -507,7 +529,7 @@ multi on</programlisting>
</listitem>
<listitem>
<para>ftp.demon.co.uk:/pub/linux/distributions</para>
<para>ftp.demon.co.uk:/pub/unix/linux</para>
</listitem>
<listitem>

View file

@ -41,6 +41,7 @@
<link linkend="mirrors-cz">Czech Republic</link>,
<link linkend="mirrors-dk">Denmark</link>,
<link linkend="mirrors-ee">Estonia</link>,
<link linkend="mirrors-es">Spain</link>,
<link linkend="mirrors-fi">Finland</link>,
<link linkend="mirrors-fr">France</link>,
<link linkend="mirrors-de">Germany</link>,
@ -54,6 +55,7 @@
<link linkend="mirrors-pt">Portugal</link>,
<link linkend="mirrors-ru">Russia</link>,
<link linkend="mirrors-za">South Africa</link>,
<link linkend="mirrors-sk">Slovak Republic</link>,
<link linkend="mirrors-si">Slovenia</link>,
<link linkend="mirrors-se">Sweden</link>,
<link linkend="mirrors-tw">Taiwan</link>,
@ -534,7 +536,10 @@
<para><ulink
URL="ftp://ftp3.ru.freebsd.org/pub/FreeBSD">ftp://ftp3.ru.freebsd.org/pub/FreeBSD</ulink><!-- <br> --></para>
</listitem>
<listitem>
<para><ulink url="ftp://ftp4.ru.freebsd.org/pub/FreeBSD">ftp://ftp4.ru.freebsd.org/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
@ -568,7 +573,22 @@
</listitem>
</varlistentry>
<varlistentry>
<term><anchor id="mirrors-sk">Slovak Republic</term>
<listitem>
<para>In case of problems, please contact the hostmaster
<email>hostmaster@sk.FreeBSD.ORG</email> for this domain.</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://ftp.sk.freebsd.ORG/pub/FreeBSD">ftp://ftp.sk.freebsd.ORG/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term><anchor id="mirrors-si">Slovenia</term>
<listitem>
@ -587,7 +607,22 @@
</listitem>
</varlistentry>
<varlistentry>
<term><anchor id="mirrors-es">Spain</term>
<listitem>
<para>In case of problems, please contact the hostmaster
<email>hostmaster@es.FreeBSD.ORG</email> for this domain.</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://ftp.es.freebsd.ORG/pub/FreeBSD">ftp://ftp.es.freebsd.ORG/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term><anchor id="mirrors-se">Sweden</term>
<listitem>
@ -978,7 +1013,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Denmark</term>
<listitem>
<para>cvsup.dk.FreeBSD.ORG (maintainer
<email>jesper@skriver.dk</email>)</para>
</listitem>
</varlistentry>
<varlistentry><term>Estonia</term>
<listitem>
@ -1031,7 +1075,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Iceland</term>
<listitem>
<para>cvsup.is.FreeBSD.ORG (maintainer
<email>adam@veda.is</email>)</para>
</listitem>
</varlistentry>
<varlistentry><term>Japan</term>
<listitem>
@ -1045,7 +1098,21 @@
<listitem>
<para>cvsup2.jp.FreeBSD.ORG (maintainer <email>max@FreeBSD.ORG</email>)</para>
</listitem>
<listitem>
<para>cvsup3.jp.FreeBSD.ORG (maintainer
<email>shige@cin.nihon-u.ac.jp</email>)</para>
</listitem>
<listitem>
<para>cvsup4.jp.FreeBSD.ORG (maintainer
<email>cvsup-admin@ftp.media.kyoto-u.ac.jp</email>)</para>
</listitem>
<listitem>
<para>cvsup5.jp.FreeBSD.ORG (maintainer
<email>cvsup@imasy.or.jp</email>)</para>
</listitem>
</itemizedlist>
</listitem>
@ -1058,7 +1125,7 @@
<itemizedlist>
<listitem>
<para>cvsup.nl.FreeBSD.ORG (maintainer <email>xaa@stack.nl</email>)</para>
<para>cvsup.nl.FreeBSD.ORG (maintainer <email>xaa@xaa.iae.nl</email>)</para>
</listitem>
</itemizedlist>
@ -1095,7 +1162,25 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Slovak Republic</term>
<listitem>
<itemizedlist>
<listitem>
<para>cvsup.sk.FreeBSD.ORG (maintainer
<email>tps@tps.sk</email>)</para>
</listitem>
<listitem>
<para>cvsup2.sk.FreeBSD.ORG (maintainer
<email>tps@tps.sk</email>)</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term>South Africa</term>
<listitem>

View file

@ -121,29 +121,38 @@ IVNhdG9zaGkgQXNhbWkgPGFzYW1pQEZyZWVCU0QuT1JHPg==
<programlisting>
Jonathan M. Bresler &lt;jmb@FreeBSD.org&gt;
Key fingerprint = 31 57 41 56 06 C1 40 13 C5 1C E3 E5 DC 62 0E FB
f16 Fingerprint16 = 31 57 41 56 06 C1 40 13 C5 1C E3 E5 DC 62 0E FB
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2
Version: PGPfreeware 5.0i for non-commercial use
mQCNAzG2GToAAAEEANI6+4SJAAgBpl53XcfEr1M9wZyBqC0tzpie7Zm4vhv3hO8s
o5BizSbcJheQimQiZAY4OnlrCpPxijMFSaihshs/VMAz1qbisUYAMqwGEO/T4QIB
nWNo0Q/qOniLMxUrxS1RpeW5vbghErHBKUX9GVhxbiVfbwc4wAHbXdKX5jjdAAUR
tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNA3x
ffUVW/uOVC1dAQHGdAQAgsnYklBtVUdGuQwXB3bYp9omTD7CVD0aibVrz+lXiPDh
aTVkOC1uhEwL59+R8VdpAnEDMobdZDA/ihCc+6/FW/eE0uyrWZzb5Ng9V1MfC6HI
+sXpeXPy585Z56ewadV2yY9rvzcwmmUNHmAXT/5O0S2AWB0EJZ+cewTrokSTVVOJ
AJUDBRA0C3EoVS4eLnPSiKUBASb+A/95g6w9DDPRGDlbsl4pN1BlSPKrmDQPRK1X
C3bddDY2HNelSNhzp2FYD0WoN1re1vMJV0oaaJHwv7wjbe3+SYEX/IdmtfzI0MbZ
Q/uPybPJOxi2ud6C6J+mEGJN9iBCnsaCz8CETuC9gR1mtxsxySUj9mk0fxKfdP6S
3QDrv6CQ1IkAlQMFEDKsi9CzWmLrWZ8yPQEBduUD/RhV4Qa89rYls9vtIFm6XBjZ
8mW37FYxeqIxg3ZrIyTMlghsOPV0f7zymCCWPRGKOLePRiGo0ZCEkDTYiM9tnwQI
09rmPWJb50yfTSZXjHx6+Hcm6O6BCmDFloo0Mxo6n9pvMH/TmmqHxCsAV+p8XEWy
rMZvwVSynMxmJd17Y5HLtBNKb25hdGhhbiBNLiBCcmVzbGVyiQCVAwUQMbYtYQHb
XdKX5jjdAQHEHwP/fEaQoTi7zKD1U/5kW2YPIBUyMTpLiO9QOr4stYjJvhHh4Ejw
fGvMIhbFrPKtxSNH1s3m4jAXKXiQBDCz17IIzL4n8dlunxNGE5MHcsmpWzggyIg4
zbPqPOcg4gLFEWsEkr2o0akwzIGa3tbCvC+ITaX/rdlWV1jaQjTqSNyPZBM=
=RV56
tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNbtI
gAHbXdKX5jjdAQHamQP+OQr10QRknamIPmuHmFYJZ0jU9XPIvTTMuOiUYLcXlTdn
GyTUuzhbEywgtOldW2V5iA8platXThtqC68NsnN/xQfHA5xmFXVbayNKn8H5stDY
2s/4+CZ06mmJfqYmONF1RCbUk/M84rVT3Gn2tydsxFh4Pm32lf4WREZWRiLqmw+J
AJUDBRA0DfF99RVb+45ULV0BAcZ0BACCydiSUG1VR0a5DBcHdtin2iZMPsJUPRqJ
tWvP6VeI8OFpNWQ4LW6ETAvn35HxV2kCcQMyht1kMD+KEJz7r8Vb94TS7KtZnNvk
2D1XUx8Locj6xel5c/Lnzlnnp7Bp1XbJj2u/NzCaZQ0eYBdP/k7RLYBYHQQln5x7
BOuiRJNVU4kAlQMFEDQLcShVLh4uc9KIpQEBJv4D/3mDrD0MM9EYOVuyXik3UGVI
8quYNA9ErVcLdt10NjYc16VI2HOnYVgPRag3Wt7W8wlXShpokfC/vCNt7f5JgRf8
h2a1/MjQxtlD+4/Js8k7GLa53oLon6YQYk32IEKexoLPwIRO4L2BHWa3GzHJJSP2
aTR/Ep90/pLdAOu/oJDUiQCVAwUQMqyL0LNaYutZnzI9AQF25QP9GFXhBrz2tiWz
2+0gWbpcGNnyZbfsVjF6ojGDdmsjJMyWCGw49XR/vPKYIJY9EYo4t49GIajRkISQ
NNiIz22fBAjT2uY9YlvnTJ9NJleMfHr4dybo7oEKYMWWijQzGjqf2m8wf9OaaofE
KwBX6nxcRbKsxm/BVLKczGYl3XtjkcuJAJUDBRA1ol5TZWCprDT5+dUBATzXA/9h
/ZUuhoRKTWViaistGJfWi26FB/Km5nDQBr/Erw3XksQCMwTLyEugg6dahQ1u9Y5E
5tKPxbB69eF+7JXVHE/z3zizR6VL3sdRx74TPacPsdhZRjChEQc0htLLYAPkJrFP
VAzAlSlm7qd+MXf8fJovQs6xPtZJXukQukPNlhqZ94kAPwMFEDSH/kF4tXKgazlt
bxECfk4AoO+VaFVfguUkWX10pPSSfvPyPKqiAJ4xn8RSIe1ttmnqkkDMhLh00mKj
lLQuSm9uYXRoYW4gTS4gQnJlc2xlciA8Sm9uYXRoYW4uQnJlc2xlckBVU2kubmV0
PokAlQMFEDXbdSkB213Sl+Y43QEBV/4D/RLJNTrtAqJ1ATxXWv9g8Cr3/YF0GTmx
5dIrJOpBup7eSSmiM/BL9Is4YMsoVbXCI/8TqA67TMICvq35PZU4wboQB8DqBAr+
gQ8578M7Ekw1OAF6JXY6AF2P8k7hMcVBcVOACELPT/NyPNByG5QRDoNmlsokJaWU
/2ls4QSBZZlb
=zbCw
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>
@ -219,23 +228,29 @@ Jordan K. Hubbard &lt;jkh@FreeBSD.org&gt;
Fingerprint = 3C F2 27 7E 4A 6C 09 0A 4B C9 47 CD 4F 4D 0B 20
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2i
Version: 2.6.3ia
mQCNAzFjX0IAAAEEAML+nm9/kDNPp43ZUZGjYkm2QLtoC1Wxr8JulZXqk7qmhYcQ
jvX+fyoriJ6/7ZlnLe2oG5j9tZOnRLPvMaz0g9CpW6Dz3nkXrNPkmOFV9B8D94Mk
tyFeRJFqnkCuqBj6D+H8FtBwEeeTecSh2tJ0bZZTXnAMhxeOdvUVW/uOVC1dAAUR
tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPokAlQMFEDF75D1r
WmeNgbKneQEBXtcD+gJIv8JzZRKlDZyTCQanK8iRgE+zMhxptI0kDObaGxT1BrpY
4/EPyiUN10G4k2Jb+DOc8Lg2xDQ3xmvgipFf9NMNV/ThaEuZ3wA31I6tW/arQEqB
Tp8u6T3v20m62t7Afo9HaoE6MBpHQUk2TilxgAd5P57sporL3pgW9YojIO9ziQCV
AwUQMXyV2h9/qQgDWPy9AQEMfgP/RmbSg2WlesATUQ4WuanjcdREduKPyfQatrXD
2xt+jg9X78dTyiNN1YvLqvT6msfs04MKSC0hA2mou6ozw8Xak+1QmP0fBOZKp9pP
8szO188Do9ByzJPvHF1eXT7jFMOXVq8ZIl9iwjxcIDLzlxOz49DC7LO6AT+LKQk7
UGeP+lqJAJUDBRAxe+UG9RVb+45ULV0BAXZ9A/9F9gLpGukVNkeOjaqxQdJGTS+a
xh/Abk0c/nKhAEyxpAl5JyQ3ifYk6BHhPvlTi9LrZoXGA8sk/eU4eRTZVzvGEC4G
+xsavlE/xzku8855QTLPpkCunUpQeu1wzaIrUUE6Zjh05imFbJYyQOBgTFpuqWsC
rsUpl+2mr8IGIxG5rA==
=LW9i
tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPokBFQMFEDXCTXQM
j46yp4IfPQEBwO8IAIN0J09AXBf86dFUTFGcAMrEQqOF5IL+KGorAjzuYxERhKfD
ZV7jA+sCQqxkWfcVcE20kVyVYqzZIkio9a5zXP6TwA247JkPt54S1PmMDYHNlRIY
laXlNoji+4q3HP2DfHqXRT2859rYpm/fG/v6pWkos5voPKcZ2OFEp9W+Ap88oqw+
5rx4VetZNJq1Epmis4INj6XqNqj85+MOOIYE+f445ohDM6B/Mxazd6cHFGGIR+az
VjZ6lCDMLjzhB5+FqfrDLYuMjqkMTR5z9DL+psUvPlCkYbQ11NEWtEmiIWjUcNJN
GCxGzv5bXk0XPu3ADwbPkFE2usW1cSM7AQFiwuyJAJUDBRAxe+Q9a1pnjYGyp3kB
AV7XA/oCSL/Cc2USpQ2ckwkGpyvIkYBPszIcabSNJAzm2hsU9Qa6WOPxD8olDddB
uJNiW/gznPC4NsQ0N8Zr4IqRX/TTDVf04WhLmd8AN9SOrVv2q0BKgU6fLuk979tJ
utrewH6PR2qBOjAaR0FJNk4pcYAHeT+e7KaKy96YFvWKIyDvc4kAlQMFEDF8ldof
f6kIA1j8vQEBDH4D/0Zm0oNlpXrAE1EOFrmp43HURHbij8n0Gra1w9sbfo4PV+/H
U8ojTdWLy6r0+prH7NODCkgtIQNpqLuqM8PF2pPtUJj9HwTmSqfaT/LMztfPA6PQ
csyT7xxdXl0+4xTDl1avGSJfYsI8XCAy85cTs+PQwuyzugE/iykJO1Bnj/paiQCV
AwUQMXvlBvUVW/uOVC1dAQF2fQP/RfYC6RrpFTZHjo2qsUHSRk0vmsYfwG5NHP5y
oQBMsaQJeSckN4n2JOgR4T75U4vS62aFxgPLJP3lOHkU2Vc7xhAuBvsbGr5RP8c5
LvPOeUEyz6ZArp1KUHrtcM2iK1FBOmY4dOYphWyWMkDgYExabqlrAq7FKZftpq/C
BiMRuaw=
=C/Jw
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>
@ -252,27 +267,30 @@ Version: 2.6.3ia
mQCNAzAdpMIAAAEEALHDgrFUwhZtb7PbXg3upELoDVEUPFRwnmpJH1rRqyROUGcI
ooVe7u+FQlIs5OsXK8ECs/5Wpe2UrZSzHvjwBYOND5H42YtI5UULZLRCo5bFfTVA
K9Rpo5icfTsYihrzU2nmnycwFMk+jYXyT/ZDYWDP/BM9iLjj0x9/qQgDWPy9AAUR
tCNQb3VsLUhlbm5pbmcgS2FtcCA8cGhrQEZyZWVCU0Qub3JnPokAlQMFEDMGK9qz
WmLrWZ8yPQEB4iED/18bQVhV2gUYFSxIUTaUtO2HVPi7GRpSzmXoTfS+FJyRR0ED
zTqTHstoBe2PeWgTsOf9cUub5UKcJkRQp7VrJv4Kncyuq7pX69a+QMveCzuUwAur
nDbt/emOL6NU8g9Uk50QuOuipb5rULQLRRoF5TkViy/VES83ERXdYQ9Ml3fWiQCV
AwUQMX6NfWtaZ42Bsqd5AQEKsgP+L+uLz95dRdEmnZ+omrO+tYZM/0jHU7i8yC5q
H0gguKOCljI4liR7NkqKONUJWYtfsTB81d9iSosBZRrTx6i/hB8l8kOB975n/f9S
hftFwmjLYCNMFlDM4j0kySvMV20UZjAyv9BeE51VWlIZ5n/oeSuzul3Znow02tF/
zVnInJiJAJUDBRAxfJXn9RVb+45ULV0BAXJ8A/9K6NT6VLZZC5q3g7bBk5DWuzBS
3oK2Ebww6xzsD2R9edltoz1J3GPngK0CWpHh4kw5iTaRWoC2YJYRNG6icnGvlMAl
1/urqQHJVhxATINm8oljDKsj1RBJ6VKBzNbCJIHTVpX0AJoqUQX2Idi8goFr0fAm
7cD2CBb1JhoAdzEfO4kAlQMFEDFLHlwff6kIA1j8vQEBj5MD/1hA8hJdhpL7mvQj
rTAIn6Ldr08Lr1lqTaKSBMdCL3suGlW0Sw/dIBgicPDhgxLahT3DVfGiIst32FSl
xmWY7wine80X4TZkJ9Hiw3Mpqtjl92j6zHNq0ZZE+CceNubpEdYLDqokAIMPdWlo
WPHZcPxCs5PKI5udseFYF2gQAjI2iQCVAwUQMTlDoO9huekR1Y7VAQGy+AP/Rzp+
UGtJavbSiPx5EnXOXxkA/+ulXQgQG9vdkWwewkvxDNOzHW3KkUWCGtPtIMENznbF
j3QlYB+USIaf1ogvlD5EdXGPDfTINpE8CX2WXzajfgYFpYETDzduwjoWDZfEN9zZ
fQqQS62VgAReOIz3k9BL708z/+WUO0++RLGCmImJAJUDBRAw5q8kAPLZCeu7G0EB
AT3bBACwo+r9TgbiSyyU5cZpq5KgGT1c7eUHXjtxKmtrXD1nFNJ6j7x2DM2XGe6B
YOfDWbFq4UkEAyAeXviuuUP4enQu1v2g7JGXeuI8bRM519pLdPzDq/DnbA4rNStn
/SkH7awMfNSplcFuE6rc5ezVkw17eOHzDrYmwsFavL9gxZEycg==
=Q45T
tCNQb3VsLUhlbm5pbmcgS2FtcCA8cGhrQEZyZWVCU0Qub3JnPokAlQMFEDQQ0aZ1
u244dqP3sQEBu4ID/jXFFeJgs2MdTDNOZM/FbfDhI4qxAbYUsqS3+Ra16yd8Wd/A
jV+IHJE2NomFWl8UrUjCGinXiwzPgK1OfFJrS9Og1wQLvAl0X84BA8MTP9BQr4w7
6I/RbksgUSrVCIO8MJwlydjSPocWGBeXlVjbZxXzyuJk7H+TG+zuI5BuBcNIiQCV
AwUQMwYr2rNaYutZnzI9AQHiIQP/XxtBWFXaBRgVLEhRNpS07YdU+LsZGlLOZehN
9L4UnJFHQQPNOpMey2gF7Y95aBOw5/1xS5vlQpwmRFCntWsm/gqdzK6rulfr1r5A
y94LO5TAC6ucNu396Y4vo1TyD1STnRC466KlvmtQtAtFGgXlORWLL9URLzcRFd1h
D0yXd9aJAJUDBRAxfo19a1pnjYGyp3kBAQqyA/4v64vP3l1F0Sadn6ias761hkz/
SMdTuLzILmofSCC4o4KWMjiWJHs2Soo41QlZi1+xMHzV32JKiwFlGtPHqL+EHyXy
Q4H3vmf9/1KF+0XCaMtgI0wWUMziPSTJK8xXbRRmMDK/0F4TnVVaUhnmf+h5K7O6
XdmejDTa0X/NWcicmIkAlQMFEDF8lef1FVv7jlQtXQEBcnwD/0ro1PpUtlkLmreD
tsGTkNa7MFLegrYRvDDrHOwPZH152W2jPUncY+eArQJakeHiTDmJNpFagLZglhE0
bqJyca+UwCXX+6upAclWHEBMg2byiWMMqyPVEEnpUoHM1sIkgdNWlfQAmipRBfYh
2LyCgWvR8CbtwPYIFvUmGgB3MR87iQCVAwUQMUseXB9/qQgDWPy9AQGPkwP/WEDy
El2Gkvua9COtMAifot2vTwuvWWpNopIEx0Ivey4aVbRLD90gGCJw8OGDEtqFPcNV
8aIiy3fYVKXGZZjvCKd7zRfhNmQn0eLDcymq2OX3aPrMc2rRlkT4Jx425ukR1gsO
qiQAgw91aWhY8dlw/EKzk8ojm52x4VgXaBACMjaJAJUDBRAxOUOg72G56RHVjtUB
AbL4A/9HOn5Qa0lq9tKI/HkSdc5fGQD/66VdCBAb292RbB7CS/EM07MdbcqRRYIa
0+0gwQ3OdsWPdCVgH5RIhp/WiC+UPkR1cY8N9Mg2kTwJfZZfNqN+BgWlgRMPN27C
OhYNl8Q33Nl9CpBLrZWABF44jPeT0EvvTzP/5ZQ7T75EsYKYiYkAlQMFEDDmryQA
8tkJ67sbQQEBPdsEALCj6v1OBuJLLJTlxmmrkqAZPVzt5QdeO3Eqa2tcPWcU0nqP
vHYMzZcZ7oFg58NZsWrhSQQDIB5e+K65Q/h6dC7W/aDskZd64jxtEznX2kt0/MOr
8OdsDis1K2f9KQftrAx81KmVwW4Tqtzl7NWTDXt44fMOtibCwVq8v2DFkTJy
=JKbP
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>

View file

@ -47,7 +47,9 @@ MAINTAINER= email-addresses</programlisting>
<sect1>
<title>Contributed Software</title>
<para><emphasis>Contributed by &a.phk; and &a.obrien;. </emphasis></para>
<para>June 1996.</para>
<para>Some parts of the FreeBSD distribution consist of software that
@ -75,7 +77,18 @@ MAINTAINER= email-addresses</programlisting>
only with the approval of the core team and with the general
consensus of the other developers. The ability to maintain the
package in the future will be a key issue in the decisions.</para>
<note>
<para>Because of some unfortunate design limitations with the RCS file
format and CVS's use of vendor branches, minor, trivial and/or
cosmetic changes are <emphasis>strongly discouraged</emphasis> on
files that are still tracking the vendor branch. &ldquo;Spelling
fixes&rdquo; are explicitly included here under the
&ldquo;cosmetic&rdquo; category and are to be avoided for files with
revision 1.1.x.x. The repository bloat impact from a single character
change can be rather dramatic.</para>
</note>
<para>The <application>Tcl</application> embedded programming
language will be used as example of how this model works:</para>
@ -104,14 +117,14 @@ MAINTAINER= email-addresses</programlisting>
<para>The important thing here is that the
<filename>src/contrib/tcl</filename> directory is created according
to the rules: It is supposed to contain the sources as distributed
(on a proper CVS vendor-branch) with as few FreeBSD-specific changes
(on a proper CVS vendor-branch and without RCS keyword expansion) with as few FreeBSD-specific changes
as possible. The 'easy-import' tool on freefall will assist in
doing the import, but if there are any doubts on how to go about it,
it is imperative that you ask first and not blunder ahead and hope
it &ldquo;works out&rdquo;. CVS is not forgiving of import accidents and a fair
amount of effort is required to back out major mistakes.</para>
<para>Because of some unfortunate design limitations with CVS's vendor
<para>Because of the previously mentioned design limitations with CVS's vendor
branches, it is required that &ldquo;official&rdquo; patches from the vendor be
applied to the original distributed sources and the result
re-imported onto the vendor branch again. Official patches should

View file

@ -38,7 +38,13 @@
client/server software such as <command>pppd</command>. Unless otherwise stated, all
commands in this section should be executed as root.</para>
<para>There are a large number of enhancements in version 2 of ppp. You
can discover what version you have by running ppp with no arguments
and typing <command>show version</command> at the prompt. It is a
simple matter to upgrade to the latest version of ppp (under any
version of FreeBSD) by downloading the latest archive via <ulink
url="http://www.Awfulhak.org/ppp.html">www.Awfulhak.org</ulink>.</para>
<sect2>
<title>Before you start</title>
@ -65,42 +71,45 @@
login/password pair.</para>
</listitem>
<listitem>
<para>The IP address of your ISP's gateway. The gateway is
the machine to which you will connect and will be set up as
your &ldquo;default route&rdquo;. If your
ISP hasn't given you this number, don't worry. We can make
one up and your ISP's PPP server will tell us when we
connect.</para>
<para>This number is known from now on as
<literal>HISADDR</literal>.</para>
</listitem>
<listitem>
<para>Your ISP's netmask setting. Again, if your ISP hasn't
given you this information, you can safely use a netmask of
<hostid role="netmask">255.255.255.0</hostid>.</para>
</listitem>
<listitem>
<para>The IP addresses of one or more nameservers. Normally,
you will be given two IP numbers. You
<emphasis>must</emphasis> have this information unless you run
your own nameserver.</para>
<emphasis>must</emphasis> have this information for
<application>PPP</application> version 1.x unless you run
your own nameserver. From version 2 onwards,
<application>PPP</application> supports nameserver address
negotiation. If your ISP supports this, then using the command
<command>enable dns</command> in your config file will tell
<application>PPP</application> to set the nameservers for
you.</para>
</listitem>
</itemizedlist>
<para>The following information may have been supplied by your ISP,
but is not strictly necessary:</para>
<itemizedlist>
<listitem>
<para>The IP address of your ISP's gateway. The gateway is the
machine to which you will connect and will be set up as your
<emphasis>default route</emphasis>. If your ISP hasn't given
you this number, we can make one up and your ISP's PPP server
will tell us the correct value when we connect.</para>
<listitem>
<para>If your ISP allocates you a static IP address and
hostname then you will need this information too. If not,
you will need to know from what range of IP addresses your
allocated IP address will belong. If you haven't been given
this range, don't worry. You can configure <command>ppp</command> to accept any
IP number (as explained later).</para>
</listitem>
</itemizedlist>
<para>This IP number is referred to as <literal>HISADDR</literal>
by ppp.</para>
</listitem>
<listitem>
<para>Your ISP's netmask. If your ISP hasn't given you this
information, you can safely use a netmask of <hostid
role="netmask">255.255.255.0</hostid>.</para>
<para>If your ISP allocates you a static IP address and hostname
then you can enter this information. Otherwise, we simply let the
peer assign whatever IP number it sees fit.</para>
</listitem>
</itemizedlist>
<para>If you do not have any of the required information, contact
your ISP and make sure they provide it to you.</para>
@ -148,11 +157,14 @@ tun0: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
tun1: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 576
tun2: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
inet 203.10.100.1 --&gt; 203.10.100.20 netmask 0xffffffff
tun3: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
tun3: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</screen>
</informalexample>
<para>This case shows four tunnel devices, two of which are
currently configured and being used.</para>
currently configured and being used. It should be noted that the
<literal>RUNNING</literal> flag above indicates that the interface has
been used at some point&mdash;it is not an error if your interface does
not show up as <literal>RUNNING</literal>.</para>
<para>If you have a kernel without the tun device, and you can not
rebuild it for some reason, all is not lost. You should be able
@ -200,7 +212,14 @@ tun3: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
</informalexample>
<para>The <literal>RUNNING</literal> flag may not yet be set, in which
case you will see:</para>
<informalexample>
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8010&lt;POINTOPOINT,MULTICAST> mtu 1500</screen>
</informalexample>
</sect2>
<sect2>
@ -228,7 +247,9 @@ tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
<sect3>
<title>Edit the <filename>/etc/host.conf</filename> file</title>
<para>This file should contain the following two lines:</para>
<para>This file should contain the following two lines (in this
order):</para>
<programlisting>
hosts
@ -286,7 +307,13 @@ domain <replaceable>bar.com</replaceable></programlisting>
domain, and is probably unnecessary. Refer to the <filename>resolv.conf</filename>
manual page for details of other possible entries in this
file.</para>
<para>If you are running PPP version 2 or greater, the <command>enable
dns</command> command will tell PPP to request that your ISP
confirms the nameserver values. If your ISP supplies different
addresses (or if there are no nameserver lines in
<filename>/etc/resolv.conf</filename>), PPP will rewrite the file
with the ISP-supplied values.</para>
</sect3>
</sect2>
@ -328,12 +355,11 @@ domain <replaceable>bar.com</replaceable></programlisting>
4 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0 OK-AT-OK \\dATDT\\TTIMEOUT 40 CONNECT"
5 provider:
6 set phone "(0123) 456 7890"
7 set login "TIMEOUT 10 gin:-BREAK-gin: foo word: bar col: ppp"
7 set login "TIMEOUT 10 \"\" \"\" gin:--gin: foo word: bar col: ppp"
8 set timeout 300
9 deny lqr
10 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable>
11 delete ALL
12 add 0 0 HISADDR</programlisting>
9 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable> 255.255.255.0 0.0.0.0
10 add default HISADDR
11 enable dns</programlisting>
<para>Do not include the line numbers, they are
just for reference in this discussion.</para>
@ -415,7 +441,11 @@ protocol: ppp</screen>
</informalexample>
<para>You will need to alter this script to suit your own
needs. If you're using PAP or CHAP, there will be no
needs. When you write this script for the first time,
you should enable &ldquo;chat&rdquo; logging to ensure that
the conversation is going as expected.</para>
<para>If you're using PAP or CHAP, there will be no
login at this point, so your login string can be left
blank. See
<link linkend="userppp-PAPnCHAP">PAP and CHAP
@ -435,26 +465,6 @@ protocol: ppp</screen>
<varlistentry><term>Line 9:</term>
<listitem>
<para><command>ppp</command> can be configured to exchange Link Quality
Report (LQR) packets. These packets describe how good
the physical link is. <command>ppp</command>'s LQR strategy is to close
the connection when a number of these packets are
missed. This is useful when you have a direct serial
link to another machine and the DSR modem signal is not
available to indicate that the line is up. When data
saturates the line, LQR packets are sometimes
&ldquo;missed&rdquo;, causing <command>ppp</command> to close the connection
prematurely. Refusing to negotiate lqr is sometimes
prudent (if you are going through a modem) as it avoids
this whole mess. By default, <command>ppp</command> will not attempt to
negotiate LQR, but will accept LQR negotiation from the
peer.</para>
</listitem>
</varlistentry>
<varlistentry><term>Line 10:</term>
<listitem>
<para>Sets the interface addresses. The string <replaceable>x.x.x.x</replaceable>
should be replaced by the IP address that your provider
@ -473,17 +483,7 @@ protocol: ppp</screen>
</listitem>
</varlistentry>
<varlistentry><term>Line 11:</term>
<listitem>
<para>Deletes all existing routing table entries for the
acquired tun device. This should not normally be
necessary, but will make sure that <command>ppp</command> is starting with
a clean bill of health.</para>
</listitem>
</varlistentry>
<varlistentry><term>Line 12:</term>
<varlistentry><term>Line 10:</term>
<listitem>
<para>Adds a default route to your ISPs gateway. The
@ -492,9 +492,21 @@ protocol: ppp</screen>
important that this line appears after line 9, otherwise
<literal>HISADDR</literal> will not yet be
initialized.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Line 11:</term>
<listitem>
<para>This line tells PPP to ask your ISP to confirm that your
nameserver addresses are correct. If your ISP supports this
facility, PPP can then update
<filename>/etc/resolv.conf</filename> with the correct
nameserver entries.</para>
</listitem>
</varlistentry>
</variablelist>
<para>It is not necessary to add an entry to
@ -522,7 +534,7 @@ protocol: ppp</screen>
Static IP addresses</link>, with the following change:</para>
<programlisting>
10 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
9 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
<para>Again, do not include the line numbers, they are just for
reference in this discussion. Indentation of at least one space
@ -530,34 +542,28 @@ protocol: ppp</screen>
<variablelist>
<varlistentry><term>Line 10:</term>
<varlistentry><term>Line 9:</term>
<listitem>
<para>The number after the <literal>/</literal> character is the number
of bits of the address that ppp will insist on. You may
wish to use IP numbers more appropriate to your
circumstances, but the above example will almost always
work. If it fails, you may be able to defeat some
broken ppp implementations by supplying an additional
<literal>0.0.0.0</literal> argument:</para>
<programlisting>
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
<para>This tells ppp to negotiate using address <hostid
role="ipaddr">0.0.0.0</hostid> rather than <hostid
role="ipaddr">10.0.0.1</hostid>. Do not use <hostid
role="netmask">0.0.0.0/0</hostid> as the first argument
to <command>set ifaddr</command> as it
prevents <command>ppp</command> from setting up an initial route in
<option>-auto</option> and <option>-ddial</option>
mode.</para>
circumstances, but the above example will always
work.</para>
<para>The last argument (<literal>0.0.0.0</literal>) tells PPP
to negotiate using address <hostid
role="ipaddr">0.0.0.0</hostid> rather than <hostid
role="ipaddr">10.0.0.1</hostid>. Do not use
<literal>0.0.0.0</literal> as the first argument to
<command>set ifaddr</command> as it prevents PPP from setting
up an intial route in <option>-auto</option> mode.</para>
</listitem>
</varlistentry>
</variablelist>
<para>You will also need to create an entry in
<para>If you are running version 1.x of PPP, uou will also need to create an entry in
<filename>/etc/ppp/ppp.linkup</filename>.
<filename>ppp.linkup</filename> is used after a connection has
been established. At this point, <command>ppp</command> will know what IP
@ -611,7 +617,14 @@ set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
<filename>/etc/ppp/ppp.conf.sample</filename> and
<filename>/etc/ppp/ppp.linkup.sample</filename> for a detailed
example.</para>
<para>Version 2 of PPP introduces &ldquo;sticky routes&rdquo;. Any
<literal>add</literal> or <literal>delete</literal> lines that
contain <literal>MYADDR</literal> or <literal>HISADDR</literal> will
be remembered, and any time the actual values of
<literal>MYADDR</literal> or <literal>HISADDR</literal> change, the
routes will be re-applied. This removes the necessity of repeating
these lines in <filename>ppp.linkup</filename>.</para>
</sect3>
<sect3>
@ -621,24 +634,21 @@ set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
role.</para>
<para>When you configure <command>ppp</command> to
receive incoming calls, you must decide whether you wish to
forward packets for just PPP
connections, for all interfaces, or not at all. To forward for
just PPP connections, include the line
receive incoming calls on a machine connected to a LAN, you must decide if you wish to
forward packets to the LAN. If you do, you should allocate the
peer an IP number from your LAN's subet, and use the command
<programlisting>
enable proxy</programlisting>
in your <filename>ppp.conf</filename> file. If you wish to
forward packets on all interfaces, use the
in your <filename>ppp.conf</filename> file. You should also
confirm that the <filename>/etc/rc.conf</filename> file (this file
used to be called <filename>/etc/sysconfig</filename>) contains the
following:</para>
<programlisting>
gateway=YES</programlisting>
option in <filename>/etc/rc.conf</filename> (this file used
to be called <filename>/etc/sysconfig</filename>).</para>
<sect4>
<title>Which getty?</title>
@ -672,7 +682,16 @@ gateway=YES</programlisting>
permission to run <command>ppp</command> by adding them to the
<username>network</username> group in
<filename>/etc/group</filename>.</para>
<para>You will also need to give them access to one or more sections
of the configuration file using the <command>allow</command>
command:</para>
<programlisting>
allow users fred mary</programlisting>
<para>If this command is used in the <literal>default</literal>
section, it gives the specified users access to everything.</para>
</sect4>
<sect4>
@ -702,7 +721,7 @@ exec /usr/sbin/ppp -direct $IDENT</programlisting>
using the following commands:</para>
<informalexample>
<screen>&prompt.root; <userinput>ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
<screen>&prompt.root; <userinput>ln -s ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
</informalexample>
<para>You should use this script as the
@ -855,9 +874,6 @@ mary:
<programlisting>
#!/bin/sh
TTY=`tty`
IDENT=`basename $TTY`
exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
<para>For each dialup line enabled in
@ -867,14 +883,9 @@ exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
above.</para>
<programlisting>
papttyd0:
enable pap
set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
enable proxy
papttyd1:
enable pap
set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
pap:
enable pap
set ifaddr 203.14.100.1 203.14.100.20-203.14.100.40
enable proxy</programlisting>
<para>Each user logging in with this method will need to have
@ -886,36 +897,43 @@ papttyd1:
enable passwdauth</programlisting>
<para>option to authenticate users via pap from the
<filename>/etc/password</filename>d file<footnote><para>(*) Note this option only available in 2.2-961014-SNAP
or later, or by getting the updated ppp code for 2.1.x. (see
MS extensions below for details)</para>
</footnote>.</para>
<filename>/etc/password</filename> file.</para>
<para>If you wish to assign some users a static IP number, you can
specify the number as the third argument in
<filename>/etc/ppp/ppp.secret</filename>. See
<filename>/etc/ppp/ppp.secret.sample</filename> for
examples.</para>
</sect5>
<sect5>
<title>MS extentions</title>
<para>From 2.2-961014-SNAP onwards it is possible to allow the
automatic negotiation of DNS and NetBIOS name servers with
clients supporting this feature (namely Win95/NT clients).
See RFC1877 for more details on the protocol.</para>
<para>An example of enabling these extensions in your
<filename>/etc/ppp/ppp.conf</filename> file is illustrated
below.</para>
<para>It is possible to configure PPP to supply DNS and NetBIOS
nameserver addresses on demand.</para>
<para>To enable these extensions with PPP version 1.x, the
following lines might be added to the relevant section of
<filename>/etc/ppp/ppp.conf</filename>.</para>
<programlisting>
default:
set debug phase lcp chat
set timeout 0
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
<para>And for PPP version 2 and above:</para>
<programlisting>
accept dns
set dns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
<para>This will tell the clients the primary and secondary
name server addresses, and a netbios nameserver host.</para>
<para>In version 2 and above, if the <literal>set dns</literal>
line is ommitted, PPP will use the values found in
<filename>/etc/resolv.conf</filename>.</para>
</sect5>
</sect4>
</sect3>
@ -932,7 +950,7 @@ default:
<para>PAP is less secure than CHAP, but security is not normally
an issue here as passwords, although being sent as plain text
with PAP, are being transmitted down a serial line only.
There's not much room for hackers to &ldquo;eavesdrop&rdquo;.</para>
There's not much room for crackers to &ldquo;eavesdrop&rdquo;.</para>
<para>Referring back to the <link linkend="userppp-staticIP">PPP and Static IP addresses</link> or <link
linkend="userppp-dynamicIP">PPP and Dynamic IP
@ -942,8 +960,8 @@ default:
<programlisting>
7 set login
&hellip;
13 set authname <replaceable>MyUserName</replaceable>
14 set authkey <replaceable>MyPassword</replaceable></programlisting>
12 set authname <replaceable>MyUserName</replaceable>
13 set authkey <replaceable>MyPassword</replaceable></programlisting>
<para>As always, do not include the line numbers, they are just
for reference in this discussion. Indentation of at least one
@ -959,7 +977,7 @@ default:
</listitem>
</varlistentry>
<varlistentry><term>Line 13:</term>
<varlistentry><term>Line 12:</term>
<listitem>
<para>This line specifies your PAP/CHAP user name. You
@ -968,7 +986,7 @@ default:
</listitem>
</varlistentry>
<varlistentry><term>Line 14:</term>
<varlistentry><term>Line 13:</term>
<listitem>
<para>This line specifies your PAP/CHAP password. You
@ -980,56 +998,29 @@ default:
<programlisting>
15 accept CHAP</programlisting> to make it obvious that this is the
intention, but PAP and CHAP are accepted by
intention, but PAP and CHAP are both accepted by
default.</para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>Your <literal>authkey</literal> will be logged
if you have command logging turned on (<command>set log
+command</command>). Care should be taken when deciding the
ppp log file permissions.</para>
</note>
</sect3>
<sect3>
<title>Changing your <command>ppp</command> configuration on the fly</title>
<para>It is possible to talk to the <command>ppp</command> program while it is
running in the background, but only if a suitable password has
been set up.</para>
<para>By default, ppp will listen to a TCP port of 3000 +
<replaceable>tunno</replaceable>, where <replaceable>tunno</replaceable> is the number of the tun device
acquired, however, if a password for the local machine is not
set up in <filename>/etc/ppp/ppp.secret</filename>, no server
connection will be created. To set your password, put the
following line in
<filename>/etc/ppp/ppp.secret</filename>:</para>
<programlisting>
<replaceable>foo</replaceable> <replaceable>MyPassword</replaceable></programlisting>
<para><replaceable>foo</replaceable> is your local
hostname (run <command>hostname -s</command> to determine the
correct name), and <replaceable>MyPassword</replaceable> is
the unencrypted password that you wish to use.
<filename>/etc/ppp/ppp.secret</filename> should
<emphasis>not</emphasis> be accessable by anyone without user id
<username>0</username>. This means that <filename>/</filename>,
<filename>/etc</filename> and <filename>/etc/ppp</filename>
should not be writable, and <filename>ppp.secret</filename>
should be owned by user id <username>0</username> and have permissions 0600.</para>
<para>It is also possible to select a specific port number or to
have ppp listen to a local unix domain socket rather than to a
TCP socket. Refer to the <command>set
socket</command> command in manual page for further
details.</para>
running in the background, but only if a suitable diagnostic port has
been set up. To do this, add the following line to your
configuration:</para>
<programlisting>
set server /var/run/ppp-tun%d DiagnosticPassword 0177</programlisting>
<para>This will tell PPP to listen to the specified unix-domain
socket, asking clients for the specified password before allowing
access. The <literal>%d</literal> in the name is replaced with teh
tun device number that is in use.</para>
<para>Once a socket has been set up, the
<citerefentry><refentrytitle>pppctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> program may be used in scripts that
@ -1230,8 +1221,8 @@ sendmail_flags="-bd"</programlisting>
<sect2>
<title>Acknowledgments</title>
<para>This section of the handbook was last updated on Sun Sep 7,
1997 by &a.brian;</para>
<para>This section of the handbook was last updated on Monday Aug 10,
1998 by &a.brian;</para>
<para>Thanks to the following for their input, comments &amp;
suggestions:</para>

View file

@ -3969,7 +3969,11 @@ done
linkend="printing-simple">Simple Printer Setup</link>. Do
any advanced setup in <link linkend="printing-advanced">Advanced Printer Setup</link> that you need. Make sure to
test the printer and see if it works with the features of LPD
you have enabled.</para>
you have enabled. Also ensure that the <emphasis>local
host</emphasis> has authorization to use the LPD service in the
<emphasis>remote host</emphasis> (see <link
linkend="printing-advanced-restricting-remote">Restricting Jobs
from Remote Printers</link>).</para>
<para>If you are using a printer with a network interface that is
compatible with LPD, then the <emphasis>printer host</emphasis>

View file

@ -440,8 +440,8 @@ permit port ttyd0</programlisting>
software, please <emphasis>do not</emphasis> get it from a USA or
Canada site. You will get that site in <emphasis>big</emphasis>
trouble! A legal copy of this is available from
<hostid role="fqdn">skeleton.mikom.csir.co.za</hostid>, which is in South
Africa.</para>
<hostid role="fqdn">ftp.internat.freebsd.org</hostid>, which is in
South Africa and an official FreeBSD mirror site.</para>
<sect2>
@ -464,7 +464,7 @@ README krb.conf krb.realms</screen>
<filename>principal.*</filename> or <filename>master_key</filename>)
exist, then use the <command>kdb_destroy</command> command to
destroy the old Kerberos database, of if Kerberos is not running,
simply delete the extra files with <command>rm</command>.</para>
simply delete the extra files.</para>
<para>You should now edit the <filename>krb.conf</filename> and
<filename>krb.realms</filename> files to define your Kerberos
@ -939,10 +939,10 @@ FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995</screen>
<para>It may help, but a poorly setup firewall system is more of a
security risk than not having one at all. A firewall can only add
another layer of security to your systems, but they will not be
able to stop a really determined hacker from penetrating your
able to stop a really determined cracker from penetrating your
internal network. If you let internal security lapse because you
believe your firewall to be impenetrable, you have just made the
hackers job that bit easier.</para>
crackers job that bit easier.</para>
</note>
@ -1534,20 +1534,20 @@ FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995</screen>
<title>Example commands for ipfw</title>
<para>This command will deny all packets from the host
<hostid role="fqdn">evil.hacker.org</hostid> to the telnet port of the
<hostid role="fqdn">evil.crackers.org</hostid> to the telnet port of the
host <hostid role="fqdn">nice.people.org</hostid> by being forwarded by
the router:</para>
<informalexample>
<screen>&prompt.root <userinput>ipfw add deny tcp from evil.hacker.org to nice.people.org 23</userinput></screen>
<screen>&prompt.root <userinput>ipfw add deny tcp from evil.crackers.org to nice.people.org 23</userinput></screen>
</informalexample>
<para>The next example denies and logs any TCP traffic from the
entire <hostid role="domainname">hacker.org</hostid> network (a class C) to the
entire <hostid role="domainname">crackers.org</hostid> network (a class C) to the
<hostid role="fqdn">nice.people.org</hostid> machine (any port).</para>
<informalexample>
<screen>&prompt.root; <userinput>ipfw add deny log tcp from evil.hacker.org/24 to nice.people.org</userinput></screen>
<screen>&prompt.root; <userinput>ipfw add deny log tcp from evil.crackers.org/24 to nice.people.org</userinput></screen>
</informalexample>
<para>If you do not want people sending X sessions to your internal

View file

@ -30,10 +30,6 @@
<para>&a.ache;</para>
</listitem>
<listitem>
<para>&a.dyson;</para>
</listitem>
<listitem>
<para>&a.bde;</para>
</listitem>
@ -43,7 +39,7 @@
</listitem>
<listitem>
<para>&a.davidg;</para>
<para>&a.dg;</para>
</listitem>
<listitem>
@ -96,12 +92,14 @@
<para>These are the people who have commit privileges and do the
engineering work on the FreeBSD source tree. All core team members
and most FreeBSD Documentation project personnel are also
developers.</para>
are also developers.</para>
<itemizedlist>
<listitem>
<para>&a.ugen;</para>
</listitem>
<listitem>
<para>&a.mbarkah;</para>
</listitem>
@ -109,7 +107,15 @@
<listitem>
<para>&a.stb;</para>
</listitem>
<listitem>
<para>&a.pb;</para>
</listitem>
<listitem>
<para>&a.abial;</para>
</listitem>
<listitem>
<para>&a.jb;</para>
</listitem>
@ -117,15 +123,31 @@
<listitem>
<para>&a.torstenb;</para>
</listitem>
<listitem>
<para>&a.dburr;</para>
</listitem>
<listitem>
<para>&a.danny;</para>
</listitem>
<listitem>
<para>&a.thepish;</para>
</listitem>
<listitem>
<para>&a.charnier;</para>
</listitem>
<listitem>
<para>&a.luoqi;</para>
</listitem>
<listitem>
<para>&a.ejc;</para>
</listitem>
<listitem>
<para>&a.kjc;</para>
</listitem>
@ -141,7 +163,11 @@
<listitem>
<para>&a.adam;</para>
</listitem>
<listitem>
<para>&a.dillon;</para>
</listitem>
<listitem>
<para>&a.dufault;</para>
</listitem>
@ -222,14 +248,14 @@
<para>&a.hanai;</para>
</listitem>
<listitem>
<para>&a.ahasty;</para>
</listitem>
<listitem>
<para>&a.jhay;</para>
</listitem>
<listitem>
<para>&a.ghelmer;</para>
</listitem>
<listitem>
<para>&a.helbig;</para>
</listitem>
@ -237,19 +263,23 @@
<listitem>
<para>&a.erich;</para>
</listitem>
<listitem>
<para>&a.hosokawa;</para>
</listitem>
<listitem>
<para>&a.hsu;</para>
</listitem>
<listitem>
<para>&a.mph;</para>
</listitem>
<listitem>
<para>&a.itojun;</para>
</listitem>
<listitem>
<para>&a.ugen;</para>
</listitem>
<listitem>
<para>&a.gj;</para>
</listitem>
@ -269,7 +299,27 @@
<listitem>
<para>&a.andreas;</para>
</listitem>
<listitem>
<para>&a.motoyuki;</para>
</listitem>
<listitem>
<para>&a.jkoshy;</para>
</listitem>
<listitem>
<para>&a.kuriyama;</para>
</listitem>
<listitem>
<para>&a.grog;</para>
</listitem>
<listitem>
<para>&a.jlemon;</para>
</listitem>
<listitem>
<para>&a.imp;</para>
</listitem>
@ -281,11 +331,15 @@
<listitem>
<para>&a.mckay;</para>
</listitem>
<listitem>
<para>&a.jlemon;</para>
</listitem>
<listitem>
<para>&a.mckusick;</para>
</listitem>
<listitem>
<para>&a.ken;</para>
</listitem>
<listitem>
<para>&a.tedm;</para>
</listitem>
@ -305,7 +359,11 @@
<listitem>
<para>&a.alex;</para>
</listitem>
<listitem>
<para>&a.rnordier;</para>
</listitem>
<listitem>
<para>&a.davidn;</para>
</listitem>
@ -313,7 +371,11 @@
<listitem>
<para>&a.obrien;</para>
</listitem>
<listitem>
<para>&a.ljo;</para>
</listitem>
<listitem>
<para>&a.fsmp;</para>
</listitem>
@ -393,6 +455,10 @@
<listitem>
<para>&a.msmith;</para>
</listitem>
<listitem>
<para>&a.des;</para>
</listitem>
<listitem>
<para>&a.brian;</para>
@ -405,7 +471,11 @@
<listitem>
<para>&a.karl;</para>
</listitem>
<listitem>
<para>&a.dt;</para>
</listitem>
<listitem>
<para>&a.cwt;</para>
</listitem>
@ -418,10 +488,18 @@
<para>&a.hoek;</para>
</listitem>
<listitem>
<para>&a.nectar;</para>
</listitem>
<listitem>
<para>&a.swallace;</para>
</listitem>
<listitem>
<para>&a.dwhite;</para>
</listitem>
<listitem>
<para>&a.nate;</para>
</listitem>
@ -459,7 +537,7 @@
<variablelist>
<varlistentry><term>Documentation Project Manager</term>
<listitem>
<para>&a.jfieber;</para>
<para><emphasis>currently vacant</emphasis></para>
</listitem>
</varlistentry>
@ -467,10 +545,7 @@
<varlistentry><term>Webmaster</term>
<listitem>
<para>&a.mbarkah;</para>
<para><emphasis>Deputy:</emphasis> &a.paul;</para>
<para>&a.wosch;;</para>
</listitem>
</varlistentry>
@ -482,26 +557,6 @@
</listitem>
</varlistentry>
<varlistentry><term>Build Engineer</term>
<listitem>
<para>&a.paul;</para>
<para><emphasis>Deputy:</emphasis> &a.dave;</para>
</listitem>
</varlistentry>
<varlistentry><term>Mirror Manager</term>
<listitem>
<para>&a.ulf;</para>
<para><emphasis>Deputy:</emphasis> &a.john;</para>
</listitem>
</varlistentry>
<varlistentry><term>News Editor</term>
<listitem>
@ -511,7 +566,15 @@
</listitem>
</varlistentry>
<varlistentry>
<term>FreeBSD Really-Quick NewsLetter Editor</term>
<listitem>
<para>Chris Coleman <email>chrisc@vmunix.com</email></para>
</listitem>
</varlistentry>
<varlistentry><term>Gallery and Commercial Editor</term>
<listitem>
@ -525,10 +588,7 @@
<varlistentry><term>Style Police &amp; Art Director</term>
<listitem>
<para>&a.dave;</para>
<para><emphasis>Deputy:</emphasis> &a.opsys;</para>
<para>&a.opsys;</para>
</listitem>
</varlistentry>
@ -536,19 +596,13 @@
<listitem>
<para>&a.mayo;</para>
<para><emphasis>Deputy:</emphasis> &a.cracauer;</para>
</listitem>
</varlistentry>
<varlistentry><term>CGI Engineer</term>
<listitem>
<para>&a.cracauer;</para>
<para><emphasis>Deputy:</emphasis> &a.stb;</para>
<para>&a.stb;</para>
</listitem>
</varlistentry>
@ -556,11 +610,16 @@
<listitem>
<para>&a.nsj;</para>
<para><emphasis>Drying plates:</emphasis> &a.nik;</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LinuxDoc to DocBook conversion</term>
<listitem>
<para>&a.nik;</para>
</listitem>
</varlistentry>
</variablelist>
@ -573,20 +632,21 @@
<variablelist>
<varlistentry><term>Principal Architect</term>
<listitem>
<para>&a.davidg;</para>
<para>&a.dg;</para>
</listitem>
</varlistentry>
<varlistentry><term>Documentation Project Manager</term>
<varlistentry><term><ulink
url="http://www.freebsd.org/docproj/docproj.html">Documentation Project Manager</ulink></term>
<listitem>
<para>&a.jfieber;</para>
<para><emphasis>currently vacant</emphasis></para>
</listitem>
</varlistentry>
<varlistentry><term>Internationalization</term>
<varlistentry><term><link linkend="l10n">Internationalization</link></term>
<listitem>
<para>&a.ache;</para>
@ -602,7 +662,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Postmaster</term>
<varlistentry><term><link linkend="eresources-mail">Postmaster</link></term>
<listitem>
<para>&a.jmb;</para>
@ -627,7 +687,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Security Officer</term>
<varlistentry><term><ulink url="http://www.freebsd.org/security/">Security Officer</ulink></term>
<listitem>
<para>&a.guido;</para>
@ -635,7 +695,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Source Repository Managers</term>
<varlistentry><term><ulink url="http://www.freebsd.org/support.html#cvs">>Source Repository Managers</ulink></term>
<listitem>
<para>Principal: &a.peter;</para>
@ -647,7 +707,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Ports Manager</term>
<varlistentry><term><ulink url="http://www.freebsd.org/ports/">Ports Manager</ulink></term>
<listitem>
<para>&a.asami;</para>
@ -663,7 +723,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Usenet Support</term>
<varlistentry><term><link linkend="eresources-news">Usenet Support</link></term>
<listitem>
<para>&a.joerg;</para>
@ -671,13 +731,20 @@
</listitem>
</varlistentry>
<varlistentry><term>GNATS Administrator</term>
<varlistentry><term><ulink url="http://www.freebsd.org/support.html#gnats">GNATS Administrator</ulink></term>
<listitem>
<para>&a.steve;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><ulink url="http://www.freebsd.org/internal/">Webmaster</ulink></term>
<listitem>
<para>&a.wosch;</para>
</listitem>
</varlistentry>
</variablelist>

File diff suppressed because it is too large Load diff

View file

@ -13,7 +13,13 @@
is too small to hold the dump, you can configure your kernel to use
an alternate dump device (in the <literal>config
kernel</literal> line), or you can specify an alternate using the
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. Dumps to non-swap devices, tapes for example,
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. The best way to use <citerefentry>
<refentrytitle>dumpon</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> is to set the <literal>dumpdev</literal> variable in
<filename>/etc/rc.conf</filename>. Typically you want to specify one of
the swap devices specified in <filename>/etc/fstab</filename>.
Dumps to non-swap devices, tapes for example,
are currently not supported. Config your kernel using
<command>config -g</command>. See <link linkend="kernelconfig">Kernel
Configuration</link> for
@ -232,7 +238,23 @@
</sect1>
<sect1>
<title>Debugging a crash dump with DDD</title>
<para>Examining a kernel crash dump with a graphical debugger like
<command>ddd</command> is also possible. Add the <option>-k</option>
option to the <command>ddd</command> command line you would use
normally. For example;</para>
<informalexample>
<screen>&prompt.root; <userinput>ddd -k /var/crash/kernel.0 /var/crash/vmcore.0</userinput></screen>
</informalexample>
<para>You should then be able to go about looking at the crash dump using
<command>ddd</command>'d graphical interface.</para>
</sect1>
<sect1>
<title>Post-mortem Analysis of a Dump</title>

View file

@ -47,7 +47,9 @@ MAINTAINER= email-addresses</programlisting>
<sect1>
<title>Contributed Software</title>
<para><emphasis>Contributed by &a.phk; and &a.obrien;. </emphasis></para>
<para>June 1996.</para>
<para>Some parts of the FreeBSD distribution consist of software that
@ -75,7 +77,18 @@ MAINTAINER= email-addresses</programlisting>
only with the approval of the core team and with the general
consensus of the other developers. The ability to maintain the
package in the future will be a key issue in the decisions.</para>
<note>
<para>Because of some unfortunate design limitations with the RCS file
format and CVS's use of vendor branches, minor, trivial and/or
cosmetic changes are <emphasis>strongly discouraged</emphasis> on
files that are still tracking the vendor branch. &ldquo;Spelling
fixes&rdquo; are explicitly included here under the
&ldquo;cosmetic&rdquo; category and are to be avoided for files with
revision 1.1.x.x. The repository bloat impact from a single character
change can be rather dramatic.</para>
</note>
<para>The <application>Tcl</application> embedded programming
language will be used as example of how this model works:</para>
@ -104,14 +117,14 @@ MAINTAINER= email-addresses</programlisting>
<para>The important thing here is that the
<filename>src/contrib/tcl</filename> directory is created according
to the rules: It is supposed to contain the sources as distributed
(on a proper CVS vendor-branch) with as few FreeBSD-specific changes
(on a proper CVS vendor-branch and without RCS keyword expansion) with as few FreeBSD-specific changes
as possible. The 'easy-import' tool on freefall will assist in
doing the import, but if there are any doubts on how to go about it,
it is imperative that you ask first and not blunder ahead and hope
it &ldquo;works out&rdquo;. CVS is not forgiving of import accidents and a fair
amount of effort is required to back out major mistakes.</para>
<para>Because of some unfortunate design limitations with CVS's vendor
<para>Because of the previously mentioned design limitations with CVS's vendor
branches, it is required that &ldquo;official&rdquo; patches from the vendor be
applied to the original distributed sources and the result
re-imported onto the vendor branch again. Official patches should

View file

@ -738,86 +738,49 @@ hostname myclient.mydomain</programlisting>
<sect2>
<title>ISDN Cards</title>
<para><emphasis>Original Contribution by &a.hm;.</emphasis></para>
<para><emphasis>Contributed by &a.hm;.</emphasis></para>
<para>This section is really only relevant to European ISDN users.
The cards supported are not yet(?) available for North American
ISDN standards.</para>
<para>You should be aware that this code is largely under
development. Specifically, drivers have only been written for two
manufacturers cards.</para>
<para>PC ISDN cards support the full bandwidth of ISDN, 128Kbs.
These cards are often the least expensive type of ISDN equipment.</para>
<para>Under FreeBSD 2.1.0 and 2.1.5, there is early unfinished ISDN
code under <filename>/usr/src/gnu/isdn</filename>. This code is
out of date and should not be used. If you want to go this route,
get the bisdn stuff. This code has been removed from the main
source tree starting with FreeBSD 2.2.</para>
<para>There is the bisdn ISDN package available from <ulink
URL="ftp://hub.freebsd.org/pub/bisdn">hub.freebsd.org</ulink>
supporting FreeBSD 2.1R, FreeBSD-current and NetBSD. The latest
source can be found on the above mentioned ftp server under
directory isdn as file bisdn-097.tar.gz.</para>
<para>There are drivers for the following cards:</para>
<itemizedlist>
<listitem>
<para>Currently all (passive) Teles cards and their clones are
supported for the EuroISDN (DSS1) and 1TR6 protocols.</para>
</listitem>
<listitem>
<para>Dr. Neuhaus &mdash; Niccy 1016</para>
</listitem>
</itemizedlist>
<para>There are several limitations with the bisdn stuff.
Specifically the following features usually associated with ISDN
are not supported.</para>
<itemizedlist>
<listitem>
<para>No PPP support, only raw hdlc. This means you cannot
connect to most standalone routers.</para>
</listitem>
<listitem>
<para>Bridging Control Protocol not supported.</para>
</listitem>
<listitem>
<para>Multiple cards are not supported.</para>
</listitem>
<listitem>
<para>No bandwidth on demand.</para>
</listitem>
<listitem>
<para>No channel bundling.</para>
</listitem>
</itemizedlist>
<para>A majordomo maintained mailing list is available. To join the
list, send mail to &a.majordomo; and specify:
<para>This section is really only relevant to ISDN users in countries
where the DSS1/Q.931 ISDN standard is supported. </para>
<para>Some growing number of PC ISDN cards are supported under FreeBSD
2.2.x and up by the isdn4bsd driver package. It is still under
development but the reports show that it is successfully used all
over Europe.</para>
<programlisting>
<para>The latest isdn4bsd version is available from <ulink
url="ftp://isdn4bsd@ftp.consol.de/pub/">ftp://isdn4bsd@ftp.consol.de/pub/</ulink>,
the main isdn4bsd ftp site (you have to log in as user
<username>isdn4bsd</username> , give your mail address as the
password and change to the <filename>pub</filename>
directory. Anonymous ftp as user <username>ftp</username> or
<username>anonymous</username> will <emphasis>not</emphasis> give
the desired result).</para>
<para>Isdn4bsd allows you to connect to other ISDN routers using
either IP over raw HDLC or by using synchronous PPP. A telephone
answering machine application is also available.</para>
<para>Many ISDN PC cards are supported, mostly the ones with a Siemens
ISDN chipset (ISAC/HSCX), support for other chipsets (from Motorola,
Cologne Chip Designs) is currently under development. For an
up-to-date list of supported cards, please have a look at the
<ulink url="ftp://isdn4bsd@ftp.consol.de/pub/README">README</ulink>
file.</para>
<para>In case you are interested in adding support for a different
ISDN protocol, a currently unsupported ISDN PC card or otherwise
enhancing isdn4bsd, please get in touch with
<email>hm@kts.org</email>.</para>
<para>A majordomo maintained mailing list is available. To join the
list, send mail to <email>majordomo@FreeBSD.ORG</email> and
specify:</para>
<programlisting>
subscribe freebsd-isdn</programlisting>
in the body
of your message.</para>
<para>in the body of your message.</para>
</sect2>
<sect2>

View file

@ -7,15 +7,15 @@
Please keep this list in alphabetical order by entity names.
$Id: authors.ent,v 1.2 1998-11-09 17:41:07 archie Exp $
$Id: authors.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!ENTITY a.abial "Andrzej Bialecki <email>abial@FreeBSD.ORG</email>">
<!ENTITY a.ache "Andrey A. Chernov <email>ache@FreeBSD.ORG</email>">
<!ENTITY a.adam "Adam David <email>adam@FreeBSD.ORG</email>">
<!ENTITY a.ahasty "Amancio Hasty <email>ahasty@FreeBSD.ORG</email>">
<!ENTITY a.alex "Alex Nash <email>alex@freebsd.org</email>">
<!ENTITY a.amurai "Atsushi Murai <email>amurai@FreeBSD.ORG</email>">
@ -54,28 +54,38 @@
<!ENTITY a.darrenr "Darren Reed <email>darrenr@FreeBSD.ORG</email>">
<!ENTITY a.dave "Dave Cornejo <email>dave@FreeBSD.ORG</email>">
<!ENTITY a.davidg "David Greenman <email>davidg@FreeBSD.ORG</email>">
<!ENTITY a.dg "David Greenman <email>dg@FreeBSD.ORG</email>">
<!ENTITY a.davidn "David Nugent <email>davidn@blaze.net.au</email>">
<!ENTITY a.dburr "Donald Burr <email>dburr@FreeBSD.ORG</email>">
<!ENTITY a.des "Dag-Erling C. Sm&oslash;rgrav <email>des@FreeBSD.ORG</email>">
<!ENTITY a.dfr "Doug Rabson <email>dfr@FreeBSD.ORG</email>">
<!ENTITY a.dillon "Matthew Dillon <email>dillon@FreeBSD.ORG</email>">
<!ENTITY a.dima "Dima Ruban <email>dima@FreeBSD.ORG</email>">
<!ENTITY a.dirkvangulik "Dirk-Willem van Gulik <email>Dirk.vanGulik@jrc.it</email>">
<!ENTITY a.dt "Dmitrij Tejblum <email>dt@FreeBSD.ORG</email>">
<!ENTITY a.dwhite "Doug White <email>dwhite@FreeBSD.ORG</email>">
<!ENTITY a.dufault "Peter Dufault <email>dufault@FreeBSD.ORG</email>">
<!ENTITY a.dyson "John Dyson <email>dyson@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.eivind "Eivind Eklund <email>perhaps@yes.no</email>">
<!ENTITY a.ejc "Eric J. Chet <email>ejc@FreeBSD.ORG</email>">
<!ENTITY a.erich "Eric L. Hernes <email>erich@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.fenner "Bill Fenner <email>fenner@FreeBSD.ORG</email>">
<!ENTITY a.fsmp "Steve Passe <email>fsmp@FreeBSD.ORG</email>">
@ -94,6 +104,8 @@
<!ENTITY a.graichen "Thomas Graichen <email>graichen@FreeBSD.ORG</email>">
<!ENTITY a.grog "Greg Lehey <email>grog@FreeBSD.ORG</email>">
<!ENTITY a.gryphon "Coranth Gryphon <email>gryphon@healer.com</email>">
<!ENTITY a.guido "Guido van Rooij <email>guido@FreeBSD.ORG</email>">
@ -132,6 +144,8 @@
<!ENTITY a.jkh "Jordan K. Hubbard <email>jkh@FreeBSD.ORG</email>">
<!ENTITY a.jkoshy "Joseph Koshy <email>jkoshy@FreeBSD.ORG</email>">
<!ENTITY a.jlemon "Jonathan Lemon <email>jlemon@FreeBSD.ORG</email>">
<!ENTITY a.jlind "John Lind <email>john@starfire.MN.ORG</email>">
@ -164,12 +178,18 @@
<!ENTITY a.kelly "Sean Kelly <email>kelly@fsl.noaa.gov</email>">
<!ENTITY a.ken "Kenneth D. Merry <email>ken@FreeBSD.ORG</email>">
<!ENTITY a.kjc "Kenjiro Cho <email>kjc@FreeBSD.ORG</email>">
<!ENTITY a.kuriyama "Jun Kuriyama <email>kuriyama@FreeBSD.ORG</email>">
<!ENTITY a.lars "Lars Fredriksen <email>lars@FreeBSD.ORG</email>">
<!ENTITY a.ljo "L Jonas Olsson <email>ljo@FreeBSD.ORG</email>">
<!ENTITY a.luoqi "Luoqi Chen <email>luoqi@FreeBSD.ORG</email>">
<!ENTITY a.markm "Mark Murray <email>markm@FreeBSD.ORG</email>">
<!ENTITY a.martin "Martin Renters <email>martin@FreeBSD.ORG</email>">
@ -182,14 +202,22 @@
<!ENTITY a.mckay "Stephen McKay <email>mckay@FreeBSD.ORG</email>">
<!ENTITY a.mckusick "Kirk McKusick <email>mckusick@FreeBSD.ORG</email>">
<!ENTITY a.md "Mark Dapoz <email>md@bsc.no</email>">
<!ENTITY a.motoyuki "Motoyuki Konno <email>motoyuki@FreeBSD.ORG</email>">
<!ENTITY a.mph "Matthew Hunt <email>mph@FreeBSD.ORG</email>">
<!ENTITY a.mpp "Mike Pritchard <email>mpp@FreeBSD.ORG</email>">
<!ENTITY a.msmith "Michael Smith <email>msmith@FreeBSD.ORG</email>">
<!ENTITY a.nate "Nate Williams <email>nate@FreeBSD.ORG</email>">
<!ENTITY a.nectar "Jacques Vidrine <email>nectar@FreeBSD.ORG</email>">
<!ENTITY a.nik "Nik Clayton <email>nik@FreeBSD.ORG</email>">
<!ENTITY a.nsj "Nate Johnson <email>nsj@FreeBSD.ORG</email>">
@ -202,6 +230,8 @@
<!ENTITY a.paul "Paul Richards <email>paul@FreeBSD.ORG</email>">
<!ENTITY a.pb "Pierre Beyssac <email>pb@fasterix.freenix.org</email>">
<!ENTITY a.pds "Peter da Silva <email>pds@FreeBSD.ORG</email>">
<!ENTITY a.peter "Peter Wemm <email>peter@FreeBSD.ORG</email>">
@ -222,6 +252,8 @@
<!ENTITY a.rich "Rich Murphey <email>rich@FreeBSD.ORG</email>">
<!ENTITY a.rnordier "Robert Nordier <email>rnordier@FreeBSD.ORG</email>">
<!ENTITY a.roberto "Ollivier Robert <email>roberto@FreeBSD.ORG</email>">
<!ENTITY a.rse "Ralf S. Engelschall <email>rse@FreeBSD.ORG</email>">
@ -252,6 +284,8 @@
<!ENTITY a.tg "Thomas Gellekum <email>tg@FreeBSD.ORG</email>">
<!ENTITY a.thepish "Peter Hawkins <email>thepish@FreeBSD.ORG</email>">
<!ENTITY a.torstenb "Torsten Blum <email>torstenb@FreeBSD.ORG</email>">
<!ENTITY a.ugen "Ugen J.S.Antsilevich <email>ugen@FreeBSD.ORG</email>">

View file

@ -0,0 +1,731 @@
<chapter id="backups">
<title>Backups</title>
<para>Issues of hardware compatibility are among the most troublesome in the
computer industry today and FreeBSD is by no means immune to trouble. In
this respect, FreeBSD's advantage of being able to run on inexpensive
commodity PC hardware is also its liability when it comes to support for
the amazing variety of components on the market. While it would be
impossible to provide a exhaustive listing of hardware that FreeBSD
supports, this section serves as a catalog of the device drivers included
with FreeBSD and the hardware each drivers supports. Where possible and
appropriate, notes about specific products are included. You may also want
to refer to <link linkend="kernelconfig-config"> the kernel configuration
file</link> section in this handbook for a list of supported
devices.</para>
<para>As FreeBSD is a volunteer project without a funded testing department,
we depend on you, the user, for much of the information contained in this
catalog. If you have direct experience of hardware that does or does not
work with FreeBSD, please let us know by sending e-mail to the &a.doc;.
Questions about supported hardware should be directed to the &a.questions
(see <link linkend="eresources-mail">Mailing Lists</link> for more
information). When submitting information or asking a question, please
remember to specify exactly what version of FreeBSD you are using and
include as many details of your hardware as possible.</para>
<sect1>
<title>* What about backups to floppies?</title>
<para></para>
</sect1>
<sect1 id="backups-tapebackups">
<title>Tape Media</title>
<para>The major tape media are the 4mm, 8mm, QIC, mini-cartridge and
DLT.</para>
<sect2 id="backups-tapebackups-4mm">
<title>4mm (DDS: Digital Data
Storage)</title>
<para>4mm tapes are replacing QIC as the workstation backup media of
choice. This trend accelerated greatly when Conner purchased Archive,
a leading manufacturer of QIC drives, and then stopped production of
QIC drives. 4mm drives are small and quiet but do not have the
reputation for reliability that is enjoyed by 8mm drives. The
cartridges are less expensive and smaller (3 x 2 x 0.5 inches, 76 x 51
x 12 mm) than 8mm cartridges. 4mm, like 8mm, has comparatively short
head life for the same reason, both use helical scan.</para>
<para>Data thruput on these drives starts ~150kB/s, peaking at ~500kB/s.
Data capacity starts at 1.3 GB and ends at 2.0 GB. Hardware
compression, available with most of these drives, approximately
doubles the capacity. Multi-drive tape library units can have 6 drives
in a single cabinet with automatic tape changing. Library capacities
reach 240 GB.</para>
<para>4mm drives, like 8mm drives, use helical-scan. All the benefits
and drawbacks of helical-scan apply to both 4mm and 8mm drives.</para>
<para>Tapes should be retired from use after 2,000 passes or 100 full
backups.</para>
</sect2>
<sect2 id="backups-tapebackups-8mm">
<title>8mm (Exabyte)</title>
<para>8mm tapes are the most common SCSI tape drives; they are the best
choice of exchanging tapes. Nearly every site has an exabyte 2 GB 8mm
tape drive. 8mm drives are reliable, convenient and quiet. Cartridges
are inexpensive and small (4.8 x 3.3 x 0.6 inches; 122 x 84 x 15 mm).
One downside of 8mm tape is relatively short head and tape life due to
the high rate of relative motion of the tape across the heads.</para>
<para>Data thruput ranges from ~250kB/s to ~500kB/s. Data sizes start at
300 MB and go up to 7 GB. Hardware compression, available with most of
these drives, approximately doubles the capacity. These drives are
available as single units or multi-drive tape libraries with 6 drives
and 120 tapes in a single cabinet. Tapes are changed automatically by
the unit. Library capacities reach 840+ GB.</para>
<para>Data is recorded onto the tape using helical-scan, the heads are
positioned at an angle to the media (approximately 6 degrees). The
tape wraps around 270 degrees of the spool that holds the heads. The
spool spins while the tape slides over the spool. The result is a high
density of data and closely packed tracks that angle across the tape
from one edge to the other.</para>
</sect2>
<sect2 id="backups-tapebackups-qic">
<title>QIC</title>
<para>QIC-150 tapes and drives are, perhaps, the most common tape drive
and media around. QIC tape drives are the least expensive "serious"
backup drives. The downside is the cost of media. QIC tapes are
expensive compared to 8mm or 4mm tapes, up to 5 times the price per GB
data storage. But, if your needs can be satisfied with a half-dozen
tapes, QIC may be the correct choice. QIC is the
<emphasis>most</emphasis> common tape drive. Every site has a QIC
drive of some density or another. Therein lies the rub, QIC has a
large number of densities on physically similar (sometimes identical)
tapes. QIC drives are not quiet. These drives audibly seek before they
begin to record data and are clearly audible whenever reading, writing
or seeking. QIC tapes measure (6 x 4 x 0.7 inches; 15.2 x 10.2 x 1.7
mm). <link linkend="backups-tapebackups-mini">Mini-cartridges</link>,
which also use 1/4" wide tape are discussed separately. Tape libraries
and changers are not available.</para>
<para>Data thruput ranges from ~150kB/s to ~500kB/s. Data capacity
ranges from 40 MB to 15 GB. Hardware compression is available on many
of the newer QIC drives. QIC drives are less frequently installed;
they are being supplanted by DAT drives.</para>
<para>Data is recorded onto the tape in tracks. The tracks run along the
long axis of the tape media from one end to the other. The number of
tracks, and therefore the width of a track, varies with the tape's
capacity. Most if not all newer drives provide backward-compatibility
at least for reading (but often also for writing). QIC has a good
reputation regarding the safety of the data (the mechanics are simpler
and more robust than for helical scan drives).</para>
<para>Tapes should be retired from use after 5,000 backups.</para>
</sect2>
<sect2 id="backups-tapebackups-mini">
<title>* Mini-Cartridge</title>
<para></para>
</sect2>
<sect2 id="backups-tapebackups-dlt">
<title>DLT</title>
<para>DLT has the fastest data transfer rate of all the drive types
listed here. The 1/2" (12.5mm) tape is contained in a single spool
cartridge (4 x 4 x 1 inches; 100 x 100 x 25 mm). The cartridge has a
swinging gate along one entire side of the cartridge. The drive
mechanism opens this gate to extract the tape leader. The tape leader
has an oval hole in it which the drive uses to "hook" the tape. The
take-up spool is located inside the tape drive. All the other tape
cartridges listed here (9 track tapes are the only exception) have
both the supply and take-up spools located inside the tape cartridge
itself.</para>
<para>Data thruput is approximately 1.5MB/s, three times the thruput of
4mm, 8mm, or QIC tape drives. Data capacities range from 10GB to 20GB
for a single drive. Drives are available in both multi-tape changers
and multi-tape, multi-drive tape libraries containing from 5 to 900
tapes over 1 to 20 drives, providing from 50GB to 9TB of
storage.</para>
<para>Data is recorded onto the tape in tracks parallel to the direction
of travel (just like QIC tapes). Two tracks are written at once.
Read/write head lifetimes are relatively long; once the tape stops
moving, there is no relative motion between the heads and the
tape.</para>
</sect2>
<sect2>
<title>Using a new tape for the first time</title>
<para>The first time that you try to read or write a new,
completely blank tape, the operation will fail. The console
messages should be similar to:</para>
<informalexample>
<screen>st0(ncr1:4:0): NOT READY asc:4,1
st0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
</informalexample>
<para>The tape does not contain an Identifier Block (block number 0).
All QIC tape drives since the adoption of QIC-525 standard write an
Identifier Block to the tape. There are two solutions:</para>
<para><command>mt fsf 1</command> causes the tape drive to write an
Identifier Block to the tape.</para>
<para>Use the front panel button to eject the tape.</para>
<para>Re-insert the tape and
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> data to the tape.</para>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> will report <literal>DUMP:
End of tape detected</literal> and the console will show:
<literal>HARDWARE FAILURE info:280 asc:80,96</literal></para>
<para>rewind the tape using: <command>mt rewind</command></para>
<para>Subsequent tape operations are successful.</para>
</sect2>
</sect1>
<sect1 id="backup-programs">
<title>Backup Programs</title>
<para>The three major programs are
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>,
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>,
and
<citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>.</para>
<sect2>
<title>Dump and Restore</title>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>restore</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> are the traditional Unix backup programs. They operate
on the drive as a collection of disk blocks, below the abstractions of
files, links and directories that are created by the filesystems.
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> backs up devices, entire filesystems, not parts of a
filesystem and not directory trees that span more than one filesystem,
using either soft links <citerefentry>
<refentrytitle>ln</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> or mounting one filesystem onto another.
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> does not write files and directories to tape, but
rather writes the data blocks that are the building blocks of files
and directories. <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> has quirks that remain from its early days in
Version 6 of ATT Unix (circa 1975). The default parameters are
suitable for 9-track tapes (6250 bpi), not the high-density media
available today (up to 62,182 ftpi). These defaults must be overridden
on the command line to utilize the capacity of current tape
drives.</para>
<para><citerefentry>
<refentrytitle>rdump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>rrestore</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> backup data across the
network to a tape drive attached to another computer. Both programs
rely upon <citerefentry>
<refentrytitle>rcmd</refentrytitle>
<manvolnum>3</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>ruserok</refentrytitle>
<manvolnum>3</manvolnum></citerefentry> to access the remote tape
drive. Therefore, the user performing the backup must have
<literal>rhosts</literal> access to the remote computer. The
arguments to <citerefentry>
<refentrytitle>rdump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>rrestore</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> must suitable to use on the remote computer. (e.g.
When <command>rdump</command>'ing from a FreeBSD computer to an
Exabyte tape drive connected to a Sun called
<hostid>komodo</hostid>, use: <command>/sbin/rdump 0dsbfu 54000
13000 126 komodo:/dev/nrst8 /dev/rsd0a 2>&amp;1</command>) Beware:
there are security implications to allowing <literal>rhosts</literal>
commands. Evaluate your situation carefully.</para>
</sect2>
<sect2>
<title>Tar</title>
<para><citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> also dates back to Version 6 of ATT Unix (circa
1975). <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> operates in cooperation with the filesystem;
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> writes files and directories to tape.
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> does not support the full range of options that are
available from <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>, but <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not require the
unusual command pipeline that <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> uses.</para>
<para>Most versions of <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> do not support backups across the network. The GNU
version of <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>, which FreeBSD utilizes,
supports remote devices using the same syntax as
<command>rdump</command>. To <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> to an Exabyte tape drive connected to a Sun called
komodo, use: <command>/usr/bin/tar cf komodo:/dev/nrst8 .
2>&amp;1</command>. For versions without remote device support,
you can use a pipeline and <citerefentry>
<refentrytitle>rsh</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> to send the data to a
remote tape drive. (XXX add an example command)</para>
</sect2>
<sect2>
<title>Cpio</title>
<para><citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> is the original Unix
file interchange tape program for magnetic media. <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> has options (among many
others) to perform byte-swapping, write a number of different
archives format, and pipe the data to other programs. This last
feature makes <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> and excellent choice for
installation media. <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not know how to walk
the directory tree and a list of files must be provided thru
<filename>STDIN</filename>.</para>
<para><citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not support backups
across the network. You can use a pipeline and <citerefentry>
<refentrytitle>rsh</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> to send the data to a
remote tape drive. (XXX add an example command)</para>
</sect2>
<sect2>
<title>Pax</title>
<para><citerefentry>
<refentrytitle>pax</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> is IEEE/POSIX's answer to
<command>tar</command> and <command>cpio</command>. Over the years the
various versions of <command>tar</command> and <command>cpio</command>
have gotten slightly incompatible. So rather than fight it out to
fully standardize them, POSIX created a new archive utility.
<command>pax</command> attempts to read and write many of the various
cpio and tar formats, plus new formats of its own. Its command set
more resembles <command>cpio</command> than
<command>tar</command>.</para>
</sect2>
<sect2 id="backups-programs-amanda">
<title>Amanda</title>
<para><ulink url="../ports/misc.html#amanda-2.4.0">Amanda</ulink>
(Advanced Maryland Network Disk Archiver) is a client/server backup
system, rather than a single program. An Amanda server will backup to
a single tape drive any number of computers that have Amanda clients
and network communications with the Amanda server. A common problem at
locations with a number of large disks is the length of time required
to backup to data directly to tape exceeds the amount of time
available for the task. Amanda solves this problem. Amanda can use a
"holding disk" to backup several filesystems at the same time. Amanda
creates "archive sets": a group of tapes used over a period of time to
create full backups of all the filesystems listed in Amanda's
configuration file. The "archive set" also contains nightly
incremental (or differential) backups of all the filesystems.
Restoring a damaged filesystem requires the most recent full backup
and the incremental backups.</para>
<para>The configuration file provides fine control backups and the
network traffic that Amanda generates. Amanda will use any of the
above backup programs to write the data to tape. Amanda is available
as either a port or a package, it is not installed by default.</para>
</sect2>
<sect2>
<title>Do nothing</title>
<para>&ldquo;Do nothing&rdquo; is not a computer program, but it is the
most widely used backup strategy. There are no initial costs. There is
no backup schedule to follow. Just say no. If something happens to
your data, grin and bear it!</para>
<para>If your time and your data is worth little to nothing, then
&ldquo;Do nothing&rdquo; is the most suitable backup program for your
computer. But beware, Unix is a useful tool, you may find that within
six months you have a collection of files that are valuable to
you.</para>
<para>&ldquo;Do nothing&rdquo; is the correct backup method for
<filename>/usr/obj</filename> and other directory trees that can be
exactly recreated by your computer. An example is the files that
comprise these handbook pages-they have been generated from
<acronym>SGML</acronym> input files. Creating backups of these
<acronym>HTML</acronym> files is not necessary. The
<acronym>SGML</acronym> source files are backed up regularly.</para>
</sect2>
<sect2>
<title>Which Backup Program is Best?</title>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> <emphasis>Period.</emphasis>
Elizabeth D. Zwicky torture tested all the backup programs discussed
here. The clear choice for preserving all your data and all the
peculiarities of Unix filesystems is <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>. Elizabeth created
filesystems containing a large variety of unusual conditions (and some
not so unusual ones) and tested each program by do a backup and
restore of that filesystems. The peculiarities included: files with
holes, files with holes and a block of nulls, files with funny
characters in their names, unreadable and unwritable files, devices,
files that change size during the backup, files that are
created/deleted during the backup and more. She presented the results
at LISA V in Oct. 1991. See <ulink
url="http://reality.sgi.com/zwicky_neu/testdump.doc.html">torture-testing Backup and Archive Programs</ulink>.</para>
</sect2>
<sect2>
<title>Emergency Restore Procedure</title>
<sect3>
<title>Before the Disaster</title>
<para>There are only four steps that you need to perform in
preparation for any disaster that may occur.</para>
<para>First, print the disklabel from each of your disks
(<command>e.g. disklabel sd0 | lpr</command>), your filesystem table
(<command>/etc/fstab</command>) and all boot messages, two copies of
each.</para>
<para>Second, determine that the boot and fixit floppies
(<filename>boot.flp</filename> and <filename>fixit.flp</filename>)
have all your devices. The easiest way to check is to reboot your
machine with the boot floppy in the floppy drive and check the boot
messages. If all your devices are listed and functional, skip on to
step three.</para>
<para>Otherwise, you have to create two custom bootable floppies
which has a kernel that can mount your all of your disks and
access your tape drive. These floppies must contain:
<citerefentry>
<refentrytitle>fdisk</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>disklabel</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>newfs</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>mount</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, and whichever backup
program you use. These programs must be statically linked. If you
use <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, the floppy must contain
<citerefentry>
<refentrytitle>restore</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>.</para>
<para>Third, create backup tapes regularly. Any changes that you make
after your last backup may be irretrievably lost. Write-protect the
backup tapes.</para>
<para>Fourth, test the floppies (either <filename>boot.flp</filename>
and <filename>fixit.flp</filename> or the two custom bootable
floppies you made in step two.) and backup tapes. Make notes of the
procedure. Store these notes with the bootable floppy, the printouts
and the backup tapes. You will be so distraught when restoring that
the notes may prevent you from destroying your backup tapes (How?
In place of <command>tar xvf /dev/rst0</command>, you might
accidently type <command>tar cvf /dev/rst0</command> and over-write
your backup tape).</para>
<para>For an added measure of security, make bootable floppies and two
backup tapes each time. Store one of each at a remote location. A
remote location is NOT the basement of the same office building. A
number of firms in the World Trade Center learned this lesson the
hard way. A remote location should be physically separated from your
computers and disk drives by a significant distance.</para>
<para>An example script for creating a bootable floppy:</para>
<programlisting>
<![ CDATA [#!/bin/sh
#
# create a restore floppy
#
# format the floppy
#
PATH=/bin:/sbin:/usr/sbin:/usr/bin
fdformat -q fd0
if [ $? -ne 0 ]
then
echo "Bad floppy, please use a new one"
exit 1
fi
# place boot blocks on the floppy
#
disklabel -w -B -b /usr/mdec/fdboot -s /usr/mdec/bootfd /dev/rfd0c fd1440
#
# newfs the one and only partition
#
newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/rfd0a
#
# mount the new floppy
#
mount /dev/fd0a /mnt
#
# create required directories
#
mkdir /mnt/dev
mkdir /mnt/bin
mkdir /mnt/sbin
mkdir /mnt/etc
mkdir /mnt/root
mkdir /mnt/mnt # for the root partition
mkdir /mnt/tmp
mkdir /mnt/var
#
# populate the directories
#
if [ ! -x /sys/compile/MINI/kernel ]
then
cat << EOM
The MINI kernel does not exist, please create one.
Here is an example config file:
#
# MINI -- A kernel to get FreeBSD on onto a disk.
#
machine "i386"
cpu "I486_CPU"
ident MINI
maxusers 5
options INET # needed for _tcp _icmpstat _ipstat
# _udpstat _tcpstat _udb
options FFS #Berkeley Fast File System
options FAT_CURSOR #block cursor in syscons or pccons
options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device
options NCONS=2 #1 virtual consoles
options USERCONFIG #Allow user configuration with -c XXX
config kernel root on sd0 swap on sd0 and sd1 dumps on sd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller ncr0
controller scbus0
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
device sd0
device sd1
device sd2
device st0
pseudo-device loop # required by INET
pseudo-device gzip # Exec gzipped a.out's
EOM
exit 1
fi
cp -f /sys/compile/MINI/kernel /mnt
gzip -c -best /sbin/init > /mnt/sbin/init
gzip -c -best /sbin/fsck > /mnt/sbin/fsck
gzip -c -best /sbin/mount > /mnt/sbin/mount
gzip -c -best /sbin/halt > /mnt/sbin/halt
gzip -c -best /sbin/restore > /mnt/sbin/restore
gzip -c -best /bin/sh > /mnt/bin/sh
gzip -c -best /bin/sync > /mnt/bin/sync
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV sd0
./MAKEDEV sd1
./MAKEDEV sd2
./MAKEDEV st0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat > /mnt/etc/fstab <<EOM
/dev/fd0a / ufs rw 1 1
EOM
#
# create minimum passwd file
#
cat > /mnt/etc/passwd <<EOM
root:*:0:0:Charlie &:/root:/bin/sh
EOM
cat > /mnt/etc/master.passwd <<EOM
root::0:0::0:0:Charlie &:/root:/bin/sh
EOM
chmod 600 /mnt/etc/master.passwd
chmod 644 /mnt/etc/passwd
/usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd
#
# umount the floppy and inform the user
#
/sbin/umount /mnt]]></programlisting>
</sect3>
<sect3>
<title>After the Disaster</title>
<para>The key question is: did your hardware survive? You have been
doing regular backups so there is no need to worry about the
software.</para>
<para>If the hardware has been damaged. First, replace those parts
that have been damaged.</para>
<para>If your hardware is okay, check your floppies. If you are using
a custom boot floppy, boot single-user (type <literal>-s</literal>
at the <prompt>boot:</prompt> prompt). Skip the following
paragraph.</para>
<para>If you are using the <filename>boot.flp</filename> and
<filename>fixit.flp</filename> floppies, keep reading. Insert the
<filename>boot.flp</filename> floppy in the first floppy drive and
boot the computer. The original install menu will be displayed on
the screen. Select the <literal>Fixit--Repair mode with CDROM or
floppy.</literal> option. Insert the
<filename>fixit.flp</filename> when prompted.
<command>restore</command> and the other programs that you need are
located in <filename>/mnt2/stand</filename>.</para>
<para>Recover each filesystem separately.</para>
<para>Try to <citerefentry>
<refentrytitle>mount</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry>(e.g. <command>mount /dev/sd0a
/mnt</command>) the root partition of your first disk. If the
disklabel was damaged, use <citerefentry>
<refentrytitle>disklabel</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> to re-partition and
label the disk to match the label that your printed and saved. Use
<citerefentry>
<refentrytitle>newfs</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> to re-create the
filesystems. Re-mount the root partition of the floppy read-write
(<command>mount -u -o rw /mnt</command>). Use your backup program
and backup tapes to recover the data for this filesystem (e.g.
<command>restore vrf /dev/st0</command>). Unmount the filesystem
(e.g. <command>umount /mnt</command>) Repeat for each filesystem
that was damaged.</para>
<para>Once your system is running, backup your data onto new tapes.
Whatever caused the crash or data loss may strike again. An another
hour spent now, may save you from further distress later.</para>
</sect3>
<sect3>
<title>* I did not prepare for the Disaster, What Now?</title>
<para></para>
</sect3>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../handbook.sgml" "part" "chapter")
End:
-->

View file

@ -49,7 +49,11 @@
<ulink URL="http://www.ascii.co.jp/">ASCII</ulink>. ISBN
4-7561-1580-2 P3800E.</para>
</listitem>
<listitem>
<para>FreeBSD mit Methode (in German), publiched by Computer und
Literatur Verlag/Vertrieb Hanser, 1998. ISBN 3-93211-31-0.</para>
</listitem>
</itemizedlist>
@ -151,7 +155,7 @@
<listitem>
<para>Nemeth, Evi. <emphasis>UNIX System Administration
Handbook</emphasis>. 2nd ed. Prentice Hall, 1995. <!-- <br>
Handbook</emphasis>. 2nd Ed. Prentice Hall, 1995. <!-- <br>
--> ISBN 0131510517</para>
</listitem>
@ -190,12 +194,6 @@
<!-- <br> --> ISBN 1-56592-079-1</para>
</listitem>
<listitem>
<para>Ellis, Margaret A. and Stroustrup, Bjarne. <emphasis>The
Annotated C++ Reference Manual</emphasis>. Addison-Wesley,
1990. <!-- <br> --> ISBN 0-201-51459-1</para>
</listitem>
<listitem>
<para>Harbison, Samuel P. and Steele, Guy L. Jr. <emphasis>C: A
Reference Manual</emphasis>. 4rd ed. Prentice Hall, 1995.
@ -209,7 +207,7 @@
</listitem>
<listitem>
<para>Lehey, Greg. <emphasis>Port UNIX Software</emphasis>.
<para>Lehey, Greg. <emphasis>Porting UNIX Software</emphasis>.
O'Reilly &amp; Associates, Inc., 1995.<!-- <br> --> ISBN
1-56592-126-7</para>
</listitem>
@ -226,11 +224,11 @@
Addison-Wesley, 1992<!-- <br> --> ISBN 0-201-56317-7</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>UNIX Network
Programming</emphasis>. PTR Prentice Hall, 1990. <!-- <br>
--> ISBN 0-13-949876-1</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>UNIX Network
Programming</emphasis>. 2nd Ed, PTR Prentice Hall, 1998. ISBN
0-13-490012-X</para>
</listitem>
<listitem>
<para>Wells, Bill. &ldquo;Writing Serial Drivers for UNIX&rdquo;.
@ -288,7 +286,13 @@
1: The Protocols</emphasis>. Reading, Mass. :
Addison-Wesley, 1996.<!-- <br> --> ISBN 0-201-63346-9</para>
</listitem>
<listitem>
<para>Schimmel, Curt. <emphasis>Unix Systems for Modern
Architectures</emphasis>. Reading, Mass. : Addison-Wesley,
1994. ISBN 0-201-63338-8</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>TCP/IP Illustrated, Volume
3: TCP for Transactions, HTTP, NNTP and the UNIX Domain
@ -322,7 +326,7 @@
<listitem>
<para>Cheswick, William R. and Steven M. Bellovin.
<emphasis>Firewalls and Internal Security: Repelling the Wily
<emphasis>Firewalls and Internet Security: Repelling the Wily
Hacker</emphasis>. Reading, Mass. : Addison-Wesley,
1995.<!-- <br> --> ISBN 0-201-63357-4</para>
</listitem>
@ -352,7 +356,7 @@
<listitem>
<para>Anderson, Don and Tom Shanley. <emphasis>Pentium Processor
System Architecture</emphasis>. 2nd ed. Reading, Mass. :
System Architecture</emphasis>. 2nd Ed. Reading, Mass. :
Addison-Wesley, 1995.<!-- <br> --> ISBN 0-201-40992-5</para>
</listitem>
@ -362,7 +366,14 @@
Mass. : Addison-Wesley, 1995.<!-- <br> --> ISBN
0-201-62490-7</para>
</listitem>
<listitem>
<para>Intel Corporation publishes documentation on their CPUs,
chipsets and standards on their <ulink
url="http://developer.intel.com/">developer web site</ulink>,
usually as PDF files.</para>
</listitem>
<listitem>
<para>Shanley, Tom. <emphasis>80486 System
Architecture</emphasis>. 3rd ed. Reading, Mass. :
@ -433,7 +444,7 @@
<listitem>
<para><emphasis>The BSD family tree</emphasis>. 1997.<!-- <br>
--> <ulink
URL="http://www.de.freebsd.org/de/ftp/unix-stammbaum">http://www.de.freebsd.org/de/ftp/unix-stammbaum</ulink> or <ulink URL="file:/usr/share/misc/bsd-family-tree">local</ulink> on a FreeBSD-current machine.</para>
url="ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree">ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree</ulink> or <ulink URL="file:/usr/share/misc/bsd-family-tree">local</ulink> on a FreeBSD-current machine.</para>
</listitem>
<listitem>
@ -447,7 +458,12 @@
Library</emphasis>.<!-- <br> --> <ulink
URL="http://www.ncstrl.org/">http://www.ncstrl.org/</ulink></para>
</listitem>
<listitem>
<para><emphasis>Old BSD releases from the Computer Systems Research
group (CSRG)</emphasis>. <ulink
url="http://www.mckusick.com/csrg/">http://www.mckusick.com/csrg/</ulink>: The 4CD set covers all BSD versions from 1BSD to 4.4BSD and 4.4BSD-Lite2 (but not 2.11BSD, unfortunately). As well, the last disk holds the final sources plus the SCCS files.</para>
</listitem>
</itemizedlist>

View file

@ -3,7 +3,7 @@
<!ENTITY % authors SYSTEM "authors.ent"> %authors;
<!ENTITY % mailing-lists SYSTEM "mailing-lists.ent"> %mailing-lists;
<!ENTITY rel.current CDATA "2.2.6">
<!ENTITY rel.current CDATA "3.0">
]>
<book>
@ -16,7 +16,7 @@
</author>
</authorgroup>
<pubdate>March 1998</pubdate>
<pubdate>July 1998</pubdate>
<copyright>
<year>1995</year>
@ -35,11 +35,12 @@
with this project, send email to the &a.doc; The latest version of
this document is always available from the <ulink
URL="http://www.FreeBSD.ORG/">FreeBSD World Wide Web server</ulink>.
It may also be downloaded in plain text, postscript or HTML from the
<ulink URL="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs">FreeBSD FTP
server</ulink> or one of the numerous <link
It may also be downloaded in <ulink url="handbook.latin1">plain
text</ulink>, <ulink url="handbook.ps">postscript</ulink> or <ulink
url="handbook-html.tar.gz">HTML</ulink> with HTTP or gzip'd from the <ulink
url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs/">FreeBSD FTP server</ulink> or one of the numerous <link
linkend="mirrors-ftp">mirror sites</link>. You may also want to
<ulink URL="/search.html">Search the Handbook</ulink>.</para>
<ulink URL="http://www.FreeBSD.ORG/search.html">Search the Handbook</ulink>.</para>
</abstract>
</bookinfo>
@ -58,6 +59,8 @@
&chap.kernelconfig;
&chap.security;
&chap.printing;
&chap.disks;
&chap.backups;
&chap.quotas;
&chap.x11;
&chap.hw;

View file

@ -6,7 +6,7 @@
Chapters should be listed in the order in which they are referenced.
$Id: chapters.ent,v 1.2 1998-11-04 22:38:06 nik Exp $
$Id: chapters.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!-- Part one -->
@ -19,6 +19,8 @@
<!ENTITY chap.kernelconfig SYSTEM "kernelconfig/chapter.sgml">
<!ENTITY chap.security SYSTEM "security/chapter.sgml">
<!ENTITY chap.printing SYSTEM "printing/chapter.sgml">
<!ENTITY chap.disks SYSTEM "disks/chapter.sgml">
<!ENTITY chap.backups SYSTEM "backups/chapter.sgml">
<!ENTITY chap.quotas SYSTEM "quotas/chapter.sgml">
<!ENTITY chap.x11 SYSTEM "x11/chapter.sgml">
<!ENTITY chap.hw SYSTEM "hw/chapter.sgml">

File diff suppressed because it is too large Load diff

View file

@ -359,10 +359,13 @@ subscribe freebsd-stable</programlisting> In the body of your
<para>There are various ways of using an Internet (or email)
connection to stay up-to-date with any given area of the FreeBSD
project sources, or all areas, depending on what interests you. The
primary services we offer are <application>CVSup</application> and <application>CTM</application>.</para>
primary services we offer are <link linkend="anoncvs">Anonymous
CVS</link>, <link linkend="cvsup">CVSup</link>, and
<link linkend="ctm">CTM</link>.</para>
<para><application>CVSup</application> uses the
<emphasis>pull</emphasis> model of updating. The user (or a cron
<para><application>Anonymous CVS</application> and <application>CVSup</application> use the
<emphasis>pull</emphasis> model of updating sources. In the case of
<application>CVSup</application> the user (or a cron
script) invokes the <command>cvsup</command> program, and
it interacts with a <command>cvsupd</command> server
somewhere to bring your files up to date. The updates you receive
@ -370,14 +373,21 @@ subscribe freebsd-stable</programlisting> In the body of your
them. You can easily restrict your updates to the specific files or
directories that are of interest to you. Updates are generated on
the fly by the server, according to what you have and what you want
to have.</para>
to have. <application>Anonymous CVS</application> is quite a bit more simplistic
than CVSup in that it's just an extension to
<application>CVS</application> which allows it to pull changes
directly from a remote CVS
repository. <application>CVSup</application> can do this far more
efficiently, but <application>Anonymous CVS</application> is easier to
use.</para>
<para><application>CTM</application>, on the other hand, does not
interactively compare the sources you have with those on the master
archive. Instead, a script which identifies changes in files since
its previous run is executed several times a day on the master
archive, any detected changes being compressed, stamped with a
sequence-number and encoded for transmission over email (printable
archive or otherwise pull them across.. Instead, a script which identifies changes in files since
its previous run is executed several times a day on the master CTM
machine,
any detected changes being compressed, stamped with a
sequence-number and encoded for transmission over email (in printable
ASCII only). Once received, these &ldquo;CTM deltas&rdquo; can then be handed
to the <citerefentry><refentrytitle>ctm_rmail</refentrytitle><manvolnum>1</manvolnum></citerefentry> utility which will automatically decode, verify
and apply the changes to the user's copy of the sources. This
@ -390,12 +400,313 @@ subscribe freebsd-stable</programlisting> In the body of your
damaged portions for you. <application>CTM</application> won't do this, and if you wipe some
portion of your source tree out (and don't have it backed up) then
you will have to start from scratch (from the most recent CVS &ldquo;base
delta&rdquo;) and rebuild it all.</para>
delta&rdquo;) and rebuild it all with CTM or, with anoncvs, simply
delete the bad bits and resync.</para>
<para>For more information on <application>CTM</application> and <application>CVSup</application>, please see one of the
<para>For more information on <application>Anonymous CVS</application>, <application>CTM</application>, and <application>CVSup</application>, please see one of the
following sections:</para>
<sect2 id="anoncvs">
<title>Anonymous CVS</title>
<para><emphasis>Contributed by &a.jkh;</emphasis></para>
<sect3>
<title><anchor id="anoncvs-intro">Introduction</title>
<para>Anonymous CVS (or, as it is otherwise known,
<emphasis>anoncvs</emphasis>) is a feature provided by the CVS
utilities bundled with FreeBSD for synchronizing with a remote CVS
repository. Among other things, it allows users of FreeBSD to
perform, with no special privileges, read-only CVS operations
against one of the FreeBSD project's official anoncvs servers. To
use it, one simply sets the <envar>CVSROOT</envar> environment
variable to point at the appropriate anoncvs server and then uses
the <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> command to access it like any local
repository.</para>
<para>While it can also be said that the <link
linkend="cvsup">CVSup</link> and <emphasis>anoncvs</emphasis>
services both perform essentially the same function, there are
various trade-offs which can influence the user's choice of
synchronization methods. In a nutshell,
<application>CVSup</application> is much more efficient in its
usage of network resources and is by far the most technically
sophisticated of the two, but at a price. To use
<application>CVSup</application>, a special client must first be
installed and configured before any bits can be grabbed, and then
only in the fairly large chunks which
<application>CVSup</application> calls
<emphasis>collections</emphasis>.</para>
<para><application>Anoncvs</application>, by contrast, can be used
to examine anything from an individual file to a specific program
(like <command>ls</command> or <command>grep</command>) by
referencing the CVS module name. Of course,
<application>anoncvs</application> is also only good for read-only
operations on the CVS repository, so if it's your intention to
support local development in one repository shared with the
FreeBSD project bits then <application>CVSup</application> is
really your only option.</para>
</sect3>
<sect3>
<title><anchor id="anoncvs-usage">Using Anonymous CVS</title>
<para>Configuring <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> to use an Anonymous CVS repository is a simple
matter of setting the <envar>CVSROOT</envar> environment variable
to point to one of the FreeBSD project's
<emphasis>anoncvs</emphasis> servers. At the time of this writing,
the following servers are available:</para>
<itemizedlist>
<listitem>
<para><emphasis>USA</emphasis>:
anoncvs@anoncvs.freebsd.org:/cvs</para>
</listitem>
</itemizedlist>
<para>Since CVS allows one to &ldquo;check out&rdquo; virtually any
version of the FreeBSD sources that ever existed (or, in some
cases, will exist <!-- smiley -->:), you need to be familiar with
the revision (<option>-r</option>) flag to <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> and what some of the permissible values for it in
the FreeBSD Project repository are.</para>
<para>There are two kinds of tags, revision tags and branch tags. A
revision tag refers to a specific revision. Its meaning stays the
same from day to day. A branch tag, on the other hand, refers to
the latest revision on a given line of development, at any given
time. Because a branch tag does not refer to a specific revision,
it may mean something different tomorrow than it means
today.</para>
<para>Here are the branch tags that users might be interested
in:</para>
<variablelist>
<varlistentry>
<term>HEAD</term>
<listitem>
<para>Symbolic name for the main line, or FreeBSD-current.
Also the default when no revision is
specified.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2</term>
<listitem>
<para>The line of development for FreeBSD-2.2.x, also known as
FreeBSD-stable. Not valid for the ports collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_0</term>
<listitem>
<para>The line of development for FreeBSD-2.1.x - this branch
is largely obsolete. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Here are the revision tags that users might be interested
in:</para>
<variablelist>
<varlistentry>
<term>RELENG_2_2_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.6. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_5_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.5. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_2_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.2. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_1_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.1. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_0_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.0. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_7_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.7. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_6_1_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.6.1. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.6. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_5_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.5. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_0_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.0. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
</variablelist>
<para>When you specify a branch tag, you normally receive the latest
versions of the files on that line of development. If you wish to
receive some past version, you can do so by specifying a date with
the <option>-D date</option> flag. See the <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> man page for more details.</para>
</sect3>
<sect3>
<title>Examples</title>
<para>While it really is recommended that you read the manual page
for <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> thoroughly before doing
anything, here are some quick examples which essentially show how
to use Anonymous CVS:</para>
<example>
<title>Checking out something from -current (<citerefentry>
<refentrytitle>ls</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>) and deleting it
again:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co ls</userinput>
&prompt.user; <userinput>cvs release -d ls</userinput></screen>
</example>
<example>
<title>Checking out the version of ls(1) in the 2.2-stable
branch:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co -rRELENG_2_2 ls</userinput>
&prompt.user; <userinput>cvs release -d ls</userinput></screen>
</example>
<example>
<title>Creating a list of changes (as unidiffs) to <citerefentry>
<refentrytitle>ls</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> between FreeBSD 2.2.2
and FreeBSD 2.2.6:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs rdiff -u -rRELENG_2_2_2_RELEASE -rRELENG_2_2_6_RELEASE ls</userinput></screen>
</example>
<example>
<title>Finding out what other module names can be used:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co modules</userinput>
&prompt.user; <userinput>more modules/modules</userinput>
&prompt.user; <userinput>cvs release -d modules</userinput></screen>
</example>
</sect3>
<sect3>
<title>Other Resources</title>
<para>The following additional resources may be helpful in learning
CVS:</para>
<itemizedlist>
<listitem>
<para><ulink
url="http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/cvs/">CVS Tutorial</ulink> from Cal Poly.</para>
</listitem>
<listitem>
<para><ulink url="http://www.cyclic.com">Cyclic
Software</ulink>, commercial maintainers of CVS.</para>
</listitem>
<listitem>
<para><ulink
url="http://www.freebsd.org/cgi/cvsweb.cgi">CVSWeb</ulink>
is the FreeBSD Project web interface for CVS.</para>
</listitem>
</itemizedlist>
</sect3>
</sect2>
<sect2 id="ctm">
<title><application>CTM</application></title>
@ -511,23 +822,27 @@ subscribe freebsd-stable</programlisting> In the body of your
produced subsequently to it.</para>
<para>First you should determine what you already have. Everyone
can start from an &ldquo;empty&rdquo; directory. However, since the trees
can start from an &ldquo;empty&rdquo; directory. You must use an
initial &ldquo;Empty&rdquo delta to start off your
<application>CTM</application> supported tree. At some point it is
intended that one of these &ldquo;started&rdquo; deltas be
distributed on the CD for your convenience. This does not
currently happen however.</para>
<para>You can recognize
However, since the trees
are many tens of megabytes, you should prefer to start from
something already at hand. If you have a RELEASE CD, you can
copy or extract an initial source from it. This will save a
significant transfer of data.</para>
<para>Once you identify a suitable starting point, you must use an
initial &ldquo;transition&rdquo; delta to transform your starting point
into a <application>CTM</application> supported tree.</para>
<para>You can recognize these transition deltas by the
<para>You can recognize these &ldquo;starter&rdquo; deltas by the
<literal>X</literal> appended to the number
(<filename>src-cur.3210XEmpty.gz</filename> for instance). The
designation following the <filename>X</filename>
corresponds to the origin of your initial &ldquo;seed&rdquo;. <filename>Empty</filename> is
an empty directory, <filename>R225</filename> would designate the 2.2.5 release,
etc. As a rule a base transition from <filename>Empty</filename> is producted
an empty directory. As a rule a base transition from
<filename>Empty</filename> is produced
every 100 deltas. By the way, they are large! 25 to 30
Megabytes of <command>gzip</command>'ed data is
common for the <filename>XEmpty</filename> deltas.</para>
@ -791,7 +1106,7 @@ subscribe freebsd-stable</programlisting> In the body of your
<para>The easiest way to install <application>CVSup</application> if you are running FreeBSD
2.2 or later is to use either <ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/ports-current/net/cvsup.tar">the port</ulink> from the FreeBSD <link linkend="ports">ports collection</link> or the corresponding <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages-current/net/cvsup-15.3.tgz">binary package</ulink>, depending on whether you prefer to roll your own or not.</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/ports-current/net/cvsup.tar">the port</ulink> from the FreeBSD <link linkend="ports">ports collection</link> or the corresponding <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages-current/net/cvsup-15.4.2.tgz">binary package</ulink>, depending on whether you prefer to roll your own or not.</para>
<para>If you are running FreeBSD-2.1.6 or 2.1.7, you unfortunately
cannot use the binary package versions due to the fact that it
@ -813,24 +1128,25 @@ subscribe freebsd-stable</programlisting> In the body of your
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.3.tar.gz</ulink> (client including GUI).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.4.2.tar.gz</ulink> (client including GUI).</para>
</listitem>
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.3.tar.gz</ulink> (client without GUI).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.4.2.tar.gz</ulink> (client without GUI).</para>
</listitem>
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.3.tar.gz</ulink> (server).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.4.2.tar.gz</ulink> (server).</para>
</listitem>
</itemizedlist>
<para>or the German mirror:</para>
<para>as well as from the many FreeBSD <link
linkend="mirrors-ftp">FTP mirror sites</link> around the
world.</para>
<itemizedlist>
@ -1066,6 +1382,24 @@ cvs-crypto</programlisting>
<variablelist>
<varlistentry>
<term>tag=RELENG_3_0_0_RELEASE</term>
<listitem>
<para>FreeBSD-3.0. Not valid for the ports-*
collections.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>tag=RELENG_2_2_7_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.7. Not valid for the ports-*
collections.</para>
</listitem>
</varlistentry>
<varlistentry><term>tag=RELENG_2_2_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.6. Not valid for the ports-*
@ -1521,7 +1855,17 @@ cvs-crypto</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term><literal></literal>ports-deskutils
release=cvs</term>
<listitem>
<para>Things that used to be on the desktop before
computers were invented.</para>
</listitem>
</varlistentry>
<varlistentry><term><literal>ports-devel
release=cvs</literal></term>
@ -1746,10 +2090,54 @@ cvs-crypto</programlisting>
release=cvs</literal></term>
<listitem>
<para>X11 software.</para>
<para>Ports to support the X window
system.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-clocks
release=cvs</literal></term>
<listitem>
<para>X11 clocks.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-fm
release=cvs</literal></term>
<listitem>
<para>X11 file managers.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-fonts
release=cvs</literal></term>
<listitem>
<para>X11 fonts and font utilities.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-toolkits
release=cvs</literal></term>
<listitem>
<para>X11 toolkits.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-wm</literal></term>
<listitem>
<para>X11 window managers.</para>
</listitem>
</varlistentry>
</variablelist>

View file

@ -0,0 +1,165 @@
<chapter id="disks">
<title>Disks</title>
<para><emphasis>Contributed by &a.obrien; 26 April 1998</emphasis></para>
<para>Lets say we want to add a new SCSI disk to a machine that currently
only has a single drive. First turn off the computer and install the
drive in the computer following the instructions of the computer,
controller, and drive manufacturer. Due the wide variations of procedures
to do this, the details are beyond the scope of this document.</para>
<para>Login as user <username>root</username>. After you've installed the
drive, inspect <filename>/var/run/dmesg.boot</filename> to ensure the new
disk was found. Continuing with our example, the newly added drive will be
<filename>sd1</filename> and we want to mount it on
<filename>/1</filename>. (if you are adding an IDE drive substitute
<filename>wd</filename> for <filename>sd</filename>)</para>
<para>Because FreeBSD runs on IBM-PC compatible computers, it must take into
account the PC BIOS partitions. These are different from the traditional
BSD partitions. A PC disk has up to four BIOS partition entries. If the
disk is going to be truly dedicated to FreeBSD, you can use the
<emphasis>dedicated</emphasis> mode. Otherwise, FreeBSD will have to live
with in one of the PC BIOS partitions. FreeBSD calls the PC BIOS
partitions, <emphasis>slices</emphasis> so as not to confuse them with
traditional BSD partitions. You may also use slices on a disk that is
dedicated to FreeBSD, but used in a computer that also has another
operating system installed. This is to not confuse the
<command>fdisk</command> utility of the other operating system.</para>
<para>In the slice case the drive will be added as
<filename>/dev/sd1s1e</filename>. This is read as: SCSI disk, unit number
1 (second SCSI disk), slice 1 (PC BIOS partition 1), and
<filename>e</filename> BSD partition. In the dedicated case, the drive
will be added simply as <filename>/dev/sd1e</filename>.</para>
<sect1>
<title>Using sysinstall</title>
<para> You may use <command>/stand/sysinstall</command> to partition and
label a new disk using its easy to use menus. Either login as user
<username>root</username> or use the <command>su</command> command. Run
<command>/stand/sysinstall</command> and enter the
<literal>Configure</literal> menu. With in the <literal>FreeBSD
Configuration Menu</literal>, scroll down and select the
<literal>Partition</literal> item. Next you should be presented with a
list of hard drives installed in your system. If you do not see
<literal>sd1</literal> listed, you need to recheck your physical
installation and <command>dmesg</command> output in the file
<filename>/var/run/dmesg.boot</filename>.</para>
<para>Select <literal>sd1</literal> to enter the <literal>FDISK Partition
Editor</literal>. Choose <literal>A</literal> to use the entire disk
for FreeBSD. When asked if you want to <quote>remain cooperative with
any future possible operating systems</quote>, answer
<literal>YES</literal>. Write the changes to the disk using
<command>W</command>. Now exit the FDISK editor using
<command>q</command>. Next you will be asked about the Master Boot
Record. Since you are adding a disk to an already running system, choose
<literal>None</literal>.</para>
<para>Next enter the <literal>Disk Label Editor</literal>. This is where
you will create the traditional BSD partitions. A disk can have up to
eight partitions, labeled a-h. A few of the partition labels have
special uses. The <literal>a</literal> partition is used for the root
partition (<filename>/</filename>). Thus only your system disk (e.g, the
disk you boot from) should have an <literal>a</literal> partition. The
<literal>b</literal> partition is used for swap partitions, and you may
have many disks with swap partitions. The <literal>c</literal> partition
addresses the entire disk in dedicated mode, or the entire FreeBSD slice
in slice mode. The other partitions are for general use.</para>
<para>Sysinstall's Label editor favors the <literal>e</literal> partition
for non-root, non-swap partitions. With in the Label editor, create a
single file system using <command>C</command>. When prompted if this
will be a FS (file system) or swap, choose <literal>FS</literal> and
give a mount point (e.g, <filename>/mnt</filename>). When adding a disk
in post-install mode, Sysinstall will not create entries in
<filename>/etc/fstab</filename> for you, so the mount point you specify
isn't important.</para>
<para>You are now ready to write the new label to the disk and create a
file system on it. Do this by hitting <command>W</command>. Ignore any
errors from Sysinstall that it could not mount the new partition. Exit
the Label Editor and Sysinstall completely.</para>
<para>The last step is to edit <filename>/etc/fstab</filename> to add an
entry for your new disk.</para>
</sect1>
<sect1>
<title>Using command line utilities</title>
<sect2>
<title>* Using Slices</title>
<para></para>
</sect2>
<sect2>
<title>Dedicated</title>
<para>If you will not be sharing the new drive with another operating
system, you may use the <literal>dedicated</literal> mode. Remember
this mode can confuse Microsoft operating systems; however, no damage
will be done by them. IBM's OS/2 however, will
&ldquo;appropriate&rdquo; any partition it finds which it doesn't
understand.</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rsd1 bs=1k count=1</userinput>
&prompt.root; <userinput>disklabel -Brw sd1 auto</userinput>
&prompt.root; <userinput>disklabel -e sd</userinput>1 # create the `e' partition
&prompt.root; <userinput>newfs -d0 /dev/rsd1e</userinput>
&prompt.root; <userinput>mkdir -p /1</userinput>
&prompt.root; <userinput>vi /etc/fstab</userinput> # add an entry for /dev/sd1e
&prompt.root; <userinput>mount /1</userinput></screen>
</informalexample>
<para>An alternate method is:</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rsd1 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/rsd1 | disklabel -BrR sd1 /dev/stdin</userinput>
&prompt.root; <userinput>newfs /dev/rsd1e</userinput>
&prompt.root; <userinput>mkdir -p /1</userinput>
&prompt.root; <userinput>vi /etc/fstab</userinput> # add an entry for /dev/sd1e
&prompt.root; <userinput>mount /1</userinput></screen>
</informalexample>
</sect2>
</sect1>
<sect1>
<title>* Non-traditional Drives</title>
<sect2>
<title>* Zip Drives</title>
<para></para>
</sect2>
<sect2>
<title>* Jazz Drives</title>
<para></para>
</sect2>
<sect2>
<title>* Sequest Drives</title>
<para></para>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../handbook.sgml" "part" "chapter")
End:
-->

View file

@ -49,7 +49,7 @@
<title>List summary</title>
<para><emphasis>General lists:</emphasis> The following are
general lists which anyone is free to join:</para>
general lists which anyone is free (and encouraged) to join:</para>
<informaltable frame="none">
<tgroup cols="2">
@ -61,6 +61,11 @@
</thead>
<tbody>
<row>
<entry>freebsd-advocacy</entry>
<entry>FreeBSD Evangelism</entry>
</row>
<row>
<entry>freebsd-announce</entry>
<entry>Important events and project milestones</entry>
@ -101,6 +106,11 @@
opportunities</entry>
</row>
<row>
<entry>freebsd-newbies</entry>
<entry>New FreeBSD users activities and discussions</entry>
</row>
<row>
<entry>freebsd-questions</entry>
<entry>User questions</entry>
@ -139,6 +149,12 @@
<entry>The FreeBSD Documentation project</entry>
</row>
<row>
<entry>freebsd-database</entry>
<entry>Discussing database use and development under
FreeBSD</entry>
</row>
<row>
<entry>freebsd-emulation</entry>
<entry>Emulation of other systems such as
@ -178,10 +194,15 @@
</row>
<row>
<entry>freebsd-multimedia</entry>
<entry>Multimedia discussion</entry>
<entry>freebsd-mozilla</entry>
<entry>Porting mozilla to FreeBSD</entry>
</row>
<row>
<entry>freebsd-net</entry>
<entry>Networking discussion and TCP/IP/source code</entry>
</row>
<row>
<entry>freebsd-platforms</entry>
<entry>Concerning ports to non-Intel architecture
@ -203,6 +224,11 @@
<entry>Security issues</entry>
</row>
<row>
<entry>freebsd-small</entry>
<entry>Using FreeBSD in embedded applications</entry>
</row>
<row>
<entry>freebsd-smp</entry>
<entry>Design discussions for [A]Symmetric
@ -213,6 +239,11 @@
<entry>freebsd-sparc</entry>
<entry>Porting FreeBSD to Sparc systems</entry>
</row>
<row>
<entry>freebsd-tokenring</entry>
<entry>Support Token Ring in FreeBSD</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -540,7 +571,7 @@ help
milestones</emphasis></para>
<para>This is the mailing list for people interested only
in occasional announcements of significant freebsd events.
in occasional announcements of significant FreeBSD events.
This includes announcements about snapshots and other
releases. It contains announcements of new FreeBSD
capabilities. It may contain calls for volunteers etc.
@ -555,10 +586,39 @@ help
<para><emphasis>Architecture and design
discussions</emphasis></para>
<para>This is the mailing
list for people discussing FreeBSD architectural issues.
It is a closed list, and not for general
subscription.</para>
<para>This is a moderated list for discussion of FreeBSD
architecture. Messages will mostly be kept technical in
nature, with (rare) exceptions for other messages the
moderator deems need to reach all the subscribers of the
list. Examples of suitable topics;</para>
<itemizedlist>
<listitem>
<para>How to re-vamp the build system to have several
customized builds running at the same time.</para>
</listitem>
<listitem>
<para>What needs to be fixed with VFS to make Heidemann
layers work.</para>
</listitem>
<listitem>
<para>How do we change the device driver interface to be
able to use the ame drivers cleanly on many buses and
architectures?</para>
</listitem>
<listitem>
<para>How do I write a network driver?</para>
</listitem>
</itemizedlist>
<para>The moderator reserves the right to do minor editing
(spell-checking, grammar correction, trimming) of messages
that are posted to the list. The volume of the list will be
kept low, which may involve having to delay topics until an
active discussion has been resolved.</para>
</listitem>
</varlistentry>
@ -660,9 +720,11 @@ help
<listitem>
<para><emphasis>Documentation project</emphasis></para>
<para>This mailing list belongs to the FreeBSD Doc Project
and is for the discussion of documentation related issues
and projects.</para>
<para>This mailing list is for the discussion of documentation
related issues and projects. The members of this mailing list
are collectively referred to as &ldquo;The FreeBSD
Documentation Project&rdquo;. It is an open list; feel free to
join and contribute.</para>
</listitem>
</varlistentry>
@ -766,16 +828,22 @@ help
</listitem>
</varlistentry>
<varlistentry><term>FREEBSD-MULTIMEDIA</term>
<varlistentry><term>FREEBSD-NEWBIES</term>
<listitem>
<para><emphasis>Multimedia discussions</emphasis></para>
<para>This is a forum about multimedia applications using
FreeBSD. Discussion center around multimedia applications,
their installation, their development and their support
within FreeBSD This is a technical mailing list for which
strictly technical content is expected.</para>
<para><emphasis>Newbies activities
discussion</emphasis></para>
<para>We cover any of the activities of newbies that are not
already dealt with elsewhere, including: independent learning
and problem solving techniques, finding and using resources
and asking for help elsewhere, how to use mailing lists and
which lists to use, general chat, making mistakes, boasting,
sharing ideas, stories, moral (but not technical) support, and
taking an active part in the FreeBSD community. We take our
problems and support questions to freebsd-questions, and use
freebsd-newbies to meet others who are doing the same things
that we do as newbies.</para>
</listitem>
</varlistentry>
@ -866,7 +934,17 @@ help
FreeBSD-security.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>FREEBSD-SMALL</term>
<listitem>
<para>This list discusses topics related to unsually small and
embedded FreeBSD installations. This is a technical mailing
list for which strictly technical content is expected.</para>
</listitem>
</varlistentry>
<varlistentry><term>FREEBSD-USER-GROUPS</term>
<listitem>
@ -972,36 +1050,6 @@ help
URL="news:comp.unix.misc">comp.unix.misc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.announc">comp.os.386bsd.announc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.app">comp.os.386bsd.app</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.bugs">comp.os.386bsd.bugs</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.development">comp.os.386bsd.development</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.misc">comp.os.386bsd.misc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.questions">comp.os.386bsd.questions</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.bugs.4bsd">comp.bugs.4bsd</ulink></para>

View file

@ -78,24 +78,20 @@
<para>For Pentium Pro (P6) systems, I'm quite fond of the <ulink
URL="http://www.tyan.com/html/products.html">Tyan</ulink>
S1668 dual-processor motherboard. It makes a dandy little
single or dual processor system (which is supported in FreeBSD
3.0) and the price of the Pentium Pro 180/256K chip has fallen
to truly affordable levels. The Pentium Pro remains my favorite
processor solution server systems (Megahertz ratings aren't
everything).</para>
S1668 dual-processor motherboard as well as the Intel PR440FX
motherboard with on-board SCSI WIDE and 100/10MB Intel
Etherexpress NIC. You can build a dandy little single or dual
processor system (which is supported in FreeBSD 3.0) for very
little cost now that the Pentium Pro 180/256K chips have fallen so
greatly in price, but no telling how much longer this will
last.</para>
<para>For the Pentium II, I'm rather partial to the <ulink
URL="http://www.asus.com.tw">ASUS</ulink> <ulink
URL="http://www.asus.com.tw/Products/Motherboard/Pentiumpro/P2l97-s/index.html">P2l97-S</ulink> motherboard with the on-board Adaptec SCSI WIDE controller.</para>
<para>For Pentium machines, the ASUS <ulink
URL="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> motherboard appears to be a good choice for mid-to-high range Pentium server and workstation systems. You might also wish to investigate ASUS's <ulink URL="http://asustek.asus.com.tw/FTP/ASUS/Info/Spec/pvi-486sp3.txt">486SP3G</ulink> offering if it's a 486-class motherboard you're looking for.</para>
<note>
<para>These have become increasingly hard to get as ASUS
apparently no longer manufactures them).</para>
</note>
URL="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> motherboard appears to be a good choice for mid-to-high range Pentium server and workstation systems.</para>
<para>Those wishing to build more fault-tolerant systems should
also be sure to use Parity memory or, for truly 24/7
@ -131,6 +127,13 @@
your scarce PCI bus resources by buying the Adaptec 3940 card,
which puts two SCSI controllers (and internal busses) in a
single slot.</para>
<note>
<para>There are two types of 3940 on the market&mdash;the older
model with AIC 7880 chips on it, and hte newer one with AIC 7895
chips. The newer model requires <ulink
url="http://www.freebsd.org/pub/FreeBSD/development/cam/">CAM</ulink> support which is not yet part of FreeBSD&mdash;you have to add it, or install from one of the CAM binary snapshot release.</para>
</note>
</sect3>
@ -144,11 +147,8 @@
drives from server to desktop as falling drive prices make it
economical to do so. If you have more than one machine to
administer then think of it not simply as storage, think of it
as a food chain!</para>
<para>I do not currently see SCSI WIDE drives as a necessary
expense unless you're putting together an NFS or NEWS server
that will be doing a lot of multiuser disk I/O.</para>
as a food chain! For a serious server configuration, there's not
even any argument&mdash;use SCSI equipment and good cables.</para>
</sect3>
@ -157,12 +157,11 @@
<para>My SCSI preferences extend to SCSI CDROM drives as well, and
while the <ulink URL="http://www.toshiba.com">Toshiba</ulink>
XM-3501B (also released in a caddy-less model called the
XM-5401B) drive has always performed well for me, I'm now a
great fan of the <ulink
URL="http://www.plextor.com">Plextor</ulink> PX-12CS drive.
It's a 12 speed drive with excellent performance and
reliability.</para>
drives have always been favourites of mine (in whatever speed is
hot that week), I'm still fond of my good old <ulink
url="http://www.plextor.com">Plextor</ulink> PX-12CS drive. It's
only a 12 speed, but it's offered excellent performance and
reliability.</para>
<para>Generally speaking, most SCSI CDROM drives I've seen have
been of pretty solid construction and you probably won't go
@ -182,8 +181,8 @@
drives (though I believe they all ultimately come from Phillips
anyway): The Phillips CDD 522 (Acts like a Plasmon), the PLASMON
RF4100 and the HP 6020i. I myself use the HP 6020i for burning
CDROMs (with 2.2-current &mdash; it does not work with 2.1.5 or
earlier releases of the SCSI code) and it works very well. See
CDROMs (in 2.2 and alter releases&mdash;it does not work with
earlier releases of the SCSI code) and it works very well. See
<ulink
URL="file:/usr/share/examples/worm">/usr/share/examples/worm</ulink> on your 2.2 system for example scripts used to created ISO9660 filesystem images (with RockRidge extensions) and burn them onto an HP6020i CDR.</para>
@ -209,12 +208,14 @@
Inc. (formerly X Inside, Inc)</ulink> then I can heartily
recommend the <ulink URL="http://www.matrox.com/">Matrox</ulink>
<ulink
URL="http://www.matrox.com/mgaweb/brochure.htm">Millenium</ulink> card. Note that support for this card is also excellent with the <ulink URL="http://www.xfree86.org/">XFree86</ulink> server, which is now at version 3.3.2.</para>
URL="http://www.matrox.com/mgaweb/brochure.htm">Millenium II</ulink> card. Note that support for this card is also excellent with the <ulink URL="http://www.xfree86.org/">XFree86</ulink> server, which is now at version 3.3.2.</para>
<para>You also certainly can't go wrong with one of <ulink
URL="http://www.nine.com/">Number 9's</ulink> cards &mdash; their S3
Vision 868 and 968 based cards (the 9FX series) also being quite
fast and very well supported by XFree86's S3 server.</para>
fast and very well supported by XFree86's S3 server. You can
also pick up their Revolution 3D cards very cheaply these days,
especially if you require a lot of video memory.</para>
</sect3>
@ -222,27 +223,28 @@
<title>Monitors</title>
<para>I have had very good luck with the <ulink
URL="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII monitors</ulink>, as have I with the Viewsonic offering in the same (Trinitron) tube. For larger than 17", all I can recommend at the time of this writing is to not spend any less than U.S. &#36;2,500 for a 21" monitor or &#36;1,700 for a 20" monitor if that's what you really need. There are good monitors available in the &gt;=20" range and there are also cheap monitors in the &gt;=20" range. Unfortunately, very few are both cheap and good!</para>
URL="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII monitors</ulink>, as have I with the Viewsonic offering in the same (Trinitron) tube. For larger than 17", all I can recommend at the time of this writing is to not spend any less than U.S. &#36;2,000 for a 21" monitor or &#36;1,700 for a 20" monitor if that's what you really need. There are good monitors available in the &gt;=20" range and there are also cheap monitors in the &gt;=20" range. Unfortunately, very few are both cheap and good!</para>
</sect3>
<sect3 id="hw-networking">
<title>Networking</title>
<para>I can recommend the <ulink
<para>I can recommend the Intel EtherExpress Pro/100B card first
ande foremost, followed by the <ulink
URL="http://www.smc.com/">SMC</ulink> Ultra 16 controller for
any ISA application and the SMC EtherPower or Compex ENET32
cards for any serious PCI based networking. Both of the PCI
cards are based around DEC's DC21041 Ethernet controller chip
and other cards using it, such as the Zynx ZX342 or DEC DE435,
will generally work as well. For 100Mbit networking, either the
SMC SMC9332DST 10/100MB or Intel EtherExpress Pro/100B cards
will do a fine job, the Intel EtherExpress generally getting my
vote.</para>
cards for slightly cheaper PCI based networking. In general, any
PCI NIC based around DEC's DC21041 Ethernet controller chip,
such as the Zynx ZX342 or DEC DE435, will generally work quite
well and can frequently be found in 2-port and 4-port version
(useful for firewalls and routers), though the Pro/100MB card has
the edge when it comes to providing the best performance with teh
lower overhead.</para>
<para>If what you're looking for is, on the other hand, the
cheapest possible solution which will still work reasonably
well, then almost any NE2000 clone is a good choice.</para>
<para>If what you're looking for is the
cheapest possible solution then almost any NE2000 clone will do
a fine job for very little cost.</para>
</sect3>
@ -334,7 +336,7 @@
<sect3 id="hw-mb-pci">
<title>PCI</title>
<para><emphasis>Contributed by &a.rgrimes;.<!-- <br> -->25 April
<para><emphasis>Contributed by &a.obrien; from postings by &a.rgrimes;.<!-- <br> -->25 April
1995.</emphasis></para>
<para><emphasis>Continuing updates by &a.jkh;.</emphasis><!-- <br>
@ -4875,7 +4877,7 @@ options "TUNE_1542" #dynamic tune of bus DMA speed</programli
<para>Data transfer rate is 350kB/s using
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Rates of 530kB/s have been
reported when using <link
linkend="hw-storage-amanda">Amanda</link></para>
linkend="backups-programs-amanda">Amanda</link></para>
<para>Production of this drive has been discontinued.</para>
@ -5655,653 +5657,6 @@ scsi -f $2 -s 100 -c "1b 0 0 $cdb3 $cdb4 $cdb5"</programlisting>
<para></para>
</sect2>
<sect2>
<title>* Adding and reconfiguring disks</title>
<para></para>
</sect2>
<sect2 id="hw-storage-tapebackups">
<title>Tapes and backups</title>
<sect3>
<title>* What about backups to floppies?</title>
<para></para>
</sect3>
<sect3>
<title>Tape Media</title>
<sect4 id="hw-storage-tapebackups-4mm">
<title>4mm (DDS: Digital Data Storage)</title>
<para>4mm tapes are replacing QIC as the workstation backup
media of choice. This trend accelerated greatly when Conner
purchased Archive, a leading manufacturer of QIC drives, and
then stopped production of QIC drives. 4mm drives are small
and quiet but do not have the reputation for reliability that
is enjoyed by 8mm drives. The cartridges are less expensive
and smaller (3 x 2 x 0.5 inches, 76 x 51 x 12 mm) than 8mm
cartridges. 4mm, like 8mm, has comparatively short head life
for the same reason, both use helical scan.</para>
<para>Data thruput on these drives starts ~150kB/s, peaking at
~500kB/s. Data capacity starts at 1.3 GB and ends at 2.0 GB.
Hardware compression, available with most of these drives,
approximately doubles the capacity. Multi-drive tape library
units can have 6 drives in a single cabinet with automatic
tape changing. Library capacities reach 240 GB.</para>
<para>4mm drives, like 8mm drives, use helical-scan. All the
benefits and drawbacks of helical-scan apply to both 4mm and
8mm drives.</para>
<para>Tapes should be retired from use after 2,000 passes or 100
full backups.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-8mm">
<title>8mm (Exabyte)</title>
<para>8mm tapes are the most common SCSI tape drives; they are
the best choice of exchanging tapes. Nearly every site has an
exabyte 2 GB 8mm tape drive. 8mm drives are reliable,
convenient and quiet. Cartridges are inexpensive and small
(4.8 x 3.3 x 0.6 inches; 122 x 84 x 15 mm). One downside of
8mm tape is relatively short head and tape life due to the
high rate of relative motion of the tape across the
heads.</para>
<para>Data thruput ranges from ~250kB/s to ~500kB/s. Data sizes
start at 300 MB and go up to 7 GB. Hardware compression,
available with most of these drives, approximately doubles the
capacity. These drives are available as single units or
multi-drive tape libraries with 6 drives and 120 tapes in a
single cabinet. Tapes are changed automatically by the unit.
Library capacities reach 840+ GB.</para>
<para>Data is recorded onto the tape using helical-scan, the
heads are positioned at an angle to the media (approximately 6
degrees). The tape wraps around 270 degrees of the spool that
holds the heads. The spool spins while the tape slides over
the spool. The result is a high density of data and closely
packed tracks that angle across the tape from one edge to the
other.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-qic">
<title>QIC</title>
<para>QIC-150 tapes and drives are, perhaps, the most common
tape drive and media around. QIC tape drives are the least
expensive &ldquo;serious&rdquo; backup drives. The downside is the cost
of media. QIC tapes are expensive compared to 8mm or 4mm
tapes, up to 5 times the price per GB data storage. But, if
your needs can be satisfied with a half-dozen tapes, QIC may
be the correct choice. QIC is the <emphasis>most</emphasis>
common tape drive. Every site has a QIC drive of some density
or another. Therein lies the rub, QIC has a large number of
densities on physically similar (sometimes identical) tapes.
QIC drives are not quiet. These drives audibly seek before
they begin to record data and are clearly audible whenever
reading, writing or seeking. QIC tapes measure (6 x 4 x 0.7
inches; 15.2 x 10.2 x 1.7 mm). <link
linkend="hw-storage-tapebackups-mini">Mini-cartridges</link>,
which also use 1/4" wide tape are
discussed separately. Tape libraries and changers are not
available.</para>
<para>Data thruput ranges from ~150kB/s to ~500kB/s. Data
capacity ranges from 40 MB to 15 GB. Hardware compression is
available on many of the newer QIC drives. QIC drives are
less frequently installed; they are being supplanted by DAT
drives.</para>
<para>Data is recorded onto the tape in tracks. The tracks run
along the long axis of the tape media from one end to the
other. The number of tracks, and therefore the width of a
track, varies with the tape's capacity. Most if not all newer
drives provide backward-compatibility at least for reading
(but often also for writing). QIC has a good reputation
regarding the safety of the data (the mechanics are simpler
and more robust than for helical scan drives).</para>
<para>Tapes should be retired from use after 5,000
backups.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-mini">
<title>* Mini-Cartridge</title>
<para></para>
</sect4>
<sect4 id="hw-storage-tapebackups-dlt">
<title>DLT</title>
<para>DLT has the fastest data transfer rate of all the drive
types listed here. The 1/2" (12.5mm) tape is contained in a
single spool cartridge (4 x 4 x 1 inches; 100 x 100 x 25 mm).
The cartridge has a swinging gate along one entire side of the
cartridge. The drive mechanism opens this gate to extract the
tape leader. The tape leader has an oval hole in it which the
drive uses to &ldquo;hook&rdquo; the tape. The take-up spool is located
inside the tape drive. All the other tape cartridges listed
here (9 track tapes are the only exception) have both the
supply and take-up spools located inside the tape cartridge
itself.</para>
<para>Data thruput is approximately 1.5MB/s, three times the
thruput of 4mm, 8mm, or QIC tape drives. Data capacities
range from 10GB to 20GB for a single drive. Drives are
available in both multi-tape changers and multi-tape,
multi-drive tape libraries containing from 5 to 900 tapes over
1 to 20 drives, providing from 50GB to 9TB of storage.</para>
<para>Data is recorded onto the tape in tracks parallel to the
direction of travel (just like QIC tapes). Two tracks are
written at once. Read/write head lifetimes are relatively
long; once the tape stops moving, there is no relative motion
between the heads and the tape.</para>
</sect4>
</sect3>
<sect3>
<title>Using a new tape for the first time</title>
<para>The first time that you try to read or write a new,
completely blank tape, the operation will fail. The console
messages should be similar to:</para>
<informalexample>
<screen>st0(ncr1:4:0): NOT READY asc:4,1
st0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
</informalexample>
<para>The tape does not contain an Identifier Block (block number
0). All QIC tape drives since the adoption of QIC-525 standard
write an Identifier Block to the tape. There are two solutions:</para>
<para><command>mt fsf 1</command> causes the tape drive
to write an Identifier Block to the tape.</para>
<para>Use the front panel button to eject the tape.</para>
<para>Re-insert the tape and <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> data to
the tape.</para>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> will report <errorname>DUMP: End of tape detected</errorname> and the console
will show: <errorname>HARDWARE FAILURE info:280
asc:80,96</errorname></para>
<para>rewind the tape using: <command>mt
rewind</command></para>
<para>Subsequent tape operations are successful.</para>
</sect3>
<sect3>
<title>Backup Programs</title>
<para>The three major programs are <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>, and
<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
<sect4>
<title>Dump and Restore</title>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry> are the traditional Unix backup
programs. They operate on the drive as a collection of disk
blocks, below the abstractions of files, links and directories
that are created by the filesystems.
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> backs up devices, entire
filesystems, not parts of a filesystem and not directory trees
that span more than one filesystem, using either soft links
<citerefentry><refentrytitle>ln</refentrytitle><manvolnum>1</manvolnum></citerefentry> or mounting one filesystem onto
another. <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> does not write files and
directories to tape, but rather writes the data blocks that
are the building blocks of files and directories.
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> has quirks that remain from its
early days in Version 6 of ATT Unix (circa 1975). The default
parameters are suitable for 9-track tapes (6250 bpi), not the
high-density media available today (up to 62,182 ftpi). These
defaults must be overridden on the command line to utilize the
capacity of current tape drives.</para>
<para><citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>rrestore</refentrytitle><manvolnum>8</manvolnum></citerefentry> backup data across the network
to a tape drive attached to another computer. Both programs
rely upon <citerefentry><refentrytitle>rcmd</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
<citerefentry><refentrytitle>ruserok</refentrytitle><manvolnum>3</manvolnum></citerefentry> to access the remote tape
drive. Therefore, the user performing the backup must have
<filename>rhosts</filename> access to the remote
computer. The arguments to <citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>rrestore</refentrytitle><manvolnum>8</manvolnum></citerefentry> must suitable to use on the
remote computer. e.g. When <command>rdump</command>'ing from a FreeBSD computer to an
Exabyte tape drive connected to a Sun called komodo, use:</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nrst8 /dev/rsd0a 2&gt;&amp;1</userinput></screen>
</informalexample>
<para>Beware:
there are security implications to allowing <filename>rhosts</filename> commands. Evaluate your
situation carefully.</para>
</sect4>
<sect4>
<title>Tar</title>
<para><citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> also dates back to Version 6 of
ATT Unix (circa 1975). <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> operates in
cooperation with the filesystem; <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>
writes files and directories to tape.
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not support the full range of
options that are available from <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
but <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not require the unusual
command pipeline that <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> uses.</para>
<para>Most versions of <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> do not support
backups across the network. The GNU version of
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>, which FreeBSD utilizes, supports
remote devices using the same syntax as <command>rdump</command>. To <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> to
an Exabyte tape drive connected to a Sun called komodo, use:
<command>/usr/bin/tar cf komodo:/dev/nrst8 .
2&gt;&amp;1</command>. For versions without remote device
support, you can use a pipeline and <citerefentry><refentrytitle>rsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>
to send the data to a remote tape drive. (XXX add an example
command)</para>
</sect4>
<sect4>
<title>Cpio</title>
<para><citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> is the original Unix file
interchange tape program for magnetic media.
<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> has options (among many others) to
perform byte-swapping, write a number of different archives
format, and pipe the data to other programs. This last feature
makes <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> and excellent choice for
installation media. <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not know
how to walk the directory tree and a list of files must be
provided thru <acronym>STDIN</acronym>.</para>
<para><citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not support backups across
the network. You can use a pipeline and
<citerefentry><refentrytitle>rsh</refentrytitle><manvolnum>1</manvolnum></citerefentry> to send the data to a remote tape
drive. (XXX add an example command)</para>
</sect4>
<sect4>
<title>Pax</title>
<para><citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> is IEEE/POSIX's answer to
<command>tar</command> and <command>cpio</command>. Over the years the various
versions of <command>tar</command> and <command>cpio</command> have gotten slightly incompatible.
So rather than fight it out to fully standardize them, POSIX
created a new archive utility. <command>pax</command> attempts to read and write many of
the various cpio and tar formats, plus new formats of its own.
Its command set more resembles <command>cpio</command> than <command>tar</command>.</para>
</sect4>
<sect4 id="hw-storage-amanda">
<title><ulink
URL="http://www.freebsd.org/ports/misc.html#amanda-2.2.6.5">Amanda</ulink></title>
<para>Amanda (Advanced Maryland Network Disk Archiver) is a
client/server backup system, rather than a single program. An
Amanda server will backup to a single tape drive any number of
computers that have Amanda clients and network communications
with the Amanda server. A common problem at locations with a
number of large disks is the length of time required to backup
to data directly to tape exceeds the amount of time available
for the task. Amanda solves this problem. Amanda can use a
&ldquo;holding disk&rdquo; to backup several filesystems at the same time.
Amanda creates &ldquo;archive sets&rdquo;: a group of tapes used over a
period of time to create full backups of all the filesystems
listed in Amanda's configuration file. The &ldquo;archive set&rdquo; also
contains nightly incremental (or differential) backups of all
the filesystems. Restoring a damaged filesystem requires the
most recent full backup and the incremental backups.</para>
<para>The configuration file provides fine control backups and
the network traffic that Amanda generates. Amanda will use
any of the above backup programs to write the data to tape.
Amanda is available as either a port or a package, it is not
installed by default.</para>
</sect4>
<sect4>
<title>Do nothing</title>
<para>&ldquo;Do nothing&rdquo; is not a computer program, but it is the most
widely used backup strategy. There are no initial costs.
There is no backup schedule to follow. Just say no. If
something happens to your data, grin and bear it!</para>
<para>If your time and your data is worth little to nothing,
then &ldquo;Do nothing&rdquo; is the most suitable backup program for your
computer. But beware, Unix is a useful tool, you may find
that within six months you have a collection of files that are
valuable to you.</para>
<para>&ldquo;Do nothing&rdquo; is the correct backup method for
<filename>/usr/obj</filename> and other directory trees that
can be exactly recreated by your computer. An example is the
files that comprise these handbook pages-they have been
generated from <acronym>SGML</acronym> input files. Creating
backups of these <acronym>HTML</acronym> files is not
necessary. The <acronym>SGML</acronym> source files are
backed up regularly.</para>
</sect4>
<sect4>
<title>Which Backup Program is Best?</title>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> <emphasis>Period.</emphasis>
Elizabeth D. Zwicky torture tested all the backup programs
discussed here. The clear choice for preserving all your data
and all the peculiarities of Unix filesystems is
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Elizabeth created filesystems
containing a large variety of unusual conditions (and some not
so unusual ones) and tested each program by do a backup and
restore of that filesystems. The peculiarities included:
files with holes, files with holes and a block of nulls, files
with funny characters in their names, unreadable and
unwritable files, devices, files that change size during the
backup, files that are created/deleted during the backup and
more. She presented the results at LISA V in Oct.
1991.</para>
</sect4>
</sect3>
<sect3>
<title>Emergency Restore Procedure</title>
<sect4>
<title>Before the Disaster</title>
<para>There are only four steps that you need to perform in
preparation for any disaster that may occur.</para>
<procedure>
<step>
<para>Print the disklabel from each of your disks
(e.g., <command>disklabel sd0 | lpr</command>), your
filesystem table (<filename>/etc/fstab</filename>) and all
boot messages, two copies of each.</para>
</step>
<step>
<para>Determine the boot and fixit floppies (<filename>boot.flp</filename>
and <filename>fixit.flp</filename>) have all your devices. The easiest way to
check is to reboot your machine with the boot floppy in the
floppy drive and check the boot messages. If all your devices
are listed and functional, skip on to step three.</para>
<para>Otherwise, you have to create two custom bootable floppies
which has a kernel that can mount your all of your disks and
access your tape drive. These floppies must contain:
<citerefentry><refentrytitle>fdisk</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>disklabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>newfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>, and
whichever backup program you use. These programs must be
statically linked. If you use <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>, the
floppy must contain <citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
</step>
<step>
<para>Create backup tapes regularly. Any changes that you
make after your last backup may be irretrievably lost.
Write-protect the backup tapes.</para>
</step>
<step>
<para>Test the floppies (either <filename>boot.flp</filename> and <filename>fixit.flp</filename>
or the two custom bootable floppies you made in step two.)
and backup tapes. Make notes of the procedure. Store these
notes with the bootable floppy, the printouts and the backup
tapes. You will be so distraught when restoring that the
notes may prevent you from destroying your backup tapes (How?
In place of <command>tar xvf /dev/rst0</command>, you might
accidently type <command> tar cvf /dev/rst0</command> and
over-write your backup tape).</para>
<para>For an added measure of security, make bootable floppies
and two backup tapes each time. Store one of each at a remote
location. A remote location is NOT the basement of the same
office building. A number of firms in the World Trade Center
learned this lesson the hard way. A remote location should be
physically separated from your computers and disk drives by a
significant distance.</para>
<para>An example script for creating a bootable floppy:</para>
<programlisting>
#!/bin/sh
#
# create a restore floppy
#
# format the floppy
#
PATH=/bin:/sbin:/usr/sbin:/usr/bin
fdformat -q fd0
if [ $? -ne 0 ]
then
echo "Bad floppy, please use a new one"
exit 1
fi
# place boot blocks on the floppy
#
disklabel -w -B -b /usr/mdec/fdboot -s /usr/mdec/bootfd /dev/rfd0c fd1440
#
# newfs the one and only partition
#
newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/rfd0
#
# mount the new floppy
#
mount /dev/fd0a /mnt
#
# create required directories
#
mkdir /mnt/dev
mkdir /mnt/bin
mkdir /mnt/sbin
mkdir /mnt/etc
mkdir /mnt/root
mkdir /mnt/mnt # for the root partition
mkdir /mnt/tmp
mkdir /mnt/var
#
# populate the directories
#
if [ ! -x /sys/compile/MINI/kernel ]
then
cat &lt;&lt; EOM
The MINI kernel does not exist, please create one.
Here is an example config file:
#
# MINI -- A kernel to get FreeBSD on onto a disk.
#
machine "i386"
cpu "I486_CPU"
ident MINI
maxusers 5
options INET # needed for _tcp _icmpstat _ipstat
# _udpstat _tcpstat _udb
options FFS #Berkeley Fast File System
options FAT_CURSOR #block cursor in syscons or pccons
options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device
options NCONS=2 #1 virtual consoles
options USERCONFIG #Allow user configuration with -c XXX
config kernel root on sd0 swap on sd0 and sd1 dumps on sd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller ncr0
controller scbus0
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
device sd0
device sd1
device sd2
device st0
pseudo-device loop # required by INET
pseudo-device gzip # Exec gzipped a.out's
EOM
exit 1
fi
cp -f /sys/compile/MINI/kernel /mnt
gzip -c -best /sbin/init &gt; /mnt/sbin/init
gzip -c -best /sbin/fsck &gt; /mnt/sbin/fsck
gzip -c -best /sbin/mount &gt; /mnt/sbin/mount
gzip -c -best /sbin/halt &gt; /mnt/sbin/halt
gzip -c -best /sbin/restore &gt; /mnt/sbin/restore
gzip -c -best /bin/sh &gt; /mnt/bin/sh
gzip -c -best /bin/sync &gt; /mnt/bin/sync
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV sd0
./MAKEDEV sd1
./MAKEDEV sd2
./MAKEDEV st0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat &gt; /mnt/etc/fstab &lt;&lt;EOM
/dev/fd0a / ufs rw 1 1
EOM
#
# create minimum passwd file
#
cat &gt; /mnt/etc/passwd &lt;&lt;EOM
root:*:0:0:Charlie &amp;:/root:/bin/sh
EOM
cat &gt; /mnt/etc/master.passwd &lt;&lt;EOM
root::0:0::0:0:Charlie &amp;:/root:/bin/sh
EOM
chmod 600 /mnt/etc/master.passwd
chmod 644 /mnt/etc/passwd
/usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd
#
# umount the floppy and inform the user
#
/sbin/umount /mnt</programlisting>
</step>
</procedure>
</sect4>
<sect4>
<title>After the Disaster</title>
<para>The key question is: did your hardware survive? You have
been doing regular backups so there is no need to worry about
the software.</para>
<para>If the hardware has been damaged. First, replace those
parts that have been damaged.</para>
<para>If your hardware is okay, check your floppies. If you are
using a custom boot floppy, boot single-user (type <option>-s</option> at the
<prompt>boot:</prompt> prompt). Skip the following paragraph.</para>
<para>If you are using the boot.flp and fixit.flp floppies, keep
reading. Insert the boot.flp floppy in the first floppy drive
and boot the computer. The original install menu will be
displayed on the screen. Select the "Fixit--Repair mode with
CDROM or floppy." option. Insert the <filename>fixit.flp</filename> when prompted.
<command>restore</command> and the other programs
that you need are located in
<filename>/mnt2/stand</filename>.</para>
<para>Recover each filesystem separately.</para>
<para>Try to <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> (e.g. <command>mount /dev/sd0a /mnt</command>) the root partition of your first disk. If
the disklabel was damaged, use <citerefentry><refentrytitle>disklabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>
to re-partition and label the disk to match the label that
your printed and saved. Use <citerefentry><refentrytitle>newfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> to
re-create the filesystems. Re-mount the root partition of the
floppy read-write (<command>mount -u -o rw /mnt</command>).
Use your backup program and backup tapes to recover the data
for this filesystem (e.g. <command>restore vrf
/dev/st0</command>). Unmount the filesystem (e.g.
<filename>umount /mnt</filename>) Repeat for each filesystem
that was damaged.</para>
<para>Once your system is running, backup your data onto new
tapes. Whatever caused the crash or data loss may strike
again. An another hour spent now, may save you from further
distress later.</para>
</sect4>
<sect4>
<title>* I did not prepare for the Disaster, What Now?</title>
<para></para>
</sect4>
</sect3>
</sect2>
</sect1>
<sect1 id="hw-other">

View file

@ -15,10 +15,13 @@
between FreeBSD and your hardware which may, in turn, dictate which
installation options are even possible. It can also provide early
clues to any compatibility problems which could prevent FreeBSD
running on your system at all. If you plan on installing via
anonymous FTP then this installation disk is all you need to download
(the installation will handle any further required downloading
itself).</para>
running on your system at all.</para>
<para>If you plan on installing via
anonymous FTP then this installation floppy is all you need to
download and create&mdash;the installation program itself will handle
any further required downloading directly (using an ethernet connection,
a modem and ppp dialip #, etc).</para>
<para>For more information on obtaining the latest FreeBSD
distributions, please see <link linkend="mirrors">Obtaining
@ -180,6 +183,11 @@ Boot:
cause a later probe for another device that is present to fail. In
that case, the probes for the conflicting driver(s) should be
disabled.</para>
<warning>
<para>Do not disable any device you will need during installation, such
as your screen (<devicename>sc0</devicename>).</para>
</warning>
<para>In the configuration mode, you can:</para>

View file

@ -102,7 +102,7 @@
</listitem>
<listitem>
<para>A full compliment of <emphasis>C</emphasis>,
<para>A full complement of <emphasis>C</emphasis>,
<emphasis>C++</emphasis> and <emphasis>Fortran</emphasis> development tools. Many
additional languages for advanced research and development are
also available in the ports and packages collection.</para>
@ -245,7 +245,7 @@
<listitem>
<para><emphasis>Software Development:</emphasis> The
basic FreeBSD system comes with a full compliment of
basic FreeBSD system comes with a full complement of
development tools including the renowned GNU C/C++ compiler
and debugger.</para>
</listitem>
@ -348,8 +348,9 @@
(&ldquo;-current&rdquo;) in November 1996 as the RELENG_2_2 branch, and the
first full release (2.2.1) was released in April, 1997. Further
releases along the 2.2 branch were done in the Summer and Fall of
'97, the latest being 2.2.6 which appeared in late March of '98.
The first official 3.0 release will appear later in 1998.</para>
'97, the latest being 2.2.7 which appeared in late July of '98.
The first official 3.0 release will appear in October, 1998 and the
last release on the 2.2 branch, 2.2.8, will appear in November.</para>
<para>Long term development projects for everything from SMP to DEC
ALPHA support will continue to take place in the 3.0-current branch
@ -539,7 +540,7 @@
<para>In addition to the base distributions, FreeBSD offers a new
ported software collection with hundreds of commonly sought-after
programs. At the end of March 1998 there were more than 1300 ports!
programs. At the end of August 1998 there were more than 1700 ports!
The list of ports ranges from http (WWW) servers, to games,
languages, editors and almost everything in between. The entire
ports collection requires approximately 26MB of storage, all ports

View file

@ -1118,16 +1118,7 @@
<listitem>
<para>AT&amp;T StarLAN 10 and EN100; 3Com 3C507;
unknown NI5210</para>
</listitem>
</varlistentry>
<varlistentry><term><literal>device ix0 at isa? port 0x300 net
irq 10 iomem 0xd0000 iosiz 32768 vector
ixintr</literal></term>
<listitem>
<para>Intel EtherExpress 16</para>
unknown NI5210; Intel EtherExpress 16</para>
</listitem>
</varlistentry>

View file

@ -13,7 +13,13 @@
is too small to hold the dump, you can configure your kernel to use
an alternate dump device (in the <literal>config
kernel</literal> line), or you can specify an alternate using the
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. Dumps to non-swap devices, tapes for example,
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. The best way to use <citerefentry>
<refentrytitle>dumpon</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> is to set the <literal>dumpdev</literal> variable in
<filename>/etc/rc.conf</filename>. Typically you want to specify one of
the swap devices specified in <filename>/etc/fstab</filename>.
Dumps to non-swap devices, tapes for example,
are currently not supported. Config your kernel using
<command>config -g</command>. See <link linkend="kernelconfig">Kernel
Configuration</link> for
@ -232,7 +238,23 @@
</sect1>
<sect1>
<title>Debugging a crash dump with DDD</title>
<para>Examining a kernel crash dump with a graphical debugger like
<command>ddd</command> is also possible. Add the <option>-k</option>
option to the <command>ddd</command> command line you would use
normally. For example;</para>
<informalexample>
<screen>&prompt.root; <userinput>ddd -k /var/crash/kernel.0 /var/crash/vmcore.0</userinput></screen>
</informalexample>
<para>You should then be able to go about looking at the crash dump using
<command>ddd</command>'d graphical interface.</para>
</sect1>
<sect1>
<title>Post-mortem Analysis of a Dump</title>

View file

@ -11,7 +11,7 @@
possible to run a large fraction of Linux binaries in both a.out and
ELF format. The linux emulation in the 2.1-STABLE branch is capable
of running Linux DOOM and Mathematica; the version present in
FreeBSD-2.2-RELEASE is vastly more capable and runs all these as
&rel.current;-RELEASE is vastly more capable and runs all these as
well as Quake, Abuse, IDL, netrek for Linux and a whole host of
other programs.</para>
@ -22,11 +22,6 @@
filesystem) or i386-specific calls, such as enabling virtual 8086
mode.</para>
<para>To tell whether your kernel is configured for Linux
compatibility simply run any Linux binary. If it prints the error
message <errorname>linux-executable: Exec format error. Wrong Architecture.</errorname> then you do not have linux compatibility support
and you need to configure and install a new kernel.</para>
<para>Depending on which version of FreeBSD you are running, how you
get Linux-emulation up will vary slightly:</para>
@ -180,7 +175,7 @@ options LINUX</programlisting>
just grab the linux_lib port:</para>
<informalexample>
<screen>&prompt.root; <userinput>cd /usr/ports-current/emulators/linux_lib</userinput>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_lib</userinput>
&prompt.root; <userinput>make all install</userinput></screen>
</informalexample>
@ -188,10 +183,9 @@ options LINUX</programlisting>
the mail archives <!-- smiley -->:-) seems to hold that Linux emulation works
best with linux binaries linked against the ZMAGIC libraries;
QMAGIC libraries (such as those used in Slackware V2.0) may tend
to give the Linuxulator heartburn. As of this writing (March
1996) ELF emulation is still in the formulative stages but seems
to work pretty well. Also, expect some programs to complain
about incorrect minor versions. In general this does not seem
to give the Linuxulator heartburn. Also, expect some programs to complain
about incorrect minor versions of the system libraries. In
general, however, this does not seem
to be a problem.</para>
</sect3>
@ -216,7 +210,7 @@ options LINUX</programlisting>
that the Linux <command>ld.so</command> reports.</para>
<para>FreeBSD-2.2-RELEASE and later works slightly differently
with respect to <command>/compat/linux</command>. On -CURRENT, all files, not just
with respect to <filename>/compat/linux</filename>: all files, not just
libraries, are searched for from the &ldquo;shadow root&rdquo;
<filename>/compat/linux</filename>.</para>
@ -240,7 +234,7 @@ options LINUX</programlisting>
do the necessary installation steps).</para>
<para>If you have access to a Linux system, see what shared
libraries it needs, and copy them to your FreeBSD system.
libraries the application needs, and copy them to your FreeBSD system.
Example: you have just ftp'ed the Linux binary of Doom. Put it
on the Linux system you have access to, and check which shared
libraries it needs by running <command>ldd linuxxdoom</command>:</para>
@ -313,7 +307,7 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
<sect3>
<title>Configuring the <filename>ld.so</filename> &mdash; for FreeBSD
2.2-RELEASE only</title>
2.2-RELEASE and later</title>
<para>This section applies only to FreeBSD 2.2-RELEASE and later.
Those running 2.1-STABLE should skip this section.</para>
@ -424,7 +418,35 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
</sect3>
</sect2>
<sect2>
<title>Installing Linux ELF binaries</title>
<para>ELF binaries sometimes require an extra step of
&ldquo;branding&rdquo;. If you attempt to run an unbranded ELF binary,
you will get an error message like the following;</para>
<informalexample>
<screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput>
ELF binary type not known
Abort</screen>
</informalexample>
<para>To help the FreeBSD kernel distinguish between a FreeBSD ELF
binary from a Linux one, use the <citerefentry>
<refentrytitle>brandelf</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> utility.</para>
<informalexample>
<screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen>
</informalexample>
<para>The GNU toolchain now places the appropriate branding information
into ELF binaries automatically, so you should be needing to do this
step increasingly rarely in future.</para>
</sect2>
<sect2>
<title>Configuring the host name resolver</title>
@ -455,7 +477,7 @@ multi on</programlisting>
<para>Lastly, those who run 2.1-STABLE need to set an the
<envar>RESOLV_HOST_CONF</envar> environment variable so that applications will
know how to search the host tables. If you run FreeBSD
2.2-RELEASE, you can skip this. For the
2.2-RELEASE or later, you can skip this. For the
<filename>/bin/csh</filename> shell use:</para>
<informalexample>
@ -507,7 +529,7 @@ multi on</programlisting>
</listitem>
<listitem>
<para>ftp.demon.co.uk:/pub/linux/distributions</para>
<para>ftp.demon.co.uk:/pub/unix/linux</para>
</listitem>
<listitem>

View file

@ -41,6 +41,7 @@
<link linkend="mirrors-cz">Czech Republic</link>,
<link linkend="mirrors-dk">Denmark</link>,
<link linkend="mirrors-ee">Estonia</link>,
<link linkend="mirrors-es">Spain</link>,
<link linkend="mirrors-fi">Finland</link>,
<link linkend="mirrors-fr">France</link>,
<link linkend="mirrors-de">Germany</link>,
@ -54,6 +55,7 @@
<link linkend="mirrors-pt">Portugal</link>,
<link linkend="mirrors-ru">Russia</link>,
<link linkend="mirrors-za">South Africa</link>,
<link linkend="mirrors-sk">Slovak Republic</link>,
<link linkend="mirrors-si">Slovenia</link>,
<link linkend="mirrors-se">Sweden</link>,
<link linkend="mirrors-tw">Taiwan</link>,
@ -534,7 +536,10 @@
<para><ulink
URL="ftp://ftp3.ru.freebsd.org/pub/FreeBSD">ftp://ftp3.ru.freebsd.org/pub/FreeBSD</ulink><!-- <br> --></para>
</listitem>
<listitem>
<para><ulink url="ftp://ftp4.ru.freebsd.org/pub/FreeBSD">ftp://ftp4.ru.freebsd.org/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
@ -568,7 +573,22 @@
</listitem>
</varlistentry>
<varlistentry>
<term><anchor id="mirrors-sk">Slovak Republic</term>
<listitem>
<para>In case of problems, please contact the hostmaster
<email>hostmaster@sk.FreeBSD.ORG</email> for this domain.</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://ftp.sk.freebsd.ORG/pub/FreeBSD">ftp://ftp.sk.freebsd.ORG/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term><anchor id="mirrors-si">Slovenia</term>
<listitem>
@ -587,7 +607,22 @@
</listitem>
</varlistentry>
<varlistentry>
<term><anchor id="mirrors-es">Spain</term>
<listitem>
<para>In case of problems, please contact the hostmaster
<email>hostmaster@es.FreeBSD.ORG</email> for this domain.</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://ftp.es.freebsd.ORG/pub/FreeBSD">ftp://ftp.es.freebsd.ORG/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term><anchor id="mirrors-se">Sweden</term>
<listitem>
@ -978,7 +1013,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Denmark</term>
<listitem>
<para>cvsup.dk.FreeBSD.ORG (maintainer
<email>jesper@skriver.dk</email>)</para>
</listitem>
</varlistentry>
<varlistentry><term>Estonia</term>
<listitem>
@ -1031,7 +1075,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Iceland</term>
<listitem>
<para>cvsup.is.FreeBSD.ORG (maintainer
<email>adam@veda.is</email>)</para>
</listitem>
</varlistentry>
<varlistentry><term>Japan</term>
<listitem>
@ -1045,7 +1098,21 @@
<listitem>
<para>cvsup2.jp.FreeBSD.ORG (maintainer <email>max@FreeBSD.ORG</email>)</para>
</listitem>
<listitem>
<para>cvsup3.jp.FreeBSD.ORG (maintainer
<email>shige@cin.nihon-u.ac.jp</email>)</para>
</listitem>
<listitem>
<para>cvsup4.jp.FreeBSD.ORG (maintainer
<email>cvsup-admin@ftp.media.kyoto-u.ac.jp</email>)</para>
</listitem>
<listitem>
<para>cvsup5.jp.FreeBSD.ORG (maintainer
<email>cvsup@imasy.or.jp</email>)</para>
</listitem>
</itemizedlist>
</listitem>
@ -1058,7 +1125,7 @@
<itemizedlist>
<listitem>
<para>cvsup.nl.FreeBSD.ORG (maintainer <email>xaa@stack.nl</email>)</para>
<para>cvsup.nl.FreeBSD.ORG (maintainer <email>xaa@xaa.iae.nl</email>)</para>
</listitem>
</itemizedlist>
@ -1095,7 +1162,25 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Slovak Republic</term>
<listitem>
<itemizedlist>
<listitem>
<para>cvsup.sk.FreeBSD.ORG (maintainer
<email>tps@tps.sk</email>)</para>
</listitem>
<listitem>
<para>cvsup2.sk.FreeBSD.ORG (maintainer
<email>tps@tps.sk</email>)</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term>South Africa</term>
<listitem>

View file

@ -121,29 +121,38 @@ IVNhdG9zaGkgQXNhbWkgPGFzYW1pQEZyZWVCU0QuT1JHPg==
<programlisting>
Jonathan M. Bresler &lt;jmb@FreeBSD.org&gt;
Key fingerprint = 31 57 41 56 06 C1 40 13 C5 1C E3 E5 DC 62 0E FB
f16 Fingerprint16 = 31 57 41 56 06 C1 40 13 C5 1C E3 E5 DC 62 0E FB
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2
Version: PGPfreeware 5.0i for non-commercial use
mQCNAzG2GToAAAEEANI6+4SJAAgBpl53XcfEr1M9wZyBqC0tzpie7Zm4vhv3hO8s
o5BizSbcJheQimQiZAY4OnlrCpPxijMFSaihshs/VMAz1qbisUYAMqwGEO/T4QIB
nWNo0Q/qOniLMxUrxS1RpeW5vbghErHBKUX9GVhxbiVfbwc4wAHbXdKX5jjdAAUR
tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNA3x
ffUVW/uOVC1dAQHGdAQAgsnYklBtVUdGuQwXB3bYp9omTD7CVD0aibVrz+lXiPDh
aTVkOC1uhEwL59+R8VdpAnEDMobdZDA/ihCc+6/FW/eE0uyrWZzb5Ng9V1MfC6HI
+sXpeXPy585Z56ewadV2yY9rvzcwmmUNHmAXT/5O0S2AWB0EJZ+cewTrokSTVVOJ
AJUDBRA0C3EoVS4eLnPSiKUBASb+A/95g6w9DDPRGDlbsl4pN1BlSPKrmDQPRK1X
C3bddDY2HNelSNhzp2FYD0WoN1re1vMJV0oaaJHwv7wjbe3+SYEX/IdmtfzI0MbZ
Q/uPybPJOxi2ud6C6J+mEGJN9iBCnsaCz8CETuC9gR1mtxsxySUj9mk0fxKfdP6S
3QDrv6CQ1IkAlQMFEDKsi9CzWmLrWZ8yPQEBduUD/RhV4Qa89rYls9vtIFm6XBjZ
8mW37FYxeqIxg3ZrIyTMlghsOPV0f7zymCCWPRGKOLePRiGo0ZCEkDTYiM9tnwQI
09rmPWJb50yfTSZXjHx6+Hcm6O6BCmDFloo0Mxo6n9pvMH/TmmqHxCsAV+p8XEWy
rMZvwVSynMxmJd17Y5HLtBNKb25hdGhhbiBNLiBCcmVzbGVyiQCVAwUQMbYtYQHb
XdKX5jjdAQHEHwP/fEaQoTi7zKD1U/5kW2YPIBUyMTpLiO9QOr4stYjJvhHh4Ejw
fGvMIhbFrPKtxSNH1s3m4jAXKXiQBDCz17IIzL4n8dlunxNGE5MHcsmpWzggyIg4
zbPqPOcg4gLFEWsEkr2o0akwzIGa3tbCvC+ITaX/rdlWV1jaQjTqSNyPZBM=
=RV56
tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNbtI
gAHbXdKX5jjdAQHamQP+OQr10QRknamIPmuHmFYJZ0jU9XPIvTTMuOiUYLcXlTdn
GyTUuzhbEywgtOldW2V5iA8platXThtqC68NsnN/xQfHA5xmFXVbayNKn8H5stDY
2s/4+CZ06mmJfqYmONF1RCbUk/M84rVT3Gn2tydsxFh4Pm32lf4WREZWRiLqmw+J
AJUDBRA0DfF99RVb+45ULV0BAcZ0BACCydiSUG1VR0a5DBcHdtin2iZMPsJUPRqJ
tWvP6VeI8OFpNWQ4LW6ETAvn35HxV2kCcQMyht1kMD+KEJz7r8Vb94TS7KtZnNvk
2D1XUx8Locj6xel5c/Lnzlnnp7Bp1XbJj2u/NzCaZQ0eYBdP/k7RLYBYHQQln5x7
BOuiRJNVU4kAlQMFEDQLcShVLh4uc9KIpQEBJv4D/3mDrD0MM9EYOVuyXik3UGVI
8quYNA9ErVcLdt10NjYc16VI2HOnYVgPRag3Wt7W8wlXShpokfC/vCNt7f5JgRf8
h2a1/MjQxtlD+4/Js8k7GLa53oLon6YQYk32IEKexoLPwIRO4L2BHWa3GzHJJSP2
aTR/Ep90/pLdAOu/oJDUiQCVAwUQMqyL0LNaYutZnzI9AQF25QP9GFXhBrz2tiWz
2+0gWbpcGNnyZbfsVjF6ojGDdmsjJMyWCGw49XR/vPKYIJY9EYo4t49GIajRkISQ
NNiIz22fBAjT2uY9YlvnTJ9NJleMfHr4dybo7oEKYMWWijQzGjqf2m8wf9OaaofE
KwBX6nxcRbKsxm/BVLKczGYl3XtjkcuJAJUDBRA1ol5TZWCprDT5+dUBATzXA/9h
/ZUuhoRKTWViaistGJfWi26FB/Km5nDQBr/Erw3XksQCMwTLyEugg6dahQ1u9Y5E
5tKPxbB69eF+7JXVHE/z3zizR6VL3sdRx74TPacPsdhZRjChEQc0htLLYAPkJrFP
VAzAlSlm7qd+MXf8fJovQs6xPtZJXukQukPNlhqZ94kAPwMFEDSH/kF4tXKgazlt
bxECfk4AoO+VaFVfguUkWX10pPSSfvPyPKqiAJ4xn8RSIe1ttmnqkkDMhLh00mKj
lLQuSm9uYXRoYW4gTS4gQnJlc2xlciA8Sm9uYXRoYW4uQnJlc2xlckBVU2kubmV0
PokAlQMFEDXbdSkB213Sl+Y43QEBV/4D/RLJNTrtAqJ1ATxXWv9g8Cr3/YF0GTmx
5dIrJOpBup7eSSmiM/BL9Is4YMsoVbXCI/8TqA67TMICvq35PZU4wboQB8DqBAr+
gQ8578M7Ekw1OAF6JXY6AF2P8k7hMcVBcVOACELPT/NyPNByG5QRDoNmlsokJaWU
/2ls4QSBZZlb
=zbCw
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>
@ -219,23 +228,29 @@ Jordan K. Hubbard &lt;jkh@FreeBSD.org&gt;
Fingerprint = 3C F2 27 7E 4A 6C 09 0A 4B C9 47 CD 4F 4D 0B 20
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2i
Version: 2.6.3ia
mQCNAzFjX0IAAAEEAML+nm9/kDNPp43ZUZGjYkm2QLtoC1Wxr8JulZXqk7qmhYcQ
jvX+fyoriJ6/7ZlnLe2oG5j9tZOnRLPvMaz0g9CpW6Dz3nkXrNPkmOFV9B8D94Mk
tyFeRJFqnkCuqBj6D+H8FtBwEeeTecSh2tJ0bZZTXnAMhxeOdvUVW/uOVC1dAAUR
tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPokAlQMFEDF75D1r
WmeNgbKneQEBXtcD+gJIv8JzZRKlDZyTCQanK8iRgE+zMhxptI0kDObaGxT1BrpY
4/EPyiUN10G4k2Jb+DOc8Lg2xDQ3xmvgipFf9NMNV/ThaEuZ3wA31I6tW/arQEqB
Tp8u6T3v20m62t7Afo9HaoE6MBpHQUk2TilxgAd5P57sporL3pgW9YojIO9ziQCV
AwUQMXyV2h9/qQgDWPy9AQEMfgP/RmbSg2WlesATUQ4WuanjcdREduKPyfQatrXD
2xt+jg9X78dTyiNN1YvLqvT6msfs04MKSC0hA2mou6ozw8Xak+1QmP0fBOZKp9pP
8szO188Do9ByzJPvHF1eXT7jFMOXVq8ZIl9iwjxcIDLzlxOz49DC7LO6AT+LKQk7
UGeP+lqJAJUDBRAxe+UG9RVb+45ULV0BAXZ9A/9F9gLpGukVNkeOjaqxQdJGTS+a
xh/Abk0c/nKhAEyxpAl5JyQ3ifYk6BHhPvlTi9LrZoXGA8sk/eU4eRTZVzvGEC4G
+xsavlE/xzku8855QTLPpkCunUpQeu1wzaIrUUE6Zjh05imFbJYyQOBgTFpuqWsC
rsUpl+2mr8IGIxG5rA==
=LW9i
tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPokBFQMFEDXCTXQM
j46yp4IfPQEBwO8IAIN0J09AXBf86dFUTFGcAMrEQqOF5IL+KGorAjzuYxERhKfD
ZV7jA+sCQqxkWfcVcE20kVyVYqzZIkio9a5zXP6TwA247JkPt54S1PmMDYHNlRIY
laXlNoji+4q3HP2DfHqXRT2859rYpm/fG/v6pWkos5voPKcZ2OFEp9W+Ap88oqw+
5rx4VetZNJq1Epmis4INj6XqNqj85+MOOIYE+f445ohDM6B/Mxazd6cHFGGIR+az
VjZ6lCDMLjzhB5+FqfrDLYuMjqkMTR5z9DL+psUvPlCkYbQ11NEWtEmiIWjUcNJN
GCxGzv5bXk0XPu3ADwbPkFE2usW1cSM7AQFiwuyJAJUDBRAxe+Q9a1pnjYGyp3kB
AV7XA/oCSL/Cc2USpQ2ckwkGpyvIkYBPszIcabSNJAzm2hsU9Qa6WOPxD8olDddB
uJNiW/gznPC4NsQ0N8Zr4IqRX/TTDVf04WhLmd8AN9SOrVv2q0BKgU6fLuk979tJ
utrewH6PR2qBOjAaR0FJNk4pcYAHeT+e7KaKy96YFvWKIyDvc4kAlQMFEDF8ldof
f6kIA1j8vQEBDH4D/0Zm0oNlpXrAE1EOFrmp43HURHbij8n0Gra1w9sbfo4PV+/H
U8ojTdWLy6r0+prH7NODCkgtIQNpqLuqM8PF2pPtUJj9HwTmSqfaT/LMztfPA6PQ
csyT7xxdXl0+4xTDl1avGSJfYsI8XCAy85cTs+PQwuyzugE/iykJO1Bnj/paiQCV
AwUQMXvlBvUVW/uOVC1dAQF2fQP/RfYC6RrpFTZHjo2qsUHSRk0vmsYfwG5NHP5y
oQBMsaQJeSckN4n2JOgR4T75U4vS62aFxgPLJP3lOHkU2Vc7xhAuBvsbGr5RP8c5
LvPOeUEyz6ZArp1KUHrtcM2iK1FBOmY4dOYphWyWMkDgYExabqlrAq7FKZftpq/C
BiMRuaw=
=C/Jw
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>
@ -252,27 +267,30 @@ Version: 2.6.3ia
mQCNAzAdpMIAAAEEALHDgrFUwhZtb7PbXg3upELoDVEUPFRwnmpJH1rRqyROUGcI
ooVe7u+FQlIs5OsXK8ECs/5Wpe2UrZSzHvjwBYOND5H42YtI5UULZLRCo5bFfTVA
K9Rpo5icfTsYihrzU2nmnycwFMk+jYXyT/ZDYWDP/BM9iLjj0x9/qQgDWPy9AAUR
tCNQb3VsLUhlbm5pbmcgS2FtcCA8cGhrQEZyZWVCU0Qub3JnPokAlQMFEDMGK9qz
WmLrWZ8yPQEB4iED/18bQVhV2gUYFSxIUTaUtO2HVPi7GRpSzmXoTfS+FJyRR0ED
zTqTHstoBe2PeWgTsOf9cUub5UKcJkRQp7VrJv4Kncyuq7pX69a+QMveCzuUwAur
nDbt/emOL6NU8g9Uk50QuOuipb5rULQLRRoF5TkViy/VES83ERXdYQ9Ml3fWiQCV
AwUQMX6NfWtaZ42Bsqd5AQEKsgP+L+uLz95dRdEmnZ+omrO+tYZM/0jHU7i8yC5q
H0gguKOCljI4liR7NkqKONUJWYtfsTB81d9iSosBZRrTx6i/hB8l8kOB975n/f9S
hftFwmjLYCNMFlDM4j0kySvMV20UZjAyv9BeE51VWlIZ5n/oeSuzul3Znow02tF/
zVnInJiJAJUDBRAxfJXn9RVb+45ULV0BAXJ8A/9K6NT6VLZZC5q3g7bBk5DWuzBS
3oK2Ebww6xzsD2R9edltoz1J3GPngK0CWpHh4kw5iTaRWoC2YJYRNG6icnGvlMAl
1/urqQHJVhxATINm8oljDKsj1RBJ6VKBzNbCJIHTVpX0AJoqUQX2Idi8goFr0fAm
7cD2CBb1JhoAdzEfO4kAlQMFEDFLHlwff6kIA1j8vQEBj5MD/1hA8hJdhpL7mvQj
rTAIn6Ldr08Lr1lqTaKSBMdCL3suGlW0Sw/dIBgicPDhgxLahT3DVfGiIst32FSl
xmWY7wine80X4TZkJ9Hiw3Mpqtjl92j6zHNq0ZZE+CceNubpEdYLDqokAIMPdWlo
WPHZcPxCs5PKI5udseFYF2gQAjI2iQCVAwUQMTlDoO9huekR1Y7VAQGy+AP/Rzp+
UGtJavbSiPx5EnXOXxkA/+ulXQgQG9vdkWwewkvxDNOzHW3KkUWCGtPtIMENznbF
j3QlYB+USIaf1ogvlD5EdXGPDfTINpE8CX2WXzajfgYFpYETDzduwjoWDZfEN9zZ
fQqQS62VgAReOIz3k9BL708z/+WUO0++RLGCmImJAJUDBRAw5q8kAPLZCeu7G0EB
AT3bBACwo+r9TgbiSyyU5cZpq5KgGT1c7eUHXjtxKmtrXD1nFNJ6j7x2DM2XGe6B
YOfDWbFq4UkEAyAeXviuuUP4enQu1v2g7JGXeuI8bRM519pLdPzDq/DnbA4rNStn
/SkH7awMfNSplcFuE6rc5ezVkw17eOHzDrYmwsFavL9gxZEycg==
=Q45T
tCNQb3VsLUhlbm5pbmcgS2FtcCA8cGhrQEZyZWVCU0Qub3JnPokAlQMFEDQQ0aZ1
u244dqP3sQEBu4ID/jXFFeJgs2MdTDNOZM/FbfDhI4qxAbYUsqS3+Ra16yd8Wd/A
jV+IHJE2NomFWl8UrUjCGinXiwzPgK1OfFJrS9Og1wQLvAl0X84BA8MTP9BQr4w7
6I/RbksgUSrVCIO8MJwlydjSPocWGBeXlVjbZxXzyuJk7H+TG+zuI5BuBcNIiQCV
AwUQMwYr2rNaYutZnzI9AQHiIQP/XxtBWFXaBRgVLEhRNpS07YdU+LsZGlLOZehN
9L4UnJFHQQPNOpMey2gF7Y95aBOw5/1xS5vlQpwmRFCntWsm/gqdzK6rulfr1r5A
y94LO5TAC6ucNu396Y4vo1TyD1STnRC466KlvmtQtAtFGgXlORWLL9URLzcRFd1h
D0yXd9aJAJUDBRAxfo19a1pnjYGyp3kBAQqyA/4v64vP3l1F0Sadn6ias761hkz/
SMdTuLzILmofSCC4o4KWMjiWJHs2Soo41QlZi1+xMHzV32JKiwFlGtPHqL+EHyXy
Q4H3vmf9/1KF+0XCaMtgI0wWUMziPSTJK8xXbRRmMDK/0F4TnVVaUhnmf+h5K7O6
XdmejDTa0X/NWcicmIkAlQMFEDF8lef1FVv7jlQtXQEBcnwD/0ro1PpUtlkLmreD
tsGTkNa7MFLegrYRvDDrHOwPZH152W2jPUncY+eArQJakeHiTDmJNpFagLZglhE0
bqJyca+UwCXX+6upAclWHEBMg2byiWMMqyPVEEnpUoHM1sIkgdNWlfQAmipRBfYh
2LyCgWvR8CbtwPYIFvUmGgB3MR87iQCVAwUQMUseXB9/qQgDWPy9AQGPkwP/WEDy
El2Gkvua9COtMAifot2vTwuvWWpNopIEx0Ivey4aVbRLD90gGCJw8OGDEtqFPcNV
8aIiy3fYVKXGZZjvCKd7zRfhNmQn0eLDcymq2OX3aPrMc2rRlkT4Jx425ukR1gsO
qiQAgw91aWhY8dlw/EKzk8ojm52x4VgXaBACMjaJAJUDBRAxOUOg72G56RHVjtUB
AbL4A/9HOn5Qa0lq9tKI/HkSdc5fGQD/66VdCBAb292RbB7CS/EM07MdbcqRRYIa
0+0gwQ3OdsWPdCVgH5RIhp/WiC+UPkR1cY8N9Mg2kTwJfZZfNqN+BgWlgRMPN27C
OhYNl8Q33Nl9CpBLrZWABF44jPeT0EvvTzP/5ZQ7T75EsYKYiYkAlQMFEDDmryQA
8tkJ67sbQQEBPdsEALCj6v1OBuJLLJTlxmmrkqAZPVzt5QdeO3Eqa2tcPWcU0nqP
vHYMzZcZ7oFg58NZsWrhSQQDIB5e+K65Q/h6dC7W/aDskZd64jxtEznX2kt0/MOr
8OdsDis1K2f9KQftrAx81KmVwW4Tqtzl7NWTDXt44fMOtibCwVq8v2DFkTJy
=JKbP
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>

View file

@ -47,7 +47,9 @@ MAINTAINER= email-addresses</programlisting>
<sect1>
<title>Contributed Software</title>
<para><emphasis>Contributed by &a.phk; and &a.obrien;. </emphasis></para>
<para>June 1996.</para>
<para>Some parts of the FreeBSD distribution consist of software that
@ -75,7 +77,18 @@ MAINTAINER= email-addresses</programlisting>
only with the approval of the core team and with the general
consensus of the other developers. The ability to maintain the
package in the future will be a key issue in the decisions.</para>
<note>
<para>Because of some unfortunate design limitations with the RCS file
format and CVS's use of vendor branches, minor, trivial and/or
cosmetic changes are <emphasis>strongly discouraged</emphasis> on
files that are still tracking the vendor branch. &ldquo;Spelling
fixes&rdquo; are explicitly included here under the
&ldquo;cosmetic&rdquo; category and are to be avoided for files with
revision 1.1.x.x. The repository bloat impact from a single character
change can be rather dramatic.</para>
</note>
<para>The <application>Tcl</application> embedded programming
language will be used as example of how this model works:</para>
@ -104,14 +117,14 @@ MAINTAINER= email-addresses</programlisting>
<para>The important thing here is that the
<filename>src/contrib/tcl</filename> directory is created according
to the rules: It is supposed to contain the sources as distributed
(on a proper CVS vendor-branch) with as few FreeBSD-specific changes
(on a proper CVS vendor-branch and without RCS keyword expansion) with as few FreeBSD-specific changes
as possible. The 'easy-import' tool on freefall will assist in
doing the import, but if there are any doubts on how to go about it,
it is imperative that you ask first and not blunder ahead and hope
it &ldquo;works out&rdquo;. CVS is not forgiving of import accidents and a fair
amount of effort is required to back out major mistakes.</para>
<para>Because of some unfortunate design limitations with CVS's vendor
<para>Because of the previously mentioned design limitations with CVS's vendor
branches, it is required that &ldquo;official&rdquo; patches from the vendor be
applied to the original distributed sources and the result
re-imported onto the vendor branch again. Official patches should

View file

@ -38,7 +38,13 @@
client/server software such as <command>pppd</command>. Unless otherwise stated, all
commands in this section should be executed as root.</para>
<para>There are a large number of enhancements in version 2 of ppp. You
can discover what version you have by running ppp with no arguments
and typing <command>show version</command> at the prompt. It is a
simple matter to upgrade to the latest version of ppp (under any
version of FreeBSD) by downloading the latest archive via <ulink
url="http://www.Awfulhak.org/ppp.html">www.Awfulhak.org</ulink>.</para>
<sect2>
<title>Before you start</title>
@ -65,42 +71,45 @@
login/password pair.</para>
</listitem>
<listitem>
<para>The IP address of your ISP's gateway. The gateway is
the machine to which you will connect and will be set up as
your &ldquo;default route&rdquo;. If your
ISP hasn't given you this number, don't worry. We can make
one up and your ISP's PPP server will tell us when we
connect.</para>
<para>This number is known from now on as
<literal>HISADDR</literal>.</para>
</listitem>
<listitem>
<para>Your ISP's netmask setting. Again, if your ISP hasn't
given you this information, you can safely use a netmask of
<hostid role="netmask">255.255.255.0</hostid>.</para>
</listitem>
<listitem>
<para>The IP addresses of one or more nameservers. Normally,
you will be given two IP numbers. You
<emphasis>must</emphasis> have this information unless you run
your own nameserver.</para>
<emphasis>must</emphasis> have this information for
<application>PPP</application> version 1.x unless you run
your own nameserver. From version 2 onwards,
<application>PPP</application> supports nameserver address
negotiation. If your ISP supports this, then using the command
<command>enable dns</command> in your config file will tell
<application>PPP</application> to set the nameservers for
you.</para>
</listitem>
</itemizedlist>
<para>The following information may have been supplied by your ISP,
but is not strictly necessary:</para>
<itemizedlist>
<listitem>
<para>The IP address of your ISP's gateway. The gateway is the
machine to which you will connect and will be set up as your
<emphasis>default route</emphasis>. If your ISP hasn't given
you this number, we can make one up and your ISP's PPP server
will tell us the correct value when we connect.</para>
<listitem>
<para>If your ISP allocates you a static IP address and
hostname then you will need this information too. If not,
you will need to know from what range of IP addresses your
allocated IP address will belong. If you haven't been given
this range, don't worry. You can configure <command>ppp</command> to accept any
IP number (as explained later).</para>
</listitem>
</itemizedlist>
<para>This IP number is referred to as <literal>HISADDR</literal>
by ppp.</para>
</listitem>
<listitem>
<para>Your ISP's netmask. If your ISP hasn't given you this
information, you can safely use a netmask of <hostid
role="netmask">255.255.255.0</hostid>.</para>
<para>If your ISP allocates you a static IP address and hostname
then you can enter this information. Otherwise, we simply let the
peer assign whatever IP number it sees fit.</para>
</listitem>
</itemizedlist>
<para>If you do not have any of the required information, contact
your ISP and make sure they provide it to you.</para>
@ -148,11 +157,14 @@ tun0: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
tun1: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 576
tun2: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
inet 203.10.100.1 --&gt; 203.10.100.20 netmask 0xffffffff
tun3: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
tun3: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</screen>
</informalexample>
<para>This case shows four tunnel devices, two of which are
currently configured and being used.</para>
currently configured and being used. It should be noted that the
<literal>RUNNING</literal> flag above indicates that the interface has
been used at some point&mdash;it is not an error if your interface does
not show up as <literal>RUNNING</literal>.</para>
<para>If you have a kernel without the tun device, and you can not
rebuild it for some reason, all is not lost. You should be able
@ -200,7 +212,14 @@ tun3: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
</informalexample>
<para>The <literal>RUNNING</literal> flag may not yet be set, in which
case you will see:</para>
<informalexample>
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8010&lt;POINTOPOINT,MULTICAST> mtu 1500</screen>
</informalexample>
</sect2>
<sect2>
@ -228,7 +247,9 @@ tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
<sect3>
<title>Edit the <filename>/etc/host.conf</filename> file</title>
<para>This file should contain the following two lines:</para>
<para>This file should contain the following two lines (in this
order):</para>
<programlisting>
hosts
@ -286,7 +307,13 @@ domain <replaceable>bar.com</replaceable></programlisting>
domain, and is probably unnecessary. Refer to the <filename>resolv.conf</filename>
manual page for details of other possible entries in this
file.</para>
<para>If you are running PPP version 2 or greater, the <command>enable
dns</command> command will tell PPP to request that your ISP
confirms the nameserver values. If your ISP supplies different
addresses (or if there are no nameserver lines in
<filename>/etc/resolv.conf</filename>), PPP will rewrite the file
with the ISP-supplied values.</para>
</sect3>
</sect2>
@ -328,12 +355,11 @@ domain <replaceable>bar.com</replaceable></programlisting>
4 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0 OK-AT-OK \\dATDT\\TTIMEOUT 40 CONNECT"
5 provider:
6 set phone "(0123) 456 7890"
7 set login "TIMEOUT 10 gin:-BREAK-gin: foo word: bar col: ppp"
7 set login "TIMEOUT 10 \"\" \"\" gin:--gin: foo word: bar col: ppp"
8 set timeout 300
9 deny lqr
10 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable>
11 delete ALL
12 add 0 0 HISADDR</programlisting>
9 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable> 255.255.255.0 0.0.0.0
10 add default HISADDR
11 enable dns</programlisting>
<para>Do not include the line numbers, they are
just for reference in this discussion.</para>
@ -415,7 +441,11 @@ protocol: ppp</screen>
</informalexample>
<para>You will need to alter this script to suit your own
needs. If you're using PAP or CHAP, there will be no
needs. When you write this script for the first time,
you should enable &ldquo;chat&rdquo; logging to ensure that
the conversation is going as expected.</para>
<para>If you're using PAP or CHAP, there will be no
login at this point, so your login string can be left
blank. See
<link linkend="userppp-PAPnCHAP">PAP and CHAP
@ -435,26 +465,6 @@ protocol: ppp</screen>
<varlistentry><term>Line 9:</term>
<listitem>
<para><command>ppp</command> can be configured to exchange Link Quality
Report (LQR) packets. These packets describe how good
the physical link is. <command>ppp</command>'s LQR strategy is to close
the connection when a number of these packets are
missed. This is useful when you have a direct serial
link to another machine and the DSR modem signal is not
available to indicate that the line is up. When data
saturates the line, LQR packets are sometimes
&ldquo;missed&rdquo;, causing <command>ppp</command> to close the connection
prematurely. Refusing to negotiate lqr is sometimes
prudent (if you are going through a modem) as it avoids
this whole mess. By default, <command>ppp</command> will not attempt to
negotiate LQR, but will accept LQR negotiation from the
peer.</para>
</listitem>
</varlistentry>
<varlistentry><term>Line 10:</term>
<listitem>
<para>Sets the interface addresses. The string <replaceable>x.x.x.x</replaceable>
should be replaced by the IP address that your provider
@ -473,17 +483,7 @@ protocol: ppp</screen>
</listitem>
</varlistentry>
<varlistentry><term>Line 11:</term>
<listitem>
<para>Deletes all existing routing table entries for the
acquired tun device. This should not normally be
necessary, but will make sure that <command>ppp</command> is starting with
a clean bill of health.</para>
</listitem>
</varlistentry>
<varlistentry><term>Line 12:</term>
<varlistentry><term>Line 10:</term>
<listitem>
<para>Adds a default route to your ISPs gateway. The
@ -492,9 +492,21 @@ protocol: ppp</screen>
important that this line appears after line 9, otherwise
<literal>HISADDR</literal> will not yet be
initialized.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Line 11:</term>
<listitem>
<para>This line tells PPP to ask your ISP to confirm that your
nameserver addresses are correct. If your ISP supports this
facility, PPP can then update
<filename>/etc/resolv.conf</filename> with the correct
nameserver entries.</para>
</listitem>
</varlistentry>
</variablelist>
<para>It is not necessary to add an entry to
@ -522,7 +534,7 @@ protocol: ppp</screen>
Static IP addresses</link>, with the following change:</para>
<programlisting>
10 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
9 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
<para>Again, do not include the line numbers, they are just for
reference in this discussion. Indentation of at least one space
@ -530,34 +542,28 @@ protocol: ppp</screen>
<variablelist>
<varlistentry><term>Line 10:</term>
<varlistentry><term>Line 9:</term>
<listitem>
<para>The number after the <literal>/</literal> character is the number
of bits of the address that ppp will insist on. You may
wish to use IP numbers more appropriate to your
circumstances, but the above example will almost always
work. If it fails, you may be able to defeat some
broken ppp implementations by supplying an additional
<literal>0.0.0.0</literal> argument:</para>
<programlisting>
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
<para>This tells ppp to negotiate using address <hostid
role="ipaddr">0.0.0.0</hostid> rather than <hostid
role="ipaddr">10.0.0.1</hostid>. Do not use <hostid
role="netmask">0.0.0.0/0</hostid> as the first argument
to <command>set ifaddr</command> as it
prevents <command>ppp</command> from setting up an initial route in
<option>-auto</option> and <option>-ddial</option>
mode.</para>
circumstances, but the above example will always
work.</para>
<para>The last argument (<literal>0.0.0.0</literal>) tells PPP
to negotiate using address <hostid
role="ipaddr">0.0.0.0</hostid> rather than <hostid
role="ipaddr">10.0.0.1</hostid>. Do not use
<literal>0.0.0.0</literal> as the first argument to
<command>set ifaddr</command> as it prevents PPP from setting
up an intial route in <option>-auto</option> mode.</para>
</listitem>
</varlistentry>
</variablelist>
<para>You will also need to create an entry in
<para>If you are running version 1.x of PPP, uou will also need to create an entry in
<filename>/etc/ppp/ppp.linkup</filename>.
<filename>ppp.linkup</filename> is used after a connection has
been established. At this point, <command>ppp</command> will know what IP
@ -611,7 +617,14 @@ set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
<filename>/etc/ppp/ppp.conf.sample</filename> and
<filename>/etc/ppp/ppp.linkup.sample</filename> for a detailed
example.</para>
<para>Version 2 of PPP introduces &ldquo;sticky routes&rdquo;. Any
<literal>add</literal> or <literal>delete</literal> lines that
contain <literal>MYADDR</literal> or <literal>HISADDR</literal> will
be remembered, and any time the actual values of
<literal>MYADDR</literal> or <literal>HISADDR</literal> change, the
routes will be re-applied. This removes the necessity of repeating
these lines in <filename>ppp.linkup</filename>.</para>
</sect3>
<sect3>
@ -621,24 +634,21 @@ set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
role.</para>
<para>When you configure <command>ppp</command> to
receive incoming calls, you must decide whether you wish to
forward packets for just PPP
connections, for all interfaces, or not at all. To forward for
just PPP connections, include the line
receive incoming calls on a machine connected to a LAN, you must decide if you wish to
forward packets to the LAN. If you do, you should allocate the
peer an IP number from your LAN's subet, and use the command
<programlisting>
enable proxy</programlisting>
in your <filename>ppp.conf</filename> file. If you wish to
forward packets on all interfaces, use the
in your <filename>ppp.conf</filename> file. You should also
confirm that the <filename>/etc/rc.conf</filename> file (this file
used to be called <filename>/etc/sysconfig</filename>) contains the
following:</para>
<programlisting>
gateway=YES</programlisting>
option in <filename>/etc/rc.conf</filename> (this file used
to be called <filename>/etc/sysconfig</filename>).</para>
<sect4>
<title>Which getty?</title>
@ -672,7 +682,16 @@ gateway=YES</programlisting>
permission to run <command>ppp</command> by adding them to the
<username>network</username> group in
<filename>/etc/group</filename>.</para>
<para>You will also need to give them access to one or more sections
of the configuration file using the <command>allow</command>
command:</para>
<programlisting>
allow users fred mary</programlisting>
<para>If this command is used in the <literal>default</literal>
section, it gives the specified users access to everything.</para>
</sect4>
<sect4>
@ -702,7 +721,7 @@ exec /usr/sbin/ppp -direct $IDENT</programlisting>
using the following commands:</para>
<informalexample>
<screen>&prompt.root; <userinput>ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
<screen>&prompt.root; <userinput>ln -s ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
</informalexample>
<para>You should use this script as the
@ -855,9 +874,6 @@ mary:
<programlisting>
#!/bin/sh
TTY=`tty`
IDENT=`basename $TTY`
exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
<para>For each dialup line enabled in
@ -867,14 +883,9 @@ exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
above.</para>
<programlisting>
papttyd0:
enable pap
set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
enable proxy
papttyd1:
enable pap
set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
pap:
enable pap
set ifaddr 203.14.100.1 203.14.100.20-203.14.100.40
enable proxy</programlisting>
<para>Each user logging in with this method will need to have
@ -886,36 +897,43 @@ papttyd1:
enable passwdauth</programlisting>
<para>option to authenticate users via pap from the
<filename>/etc/password</filename>d file<footnote><para>(*) Note this option only available in 2.2-961014-SNAP
or later, or by getting the updated ppp code for 2.1.x. (see
MS extensions below for details)</para>
</footnote>.</para>
<filename>/etc/password</filename> file.</para>
<para>If you wish to assign some users a static IP number, you can
specify the number as the third argument in
<filename>/etc/ppp/ppp.secret</filename>. See
<filename>/etc/ppp/ppp.secret.sample</filename> for
examples.</para>
</sect5>
<sect5>
<title>MS extentions</title>
<para>From 2.2-961014-SNAP onwards it is possible to allow the
automatic negotiation of DNS and NetBIOS name servers with
clients supporting this feature (namely Win95/NT clients).
See RFC1877 for more details on the protocol.</para>
<para>An example of enabling these extensions in your
<filename>/etc/ppp/ppp.conf</filename> file is illustrated
below.</para>
<para>It is possible to configure PPP to supply DNS and NetBIOS
nameserver addresses on demand.</para>
<para>To enable these extensions with PPP version 1.x, the
following lines might be added to the relevant section of
<filename>/etc/ppp/ppp.conf</filename>.</para>
<programlisting>
default:
set debug phase lcp chat
set timeout 0
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
<para>And for PPP version 2 and above:</para>
<programlisting>
accept dns
set dns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
<para>This will tell the clients the primary and secondary
name server addresses, and a netbios nameserver host.</para>
<para>In version 2 and above, if the <literal>set dns</literal>
line is ommitted, PPP will use the values found in
<filename>/etc/resolv.conf</filename>.</para>
</sect5>
</sect4>
</sect3>
@ -932,7 +950,7 @@ default:
<para>PAP is less secure than CHAP, but security is not normally
an issue here as passwords, although being sent as plain text
with PAP, are being transmitted down a serial line only.
There's not much room for hackers to &ldquo;eavesdrop&rdquo;.</para>
There's not much room for crackers to &ldquo;eavesdrop&rdquo;.</para>
<para>Referring back to the <link linkend="userppp-staticIP">PPP and Static IP addresses</link> or <link
linkend="userppp-dynamicIP">PPP and Dynamic IP
@ -942,8 +960,8 @@ default:
<programlisting>
7 set login
&hellip;
13 set authname <replaceable>MyUserName</replaceable>
14 set authkey <replaceable>MyPassword</replaceable></programlisting>
12 set authname <replaceable>MyUserName</replaceable>
13 set authkey <replaceable>MyPassword</replaceable></programlisting>
<para>As always, do not include the line numbers, they are just
for reference in this discussion. Indentation of at least one
@ -959,7 +977,7 @@ default:
</listitem>
</varlistentry>
<varlistentry><term>Line 13:</term>
<varlistentry><term>Line 12:</term>
<listitem>
<para>This line specifies your PAP/CHAP user name. You
@ -968,7 +986,7 @@ default:
</listitem>
</varlistentry>
<varlistentry><term>Line 14:</term>
<varlistentry><term>Line 13:</term>
<listitem>
<para>This line specifies your PAP/CHAP password. You
@ -980,56 +998,29 @@ default:
<programlisting>
15 accept CHAP</programlisting> to make it obvious that this is the
intention, but PAP and CHAP are accepted by
intention, but PAP and CHAP are both accepted by
default.</para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>Your <literal>authkey</literal> will be logged
if you have command logging turned on (<command>set log
+command</command>). Care should be taken when deciding the
ppp log file permissions.</para>
</note>
</sect3>
<sect3>
<title>Changing your <command>ppp</command> configuration on the fly</title>
<para>It is possible to talk to the <command>ppp</command> program while it is
running in the background, but only if a suitable password has
been set up.</para>
<para>By default, ppp will listen to a TCP port of 3000 +
<replaceable>tunno</replaceable>, where <replaceable>tunno</replaceable> is the number of the tun device
acquired, however, if a password for the local machine is not
set up in <filename>/etc/ppp/ppp.secret</filename>, no server
connection will be created. To set your password, put the
following line in
<filename>/etc/ppp/ppp.secret</filename>:</para>
<programlisting>
<replaceable>foo</replaceable> <replaceable>MyPassword</replaceable></programlisting>
<para><replaceable>foo</replaceable> is your local
hostname (run <command>hostname -s</command> to determine the
correct name), and <replaceable>MyPassword</replaceable> is
the unencrypted password that you wish to use.
<filename>/etc/ppp/ppp.secret</filename> should
<emphasis>not</emphasis> be accessable by anyone without user id
<username>0</username>. This means that <filename>/</filename>,
<filename>/etc</filename> and <filename>/etc/ppp</filename>
should not be writable, and <filename>ppp.secret</filename>
should be owned by user id <username>0</username> and have permissions 0600.</para>
<para>It is also possible to select a specific port number or to
have ppp listen to a local unix domain socket rather than to a
TCP socket. Refer to the <command>set
socket</command> command in manual page for further
details.</para>
running in the background, but only if a suitable diagnostic port has
been set up. To do this, add the following line to your
configuration:</para>
<programlisting>
set server /var/run/ppp-tun%d DiagnosticPassword 0177</programlisting>
<para>This will tell PPP to listen to the specified unix-domain
socket, asking clients for the specified password before allowing
access. The <literal>%d</literal> in the name is replaced with teh
tun device number that is in use.</para>
<para>Once a socket has been set up, the
<citerefentry><refentrytitle>pppctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> program may be used in scripts that
@ -1230,8 +1221,8 @@ sendmail_flags="-bd"</programlisting>
<sect2>
<title>Acknowledgments</title>
<para>This section of the handbook was last updated on Sun Sep 7,
1997 by &a.brian;</para>
<para>This section of the handbook was last updated on Monday Aug 10,
1998 by &a.brian;</para>
<para>Thanks to the following for their input, comments &amp;
suggestions:</para>

View file

@ -3969,7 +3969,11 @@ done
linkend="printing-simple">Simple Printer Setup</link>. Do
any advanced setup in <link linkend="printing-advanced">Advanced Printer Setup</link> that you need. Make sure to
test the printer and see if it works with the features of LPD
you have enabled.</para>
you have enabled. Also ensure that the <emphasis>local
host</emphasis> has authorization to use the LPD service in the
<emphasis>remote host</emphasis> (see <link
linkend="printing-advanced-restricting-remote">Restricting Jobs
from Remote Printers</link>).</para>
<para>If you are using a printer with a network interface that is
compatible with LPD, then the <emphasis>printer host</emphasis>

View file

@ -440,8 +440,8 @@ permit port ttyd0</programlisting>
software, please <emphasis>do not</emphasis> get it from a USA or
Canada site. You will get that site in <emphasis>big</emphasis>
trouble! A legal copy of this is available from
<hostid role="fqdn">skeleton.mikom.csir.co.za</hostid>, which is in South
Africa.</para>
<hostid role="fqdn">ftp.internat.freebsd.org</hostid>, which is in
South Africa and an official FreeBSD mirror site.</para>
<sect2>
@ -464,7 +464,7 @@ README krb.conf krb.realms</screen>
<filename>principal.*</filename> or <filename>master_key</filename>)
exist, then use the <command>kdb_destroy</command> command to
destroy the old Kerberos database, of if Kerberos is not running,
simply delete the extra files with <command>rm</command>.</para>
simply delete the extra files.</para>
<para>You should now edit the <filename>krb.conf</filename> and
<filename>krb.realms</filename> files to define your Kerberos
@ -939,10 +939,10 @@ FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995</screen>
<para>It may help, but a poorly setup firewall system is more of a
security risk than not having one at all. A firewall can only add
another layer of security to your systems, but they will not be
able to stop a really determined hacker from penetrating your
able to stop a really determined cracker from penetrating your
internal network. If you let internal security lapse because you
believe your firewall to be impenetrable, you have just made the
hackers job that bit easier.</para>
crackers job that bit easier.</para>
</note>
@ -1534,20 +1534,20 @@ FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995</screen>
<title>Example commands for ipfw</title>
<para>This command will deny all packets from the host
<hostid role="fqdn">evil.hacker.org</hostid> to the telnet port of the
<hostid role="fqdn">evil.crackers.org</hostid> to the telnet port of the
host <hostid role="fqdn">nice.people.org</hostid> by being forwarded by
the router:</para>
<informalexample>
<screen>&prompt.root <userinput>ipfw add deny tcp from evil.hacker.org to nice.people.org 23</userinput></screen>
<screen>&prompt.root <userinput>ipfw add deny tcp from evil.crackers.org to nice.people.org 23</userinput></screen>
</informalexample>
<para>The next example denies and logs any TCP traffic from the
entire <hostid role="domainname">hacker.org</hostid> network (a class C) to the
entire <hostid role="domainname">crackers.org</hostid> network (a class C) to the
<hostid role="fqdn">nice.people.org</hostid> machine (any port).</para>
<informalexample>
<screen>&prompt.root; <userinput>ipfw add deny log tcp from evil.hacker.org/24 to nice.people.org</userinput></screen>
<screen>&prompt.root; <userinput>ipfw add deny log tcp from evil.crackers.org/24 to nice.people.org</userinput></screen>
</informalexample>
<para>If you do not want people sending X sessions to your internal

View file

@ -30,10 +30,6 @@
<para>&a.ache;</para>
</listitem>
<listitem>
<para>&a.dyson;</para>
</listitem>
<listitem>
<para>&a.bde;</para>
</listitem>
@ -43,7 +39,7 @@
</listitem>
<listitem>
<para>&a.davidg;</para>
<para>&a.dg;</para>
</listitem>
<listitem>
@ -96,12 +92,14 @@
<para>These are the people who have commit privileges and do the
engineering work on the FreeBSD source tree. All core team members
and most FreeBSD Documentation project personnel are also
developers.</para>
are also developers.</para>
<itemizedlist>
<listitem>
<para>&a.ugen;</para>
</listitem>
<listitem>
<para>&a.mbarkah;</para>
</listitem>
@ -109,7 +107,15 @@
<listitem>
<para>&a.stb;</para>
</listitem>
<listitem>
<para>&a.pb;</para>
</listitem>
<listitem>
<para>&a.abial;</para>
</listitem>
<listitem>
<para>&a.jb;</para>
</listitem>
@ -117,15 +123,31 @@
<listitem>
<para>&a.torstenb;</para>
</listitem>
<listitem>
<para>&a.dburr;</para>
</listitem>
<listitem>
<para>&a.danny;</para>
</listitem>
<listitem>
<para>&a.thepish;</para>
</listitem>
<listitem>
<para>&a.charnier;</para>
</listitem>
<listitem>
<para>&a.luoqi;</para>
</listitem>
<listitem>
<para>&a.ejc;</para>
</listitem>
<listitem>
<para>&a.kjc;</para>
</listitem>
@ -141,7 +163,11 @@
<listitem>
<para>&a.adam;</para>
</listitem>
<listitem>
<para>&a.dillon;</para>
</listitem>
<listitem>
<para>&a.dufault;</para>
</listitem>
@ -222,14 +248,14 @@
<para>&a.hanai;</para>
</listitem>
<listitem>
<para>&a.ahasty;</para>
</listitem>
<listitem>
<para>&a.jhay;</para>
</listitem>
<listitem>
<para>&a.ghelmer;</para>
</listitem>
<listitem>
<para>&a.helbig;</para>
</listitem>
@ -237,19 +263,23 @@
<listitem>
<para>&a.erich;</para>
</listitem>
<listitem>
<para>&a.hosokawa;</para>
</listitem>
<listitem>
<para>&a.hsu;</para>
</listitem>
<listitem>
<para>&a.mph;</para>
</listitem>
<listitem>
<para>&a.itojun;</para>
</listitem>
<listitem>
<para>&a.ugen;</para>
</listitem>
<listitem>
<para>&a.gj;</para>
</listitem>
@ -269,7 +299,27 @@
<listitem>
<para>&a.andreas;</para>
</listitem>
<listitem>
<para>&a.motoyuki;</para>
</listitem>
<listitem>
<para>&a.jkoshy;</para>
</listitem>
<listitem>
<para>&a.kuriyama;</para>
</listitem>
<listitem>
<para>&a.grog;</para>
</listitem>
<listitem>
<para>&a.jlemon;</para>
</listitem>
<listitem>
<para>&a.imp;</para>
</listitem>
@ -281,11 +331,15 @@
<listitem>
<para>&a.mckay;</para>
</listitem>
<listitem>
<para>&a.jlemon;</para>
</listitem>
<listitem>
<para>&a.mckusick;</para>
</listitem>
<listitem>
<para>&a.ken;</para>
</listitem>
<listitem>
<para>&a.tedm;</para>
</listitem>
@ -305,7 +359,11 @@
<listitem>
<para>&a.alex;</para>
</listitem>
<listitem>
<para>&a.rnordier;</para>
</listitem>
<listitem>
<para>&a.davidn;</para>
</listitem>
@ -313,7 +371,11 @@
<listitem>
<para>&a.obrien;</para>
</listitem>
<listitem>
<para>&a.ljo;</para>
</listitem>
<listitem>
<para>&a.fsmp;</para>
</listitem>
@ -393,6 +455,10 @@
<listitem>
<para>&a.msmith;</para>
</listitem>
<listitem>
<para>&a.des;</para>
</listitem>
<listitem>
<para>&a.brian;</para>
@ -405,7 +471,11 @@
<listitem>
<para>&a.karl;</para>
</listitem>
<listitem>
<para>&a.dt;</para>
</listitem>
<listitem>
<para>&a.cwt;</para>
</listitem>
@ -418,10 +488,18 @@
<para>&a.hoek;</para>
</listitem>
<listitem>
<para>&a.nectar;</para>
</listitem>
<listitem>
<para>&a.swallace;</para>
</listitem>
<listitem>
<para>&a.dwhite;</para>
</listitem>
<listitem>
<para>&a.nate;</para>
</listitem>
@ -459,7 +537,7 @@
<variablelist>
<varlistentry><term>Documentation Project Manager</term>
<listitem>
<para>&a.jfieber;</para>
<para><emphasis>currently vacant</emphasis></para>
</listitem>
</varlistentry>
@ -467,10 +545,7 @@
<varlistentry><term>Webmaster</term>
<listitem>
<para>&a.mbarkah;</para>
<para><emphasis>Deputy:</emphasis> &a.paul;</para>
<para>&a.wosch;;</para>
</listitem>
</varlistentry>
@ -482,26 +557,6 @@
</listitem>
</varlistentry>
<varlistentry><term>Build Engineer</term>
<listitem>
<para>&a.paul;</para>
<para><emphasis>Deputy:</emphasis> &a.dave;</para>
</listitem>
</varlistentry>
<varlistentry><term>Mirror Manager</term>
<listitem>
<para>&a.ulf;</para>
<para><emphasis>Deputy:</emphasis> &a.john;</para>
</listitem>
</varlistentry>
<varlistentry><term>News Editor</term>
<listitem>
@ -511,7 +566,15 @@
</listitem>
</varlistentry>
<varlistentry>
<term>FreeBSD Really-Quick NewsLetter Editor</term>
<listitem>
<para>Chris Coleman <email>chrisc@vmunix.com</email></para>
</listitem>
</varlistentry>
<varlistentry><term>Gallery and Commercial Editor</term>
<listitem>
@ -525,10 +588,7 @@
<varlistentry><term>Style Police &amp; Art Director</term>
<listitem>
<para>&a.dave;</para>
<para><emphasis>Deputy:</emphasis> &a.opsys;</para>
<para>&a.opsys;</para>
</listitem>
</varlistentry>
@ -536,19 +596,13 @@
<listitem>
<para>&a.mayo;</para>
<para><emphasis>Deputy:</emphasis> &a.cracauer;</para>
</listitem>
</varlistentry>
<varlistentry><term>CGI Engineer</term>
<listitem>
<para>&a.cracauer;</para>
<para><emphasis>Deputy:</emphasis> &a.stb;</para>
<para>&a.stb;</para>
</listitem>
</varlistentry>
@ -556,11 +610,16 @@
<listitem>
<para>&a.nsj;</para>
<para><emphasis>Drying plates:</emphasis> &a.nik;</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LinuxDoc to DocBook conversion</term>
<listitem>
<para>&a.nik;</para>
</listitem>
</varlistentry>
</variablelist>
@ -573,20 +632,21 @@
<variablelist>
<varlistentry><term>Principal Architect</term>
<listitem>
<para>&a.davidg;</para>
<para>&a.dg;</para>
</listitem>
</varlistentry>
<varlistentry><term>Documentation Project Manager</term>
<varlistentry><term><ulink
url="http://www.freebsd.org/docproj/docproj.html">Documentation Project Manager</ulink></term>
<listitem>
<para>&a.jfieber;</para>
<para><emphasis>currently vacant</emphasis></para>
</listitem>
</varlistentry>
<varlistentry><term>Internationalization</term>
<varlistentry><term><link linkend="l10n">Internationalization</link></term>
<listitem>
<para>&a.ache;</para>
@ -602,7 +662,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Postmaster</term>
<varlistentry><term><link linkend="eresources-mail">Postmaster</link></term>
<listitem>
<para>&a.jmb;</para>
@ -627,7 +687,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Security Officer</term>
<varlistentry><term><ulink url="http://www.freebsd.org/security/">Security Officer</ulink></term>
<listitem>
<para>&a.guido;</para>
@ -635,7 +695,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Source Repository Managers</term>
<varlistentry><term><ulink url="http://www.freebsd.org/support.html#cvs">>Source Repository Managers</ulink></term>
<listitem>
<para>Principal: &a.peter;</para>
@ -647,7 +707,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Ports Manager</term>
<varlistentry><term><ulink url="http://www.freebsd.org/ports/">Ports Manager</ulink></term>
<listitem>
<para>&a.asami;</para>
@ -663,7 +723,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Usenet Support</term>
<varlistentry><term><link linkend="eresources-news">Usenet Support</link></term>
<listitem>
<para>&a.joerg;</para>
@ -671,13 +731,20 @@
</listitem>
</varlistentry>
<varlistentry><term>GNATS Administrator</term>
<varlistentry><term><ulink url="http://www.freebsd.org/support.html#gnats">GNATS Administrator</ulink></term>
<listitem>
<para>&a.steve;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><ulink url="http://www.freebsd.org/internal/">Webmaster</ulink></term>
<listitem>
<para>&a.wosch;</para>
</listitem>
</varlistentry>
</variablelist>

View file

@ -7,15 +7,15 @@
Please keep this list in alphabetical order by entity names.
$Id: authors.ent,v 1.2 1998-11-09 17:41:07 archie Exp $
$Id: authors.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!ENTITY a.abial "Andrzej Bialecki <email>abial@FreeBSD.ORG</email>">
<!ENTITY a.ache "Andrey A. Chernov <email>ache@FreeBSD.ORG</email>">
<!ENTITY a.adam "Adam David <email>adam@FreeBSD.ORG</email>">
<!ENTITY a.ahasty "Amancio Hasty <email>ahasty@FreeBSD.ORG</email>">
<!ENTITY a.alex "Alex Nash <email>alex@freebsd.org</email>">
<!ENTITY a.amurai "Atsushi Murai <email>amurai@FreeBSD.ORG</email>">
@ -54,28 +54,38 @@
<!ENTITY a.darrenr "Darren Reed <email>darrenr@FreeBSD.ORG</email>">
<!ENTITY a.dave "Dave Cornejo <email>dave@FreeBSD.ORG</email>">
<!ENTITY a.davidg "David Greenman <email>davidg@FreeBSD.ORG</email>">
<!ENTITY a.dg "David Greenman <email>dg@FreeBSD.ORG</email>">
<!ENTITY a.davidn "David Nugent <email>davidn@blaze.net.au</email>">
<!ENTITY a.dburr "Donald Burr <email>dburr@FreeBSD.ORG</email>">
<!ENTITY a.des "Dag-Erling C. Sm&oslash;rgrav <email>des@FreeBSD.ORG</email>">
<!ENTITY a.dfr "Doug Rabson <email>dfr@FreeBSD.ORG</email>">
<!ENTITY a.dillon "Matthew Dillon <email>dillon@FreeBSD.ORG</email>">
<!ENTITY a.dima "Dima Ruban <email>dima@FreeBSD.ORG</email>">
<!ENTITY a.dirkvangulik "Dirk-Willem van Gulik <email>Dirk.vanGulik@jrc.it</email>">
<!ENTITY a.dt "Dmitrij Tejblum <email>dt@FreeBSD.ORG</email>">
<!ENTITY a.dwhite "Doug White <email>dwhite@FreeBSD.ORG</email>">
<!ENTITY a.dufault "Peter Dufault <email>dufault@FreeBSD.ORG</email>">
<!ENTITY a.dyson "John Dyson <email>dyson@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.eivind "Eivind Eklund <email>perhaps@yes.no</email>">
<!ENTITY a.ejc "Eric J. Chet <email>ejc@FreeBSD.ORG</email>">
<!ENTITY a.erich "Eric L. Hernes <email>erich@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.fenner "Bill Fenner <email>fenner@FreeBSD.ORG</email>">
<!ENTITY a.fsmp "Steve Passe <email>fsmp@FreeBSD.ORG</email>">
@ -94,6 +104,8 @@
<!ENTITY a.graichen "Thomas Graichen <email>graichen@FreeBSD.ORG</email>">
<!ENTITY a.grog "Greg Lehey <email>grog@FreeBSD.ORG</email>">
<!ENTITY a.gryphon "Coranth Gryphon <email>gryphon@healer.com</email>">
<!ENTITY a.guido "Guido van Rooij <email>guido@FreeBSD.ORG</email>">
@ -132,6 +144,8 @@
<!ENTITY a.jkh "Jordan K. Hubbard <email>jkh@FreeBSD.ORG</email>">
<!ENTITY a.jkoshy "Joseph Koshy <email>jkoshy@FreeBSD.ORG</email>">
<!ENTITY a.jlemon "Jonathan Lemon <email>jlemon@FreeBSD.ORG</email>">
<!ENTITY a.jlind "John Lind <email>john@starfire.MN.ORG</email>">
@ -164,12 +178,18 @@
<!ENTITY a.kelly "Sean Kelly <email>kelly@fsl.noaa.gov</email>">
<!ENTITY a.ken "Kenneth D. Merry <email>ken@FreeBSD.ORG</email>">
<!ENTITY a.kjc "Kenjiro Cho <email>kjc@FreeBSD.ORG</email>">
<!ENTITY a.kuriyama "Jun Kuriyama <email>kuriyama@FreeBSD.ORG</email>">
<!ENTITY a.lars "Lars Fredriksen <email>lars@FreeBSD.ORG</email>">
<!ENTITY a.ljo "L Jonas Olsson <email>ljo@FreeBSD.ORG</email>">
<!ENTITY a.luoqi "Luoqi Chen <email>luoqi@FreeBSD.ORG</email>">
<!ENTITY a.markm "Mark Murray <email>markm@FreeBSD.ORG</email>">
<!ENTITY a.martin "Martin Renters <email>martin@FreeBSD.ORG</email>">
@ -182,14 +202,22 @@
<!ENTITY a.mckay "Stephen McKay <email>mckay@FreeBSD.ORG</email>">
<!ENTITY a.mckusick "Kirk McKusick <email>mckusick@FreeBSD.ORG</email>">
<!ENTITY a.md "Mark Dapoz <email>md@bsc.no</email>">
<!ENTITY a.motoyuki "Motoyuki Konno <email>motoyuki@FreeBSD.ORG</email>">
<!ENTITY a.mph "Matthew Hunt <email>mph@FreeBSD.ORG</email>">
<!ENTITY a.mpp "Mike Pritchard <email>mpp@FreeBSD.ORG</email>">
<!ENTITY a.msmith "Michael Smith <email>msmith@FreeBSD.ORG</email>">
<!ENTITY a.nate "Nate Williams <email>nate@FreeBSD.ORG</email>">
<!ENTITY a.nectar "Jacques Vidrine <email>nectar@FreeBSD.ORG</email>">
<!ENTITY a.nik "Nik Clayton <email>nik@FreeBSD.ORG</email>">
<!ENTITY a.nsj "Nate Johnson <email>nsj@FreeBSD.ORG</email>">
@ -202,6 +230,8 @@
<!ENTITY a.paul "Paul Richards <email>paul@FreeBSD.ORG</email>">
<!ENTITY a.pb "Pierre Beyssac <email>pb@fasterix.freenix.org</email>">
<!ENTITY a.pds "Peter da Silva <email>pds@FreeBSD.ORG</email>">
<!ENTITY a.peter "Peter Wemm <email>peter@FreeBSD.ORG</email>">
@ -222,6 +252,8 @@
<!ENTITY a.rich "Rich Murphey <email>rich@FreeBSD.ORG</email>">
<!ENTITY a.rnordier "Robert Nordier <email>rnordier@FreeBSD.ORG</email>">
<!ENTITY a.roberto "Ollivier Robert <email>roberto@FreeBSD.ORG</email>">
<!ENTITY a.rse "Ralf S. Engelschall <email>rse@FreeBSD.ORG</email>">
@ -252,6 +284,8 @@
<!ENTITY a.tg "Thomas Gellekum <email>tg@FreeBSD.ORG</email>">
<!ENTITY a.thepish "Peter Hawkins <email>thepish@FreeBSD.ORG</email>">
<!ENTITY a.torstenb "Torsten Blum <email>torstenb@FreeBSD.ORG</email>">
<!ENTITY a.ugen "Ugen J.S.Antsilevich <email>ugen@FreeBSD.ORG</email>">

View file

@ -738,86 +738,49 @@ hostname myclient.mydomain</programlisting>
<sect2>
<title>ISDN Cards</title>
<para><emphasis>Original Contribution by &a.hm;.</emphasis></para>
<para><emphasis>Contributed by &a.hm;.</emphasis></para>
<para>This section is really only relevant to European ISDN users.
The cards supported are not yet(?) available for North American
ISDN standards.</para>
<para>You should be aware that this code is largely under
development. Specifically, drivers have only been written for two
manufacturers cards.</para>
<para>PC ISDN cards support the full bandwidth of ISDN, 128Kbs.
These cards are often the least expensive type of ISDN equipment.</para>
<para>Under FreeBSD 2.1.0 and 2.1.5, there is early unfinished ISDN
code under <filename>/usr/src/gnu/isdn</filename>. This code is
out of date and should not be used. If you want to go this route,
get the bisdn stuff. This code has been removed from the main
source tree starting with FreeBSD 2.2.</para>
<para>There is the bisdn ISDN package available from <ulink
URL="ftp://hub.freebsd.org/pub/bisdn">hub.freebsd.org</ulink>
supporting FreeBSD 2.1R, FreeBSD-current and NetBSD. The latest
source can be found on the above mentioned ftp server under
directory isdn as file bisdn-097.tar.gz.</para>
<para>There are drivers for the following cards:</para>
<itemizedlist>
<listitem>
<para>Currently all (passive) Teles cards and their clones are
supported for the EuroISDN (DSS1) and 1TR6 protocols.</para>
</listitem>
<listitem>
<para>Dr. Neuhaus &mdash; Niccy 1016</para>
</listitem>
</itemizedlist>
<para>There are several limitations with the bisdn stuff.
Specifically the following features usually associated with ISDN
are not supported.</para>
<itemizedlist>
<listitem>
<para>No PPP support, only raw hdlc. This means you cannot
connect to most standalone routers.</para>
</listitem>
<listitem>
<para>Bridging Control Protocol not supported.</para>
</listitem>
<listitem>
<para>Multiple cards are not supported.</para>
</listitem>
<listitem>
<para>No bandwidth on demand.</para>
</listitem>
<listitem>
<para>No channel bundling.</para>
</listitem>
</itemizedlist>
<para>A majordomo maintained mailing list is available. To join the
list, send mail to &a.majordomo; and specify:
<para>This section is really only relevant to ISDN users in countries
where the DSS1/Q.931 ISDN standard is supported. </para>
<para>Some growing number of PC ISDN cards are supported under FreeBSD
2.2.x and up by the isdn4bsd driver package. It is still under
development but the reports show that it is successfully used all
over Europe.</para>
<programlisting>
<para>The latest isdn4bsd version is available from <ulink
url="ftp://isdn4bsd@ftp.consol.de/pub/">ftp://isdn4bsd@ftp.consol.de/pub/</ulink>,
the main isdn4bsd ftp site (you have to log in as user
<username>isdn4bsd</username> , give your mail address as the
password and change to the <filename>pub</filename>
directory. Anonymous ftp as user <username>ftp</username> or
<username>anonymous</username> will <emphasis>not</emphasis> give
the desired result).</para>
<para>Isdn4bsd allows you to connect to other ISDN routers using
either IP over raw HDLC or by using synchronous PPP. A telephone
answering machine application is also available.</para>
<para>Many ISDN PC cards are supported, mostly the ones with a Siemens
ISDN chipset (ISAC/HSCX), support for other chipsets (from Motorola,
Cologne Chip Designs) is currently under development. For an
up-to-date list of supported cards, please have a look at the
<ulink url="ftp://isdn4bsd@ftp.consol.de/pub/README">README</ulink>
file.</para>
<para>In case you are interested in adding support for a different
ISDN protocol, a currently unsupported ISDN PC card or otherwise
enhancing isdn4bsd, please get in touch with
<email>hm@kts.org</email>.</para>
<para>A majordomo maintained mailing list is available. To join the
list, send mail to <email>majordomo@FreeBSD.ORG</email> and
specify:</para>
<programlisting>
subscribe freebsd-isdn</programlisting>
in the body
of your message.</para>
<para>in the body of your message.</para>
</sect2>
<sect2>

View file

@ -7,15 +7,15 @@
Please keep this list in alphabetical order by entity names.
$Id: authors.ent,v 1.2 1998-11-09 17:41:07 archie Exp $
$Id: authors.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!ENTITY a.abial "Andrzej Bialecki <email>abial@FreeBSD.ORG</email>">
<!ENTITY a.ache "Andrey A. Chernov <email>ache@FreeBSD.ORG</email>">
<!ENTITY a.adam "Adam David <email>adam@FreeBSD.ORG</email>">
<!ENTITY a.ahasty "Amancio Hasty <email>ahasty@FreeBSD.ORG</email>">
<!ENTITY a.alex "Alex Nash <email>alex@freebsd.org</email>">
<!ENTITY a.amurai "Atsushi Murai <email>amurai@FreeBSD.ORG</email>">
@ -54,28 +54,38 @@
<!ENTITY a.darrenr "Darren Reed <email>darrenr@FreeBSD.ORG</email>">
<!ENTITY a.dave "Dave Cornejo <email>dave@FreeBSD.ORG</email>">
<!ENTITY a.davidg "David Greenman <email>davidg@FreeBSD.ORG</email>">
<!ENTITY a.dg "David Greenman <email>dg@FreeBSD.ORG</email>">
<!ENTITY a.davidn "David Nugent <email>davidn@blaze.net.au</email>">
<!ENTITY a.dburr "Donald Burr <email>dburr@FreeBSD.ORG</email>">
<!ENTITY a.des "Dag-Erling C. Sm&oslash;rgrav <email>des@FreeBSD.ORG</email>">
<!ENTITY a.dfr "Doug Rabson <email>dfr@FreeBSD.ORG</email>">
<!ENTITY a.dillon "Matthew Dillon <email>dillon@FreeBSD.ORG</email>">
<!ENTITY a.dima "Dima Ruban <email>dima@FreeBSD.ORG</email>">
<!ENTITY a.dirkvangulik "Dirk-Willem van Gulik <email>Dirk.vanGulik@jrc.it</email>">
<!ENTITY a.dt "Dmitrij Tejblum <email>dt@FreeBSD.ORG</email>">
<!ENTITY a.dwhite "Doug White <email>dwhite@FreeBSD.ORG</email>">
<!ENTITY a.dufault "Peter Dufault <email>dufault@FreeBSD.ORG</email>">
<!ENTITY a.dyson "John Dyson <email>dyson@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.eivind "Eivind Eklund <email>perhaps@yes.no</email>">
<!ENTITY a.ejc "Eric J. Chet <email>ejc@FreeBSD.ORG</email>">
<!ENTITY a.erich "Eric L. Hernes <email>erich@FreeBSD.ORG</email>">
<!ENTITY a.faq "FAQ Maintainer <email>faq@freebsd.org</email>">
<!ENTITY a.fenner "Bill Fenner <email>fenner@FreeBSD.ORG</email>">
<!ENTITY a.fsmp "Steve Passe <email>fsmp@FreeBSD.ORG</email>">
@ -94,6 +104,8 @@
<!ENTITY a.graichen "Thomas Graichen <email>graichen@FreeBSD.ORG</email>">
<!ENTITY a.grog "Greg Lehey <email>grog@FreeBSD.ORG</email>">
<!ENTITY a.gryphon "Coranth Gryphon <email>gryphon@healer.com</email>">
<!ENTITY a.guido "Guido van Rooij <email>guido@FreeBSD.ORG</email>">
@ -132,6 +144,8 @@
<!ENTITY a.jkh "Jordan K. Hubbard <email>jkh@FreeBSD.ORG</email>">
<!ENTITY a.jkoshy "Joseph Koshy <email>jkoshy@FreeBSD.ORG</email>">
<!ENTITY a.jlemon "Jonathan Lemon <email>jlemon@FreeBSD.ORG</email>">
<!ENTITY a.jlind "John Lind <email>john@starfire.MN.ORG</email>">
@ -164,12 +178,18 @@
<!ENTITY a.kelly "Sean Kelly <email>kelly@fsl.noaa.gov</email>">
<!ENTITY a.ken "Kenneth D. Merry <email>ken@FreeBSD.ORG</email>">
<!ENTITY a.kjc "Kenjiro Cho <email>kjc@FreeBSD.ORG</email>">
<!ENTITY a.kuriyama "Jun Kuriyama <email>kuriyama@FreeBSD.ORG</email>">
<!ENTITY a.lars "Lars Fredriksen <email>lars@FreeBSD.ORG</email>">
<!ENTITY a.ljo "L Jonas Olsson <email>ljo@FreeBSD.ORG</email>">
<!ENTITY a.luoqi "Luoqi Chen <email>luoqi@FreeBSD.ORG</email>">
<!ENTITY a.markm "Mark Murray <email>markm@FreeBSD.ORG</email>">
<!ENTITY a.martin "Martin Renters <email>martin@FreeBSD.ORG</email>">
@ -182,14 +202,22 @@
<!ENTITY a.mckay "Stephen McKay <email>mckay@FreeBSD.ORG</email>">
<!ENTITY a.mckusick "Kirk McKusick <email>mckusick@FreeBSD.ORG</email>">
<!ENTITY a.md "Mark Dapoz <email>md@bsc.no</email>">
<!ENTITY a.motoyuki "Motoyuki Konno <email>motoyuki@FreeBSD.ORG</email>">
<!ENTITY a.mph "Matthew Hunt <email>mph@FreeBSD.ORG</email>">
<!ENTITY a.mpp "Mike Pritchard <email>mpp@FreeBSD.ORG</email>">
<!ENTITY a.msmith "Michael Smith <email>msmith@FreeBSD.ORG</email>">
<!ENTITY a.nate "Nate Williams <email>nate@FreeBSD.ORG</email>">
<!ENTITY a.nectar "Jacques Vidrine <email>nectar@FreeBSD.ORG</email>">
<!ENTITY a.nik "Nik Clayton <email>nik@FreeBSD.ORG</email>">
<!ENTITY a.nsj "Nate Johnson <email>nsj@FreeBSD.ORG</email>">
@ -202,6 +230,8 @@
<!ENTITY a.paul "Paul Richards <email>paul@FreeBSD.ORG</email>">
<!ENTITY a.pb "Pierre Beyssac <email>pb@fasterix.freenix.org</email>">
<!ENTITY a.pds "Peter da Silva <email>pds@FreeBSD.ORG</email>">
<!ENTITY a.peter "Peter Wemm <email>peter@FreeBSD.ORG</email>">
@ -222,6 +252,8 @@
<!ENTITY a.rich "Rich Murphey <email>rich@FreeBSD.ORG</email>">
<!ENTITY a.rnordier "Robert Nordier <email>rnordier@FreeBSD.ORG</email>">
<!ENTITY a.roberto "Ollivier Robert <email>roberto@FreeBSD.ORG</email>">
<!ENTITY a.rse "Ralf S. Engelschall <email>rse@FreeBSD.ORG</email>">
@ -252,6 +284,8 @@
<!ENTITY a.tg "Thomas Gellekum <email>tg@FreeBSD.ORG</email>">
<!ENTITY a.thepish "Peter Hawkins <email>thepish@FreeBSD.ORG</email>">
<!ENTITY a.torstenb "Torsten Blum <email>torstenb@FreeBSD.ORG</email>">
<!ENTITY a.ugen "Ugen J.S.Antsilevich <email>ugen@FreeBSD.ORG</email>">

View file

@ -0,0 +1,731 @@
<chapter id="backups">
<title>Backups</title>
<para>Issues of hardware compatibility are among the most troublesome in the
computer industry today and FreeBSD is by no means immune to trouble. In
this respect, FreeBSD's advantage of being able to run on inexpensive
commodity PC hardware is also its liability when it comes to support for
the amazing variety of components on the market. While it would be
impossible to provide a exhaustive listing of hardware that FreeBSD
supports, this section serves as a catalog of the device drivers included
with FreeBSD and the hardware each drivers supports. Where possible and
appropriate, notes about specific products are included. You may also want
to refer to <link linkend="kernelconfig-config"> the kernel configuration
file</link> section in this handbook for a list of supported
devices.</para>
<para>As FreeBSD is a volunteer project without a funded testing department,
we depend on you, the user, for much of the information contained in this
catalog. If you have direct experience of hardware that does or does not
work with FreeBSD, please let us know by sending e-mail to the &a.doc;.
Questions about supported hardware should be directed to the &a.questions
(see <link linkend="eresources-mail">Mailing Lists</link> for more
information). When submitting information or asking a question, please
remember to specify exactly what version of FreeBSD you are using and
include as many details of your hardware as possible.</para>
<sect1>
<title>* What about backups to floppies?</title>
<para></para>
</sect1>
<sect1 id="backups-tapebackups">
<title>Tape Media</title>
<para>The major tape media are the 4mm, 8mm, QIC, mini-cartridge and
DLT.</para>
<sect2 id="backups-tapebackups-4mm">
<title>4mm (DDS: Digital Data
Storage)</title>
<para>4mm tapes are replacing QIC as the workstation backup media of
choice. This trend accelerated greatly when Conner purchased Archive,
a leading manufacturer of QIC drives, and then stopped production of
QIC drives. 4mm drives are small and quiet but do not have the
reputation for reliability that is enjoyed by 8mm drives. The
cartridges are less expensive and smaller (3 x 2 x 0.5 inches, 76 x 51
x 12 mm) than 8mm cartridges. 4mm, like 8mm, has comparatively short
head life for the same reason, both use helical scan.</para>
<para>Data thruput on these drives starts ~150kB/s, peaking at ~500kB/s.
Data capacity starts at 1.3 GB and ends at 2.0 GB. Hardware
compression, available with most of these drives, approximately
doubles the capacity. Multi-drive tape library units can have 6 drives
in a single cabinet with automatic tape changing. Library capacities
reach 240 GB.</para>
<para>4mm drives, like 8mm drives, use helical-scan. All the benefits
and drawbacks of helical-scan apply to both 4mm and 8mm drives.</para>
<para>Tapes should be retired from use after 2,000 passes or 100 full
backups.</para>
</sect2>
<sect2 id="backups-tapebackups-8mm">
<title>8mm (Exabyte)</title>
<para>8mm tapes are the most common SCSI tape drives; they are the best
choice of exchanging tapes. Nearly every site has an exabyte 2 GB 8mm
tape drive. 8mm drives are reliable, convenient and quiet. Cartridges
are inexpensive and small (4.8 x 3.3 x 0.6 inches; 122 x 84 x 15 mm).
One downside of 8mm tape is relatively short head and tape life due to
the high rate of relative motion of the tape across the heads.</para>
<para>Data thruput ranges from ~250kB/s to ~500kB/s. Data sizes start at
300 MB and go up to 7 GB. Hardware compression, available with most of
these drives, approximately doubles the capacity. These drives are
available as single units or multi-drive tape libraries with 6 drives
and 120 tapes in a single cabinet. Tapes are changed automatically by
the unit. Library capacities reach 840+ GB.</para>
<para>Data is recorded onto the tape using helical-scan, the heads are
positioned at an angle to the media (approximately 6 degrees). The
tape wraps around 270 degrees of the spool that holds the heads. The
spool spins while the tape slides over the spool. The result is a high
density of data and closely packed tracks that angle across the tape
from one edge to the other.</para>
</sect2>
<sect2 id="backups-tapebackups-qic">
<title>QIC</title>
<para>QIC-150 tapes and drives are, perhaps, the most common tape drive
and media around. QIC tape drives are the least expensive "serious"
backup drives. The downside is the cost of media. QIC tapes are
expensive compared to 8mm or 4mm tapes, up to 5 times the price per GB
data storage. But, if your needs can be satisfied with a half-dozen
tapes, QIC may be the correct choice. QIC is the
<emphasis>most</emphasis> common tape drive. Every site has a QIC
drive of some density or another. Therein lies the rub, QIC has a
large number of densities on physically similar (sometimes identical)
tapes. QIC drives are not quiet. These drives audibly seek before they
begin to record data and are clearly audible whenever reading, writing
or seeking. QIC tapes measure (6 x 4 x 0.7 inches; 15.2 x 10.2 x 1.7
mm). <link linkend="backups-tapebackups-mini">Mini-cartridges</link>,
which also use 1/4" wide tape are discussed separately. Tape libraries
and changers are not available.</para>
<para>Data thruput ranges from ~150kB/s to ~500kB/s. Data capacity
ranges from 40 MB to 15 GB. Hardware compression is available on many
of the newer QIC drives. QIC drives are less frequently installed;
they are being supplanted by DAT drives.</para>
<para>Data is recorded onto the tape in tracks. The tracks run along the
long axis of the tape media from one end to the other. The number of
tracks, and therefore the width of a track, varies with the tape's
capacity. Most if not all newer drives provide backward-compatibility
at least for reading (but often also for writing). QIC has a good
reputation regarding the safety of the data (the mechanics are simpler
and more robust than for helical scan drives).</para>
<para>Tapes should be retired from use after 5,000 backups.</para>
</sect2>
<sect2 id="backups-tapebackups-mini">
<title>* Mini-Cartridge</title>
<para></para>
</sect2>
<sect2 id="backups-tapebackups-dlt">
<title>DLT</title>
<para>DLT has the fastest data transfer rate of all the drive types
listed here. The 1/2" (12.5mm) tape is contained in a single spool
cartridge (4 x 4 x 1 inches; 100 x 100 x 25 mm). The cartridge has a
swinging gate along one entire side of the cartridge. The drive
mechanism opens this gate to extract the tape leader. The tape leader
has an oval hole in it which the drive uses to "hook" the tape. The
take-up spool is located inside the tape drive. All the other tape
cartridges listed here (9 track tapes are the only exception) have
both the supply and take-up spools located inside the tape cartridge
itself.</para>
<para>Data thruput is approximately 1.5MB/s, three times the thruput of
4mm, 8mm, or QIC tape drives. Data capacities range from 10GB to 20GB
for a single drive. Drives are available in both multi-tape changers
and multi-tape, multi-drive tape libraries containing from 5 to 900
tapes over 1 to 20 drives, providing from 50GB to 9TB of
storage.</para>
<para>Data is recorded onto the tape in tracks parallel to the direction
of travel (just like QIC tapes). Two tracks are written at once.
Read/write head lifetimes are relatively long; once the tape stops
moving, there is no relative motion between the heads and the
tape.</para>
</sect2>
<sect2>
<title>Using a new tape for the first time</title>
<para>The first time that you try to read or write a new,
completely blank tape, the operation will fail. The console
messages should be similar to:</para>
<informalexample>
<screen>st0(ncr1:4:0): NOT READY asc:4,1
st0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
</informalexample>
<para>The tape does not contain an Identifier Block (block number 0).
All QIC tape drives since the adoption of QIC-525 standard write an
Identifier Block to the tape. There are two solutions:</para>
<para><command>mt fsf 1</command> causes the tape drive to write an
Identifier Block to the tape.</para>
<para>Use the front panel button to eject the tape.</para>
<para>Re-insert the tape and
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> data to the tape.</para>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> will report <literal>DUMP:
End of tape detected</literal> and the console will show:
<literal>HARDWARE FAILURE info:280 asc:80,96</literal></para>
<para>rewind the tape using: <command>mt rewind</command></para>
<para>Subsequent tape operations are successful.</para>
</sect2>
</sect1>
<sect1 id="backup-programs">
<title>Backup Programs</title>
<para>The three major programs are
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>,
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>,
and
<citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>.</para>
<sect2>
<title>Dump and Restore</title>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>restore</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> are the traditional Unix backup programs. They operate
on the drive as a collection of disk blocks, below the abstractions of
files, links and directories that are created by the filesystems.
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> backs up devices, entire filesystems, not parts of a
filesystem and not directory trees that span more than one filesystem,
using either soft links <citerefentry>
<refentrytitle>ln</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> or mounting one filesystem onto another.
<citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> does not write files and directories to tape, but
rather writes the data blocks that are the building blocks of files
and directories. <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> has quirks that remain from its early days in
Version 6 of ATT Unix (circa 1975). The default parameters are
suitable for 9-track tapes (6250 bpi), not the high-density media
available today (up to 62,182 ftpi). These defaults must be overridden
on the command line to utilize the capacity of current tape
drives.</para>
<para><citerefentry>
<refentrytitle>rdump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>rrestore</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> backup data across the
network to a tape drive attached to another computer. Both programs
rely upon <citerefentry>
<refentrytitle>rcmd</refentrytitle>
<manvolnum>3</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>ruserok</refentrytitle>
<manvolnum>3</manvolnum></citerefentry> to access the remote tape
drive. Therefore, the user performing the backup must have
<literal>rhosts</literal> access to the remote computer. The
arguments to <citerefentry>
<refentrytitle>rdump</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> and <citerefentry>
<refentrytitle>rrestore</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> must suitable to use on the remote computer. (e.g.
When <command>rdump</command>'ing from a FreeBSD computer to an
Exabyte tape drive connected to a Sun called
<hostid>komodo</hostid>, use: <command>/sbin/rdump 0dsbfu 54000
13000 126 komodo:/dev/nrst8 /dev/rsd0a 2>&amp;1</command>) Beware:
there are security implications to allowing <literal>rhosts</literal>
commands. Evaluate your situation carefully.</para>
</sect2>
<sect2>
<title>Tar</title>
<para><citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> also dates back to Version 6 of ATT Unix (circa
1975). <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> operates in cooperation with the filesystem;
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> writes files and directories to tape.
<citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> does not support the full range of options that are
available from <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>, but <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not require the
unusual command pipeline that <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> uses.</para>
<para>Most versions of <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> do not support backups across the network. The GNU
version of <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>, which FreeBSD utilizes,
supports remote devices using the same syntax as
<command>rdump</command>. To <citerefentry>
<refentrytitle>tar</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> to an Exabyte tape drive connected to a Sun called
komodo, use: <command>/usr/bin/tar cf komodo:/dev/nrst8 .
2>&amp;1</command>. For versions without remote device support,
you can use a pipeline and <citerefentry>
<refentrytitle>rsh</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> to send the data to a
remote tape drive. (XXX add an example command)</para>
</sect2>
<sect2>
<title>Cpio</title>
<para><citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> is the original Unix
file interchange tape program for magnetic media. <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> has options (among many
others) to perform byte-swapping, write a number of different
archives format, and pipe the data to other programs. This last
feature makes <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> and excellent choice for
installation media. <citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not know how to walk
the directory tree and a list of files must be provided thru
<filename>STDIN</filename>.</para>
<para><citerefentry>
<refentrytitle>cpio</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> does not support backups
across the network. You can use a pipeline and <citerefentry>
<refentrytitle>rsh</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> to send the data to a
remote tape drive. (XXX add an example command)</para>
</sect2>
<sect2>
<title>Pax</title>
<para><citerefentry>
<refentrytitle>pax</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> is IEEE/POSIX's answer to
<command>tar</command> and <command>cpio</command>. Over the years the
various versions of <command>tar</command> and <command>cpio</command>
have gotten slightly incompatible. So rather than fight it out to
fully standardize them, POSIX created a new archive utility.
<command>pax</command> attempts to read and write many of the various
cpio and tar formats, plus new formats of its own. Its command set
more resembles <command>cpio</command> than
<command>tar</command>.</para>
</sect2>
<sect2 id="backups-programs-amanda">
<title>Amanda</title>
<para><ulink url="../ports/misc.html#amanda-2.4.0">Amanda</ulink>
(Advanced Maryland Network Disk Archiver) is a client/server backup
system, rather than a single program. An Amanda server will backup to
a single tape drive any number of computers that have Amanda clients
and network communications with the Amanda server. A common problem at
locations with a number of large disks is the length of time required
to backup to data directly to tape exceeds the amount of time
available for the task. Amanda solves this problem. Amanda can use a
"holding disk" to backup several filesystems at the same time. Amanda
creates "archive sets": a group of tapes used over a period of time to
create full backups of all the filesystems listed in Amanda's
configuration file. The "archive set" also contains nightly
incremental (or differential) backups of all the filesystems.
Restoring a damaged filesystem requires the most recent full backup
and the incremental backups.</para>
<para>The configuration file provides fine control backups and the
network traffic that Amanda generates. Amanda will use any of the
above backup programs to write the data to tape. Amanda is available
as either a port or a package, it is not installed by default.</para>
</sect2>
<sect2>
<title>Do nothing</title>
<para>&ldquo;Do nothing&rdquo; is not a computer program, but it is the
most widely used backup strategy. There are no initial costs. There is
no backup schedule to follow. Just say no. If something happens to
your data, grin and bear it!</para>
<para>If your time and your data is worth little to nothing, then
&ldquo;Do nothing&rdquo; is the most suitable backup program for your
computer. But beware, Unix is a useful tool, you may find that within
six months you have a collection of files that are valuable to
you.</para>
<para>&ldquo;Do nothing&rdquo; is the correct backup method for
<filename>/usr/obj</filename> and other directory trees that can be
exactly recreated by your computer. An example is the files that
comprise these handbook pages-they have been generated from
<acronym>SGML</acronym> input files. Creating backups of these
<acronym>HTML</acronym> files is not necessary. The
<acronym>SGML</acronym> source files are backed up regularly.</para>
</sect2>
<sect2>
<title>Which Backup Program is Best?</title>
<para><citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> <emphasis>Period.</emphasis>
Elizabeth D. Zwicky torture tested all the backup programs discussed
here. The clear choice for preserving all your data and all the
peculiarities of Unix filesystems is <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>. Elizabeth created
filesystems containing a large variety of unusual conditions (and some
not so unusual ones) and tested each program by do a backup and
restore of that filesystems. The peculiarities included: files with
holes, files with holes and a block of nulls, files with funny
characters in their names, unreadable and unwritable files, devices,
files that change size during the backup, files that are
created/deleted during the backup and more. She presented the results
at LISA V in Oct. 1991. See <ulink
url="http://reality.sgi.com/zwicky_neu/testdump.doc.html">torture-testing Backup and Archive Programs</ulink>.</para>
</sect2>
<sect2>
<title>Emergency Restore Procedure</title>
<sect3>
<title>Before the Disaster</title>
<para>There are only four steps that you need to perform in
preparation for any disaster that may occur.</para>
<para>First, print the disklabel from each of your disks
(<command>e.g. disklabel sd0 | lpr</command>), your filesystem table
(<command>/etc/fstab</command>) and all boot messages, two copies of
each.</para>
<para>Second, determine that the boot and fixit floppies
(<filename>boot.flp</filename> and <filename>fixit.flp</filename>)
have all your devices. The easiest way to check is to reboot your
machine with the boot floppy in the floppy drive and check the boot
messages. If all your devices are listed and functional, skip on to
step three.</para>
<para>Otherwise, you have to create two custom bootable floppies
which has a kernel that can mount your all of your disks and
access your tape drive. These floppies must contain:
<citerefentry>
<refentrytitle>fdisk</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>disklabel</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>newfs</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, <citerefentry>
<refentrytitle>mount</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, and whichever backup
program you use. These programs must be statically linked. If you
use <citerefentry>
<refentrytitle>dump</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>, the floppy must contain
<citerefentry>
<refentrytitle>restore</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>.</para>
<para>Third, create backup tapes regularly. Any changes that you make
after your last backup may be irretrievably lost. Write-protect the
backup tapes.</para>
<para>Fourth, test the floppies (either <filename>boot.flp</filename>
and <filename>fixit.flp</filename> or the two custom bootable
floppies you made in step two.) and backup tapes. Make notes of the
procedure. Store these notes with the bootable floppy, the printouts
and the backup tapes. You will be so distraught when restoring that
the notes may prevent you from destroying your backup tapes (How?
In place of <command>tar xvf /dev/rst0</command>, you might
accidently type <command>tar cvf /dev/rst0</command> and over-write
your backup tape).</para>
<para>For an added measure of security, make bootable floppies and two
backup tapes each time. Store one of each at a remote location. A
remote location is NOT the basement of the same office building. A
number of firms in the World Trade Center learned this lesson the
hard way. A remote location should be physically separated from your
computers and disk drives by a significant distance.</para>
<para>An example script for creating a bootable floppy:</para>
<programlisting>
<![ CDATA [#!/bin/sh
#
# create a restore floppy
#
# format the floppy
#
PATH=/bin:/sbin:/usr/sbin:/usr/bin
fdformat -q fd0
if [ $? -ne 0 ]
then
echo "Bad floppy, please use a new one"
exit 1
fi
# place boot blocks on the floppy
#
disklabel -w -B -b /usr/mdec/fdboot -s /usr/mdec/bootfd /dev/rfd0c fd1440
#
# newfs the one and only partition
#
newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/rfd0a
#
# mount the new floppy
#
mount /dev/fd0a /mnt
#
# create required directories
#
mkdir /mnt/dev
mkdir /mnt/bin
mkdir /mnt/sbin
mkdir /mnt/etc
mkdir /mnt/root
mkdir /mnt/mnt # for the root partition
mkdir /mnt/tmp
mkdir /mnt/var
#
# populate the directories
#
if [ ! -x /sys/compile/MINI/kernel ]
then
cat << EOM
The MINI kernel does not exist, please create one.
Here is an example config file:
#
# MINI -- A kernel to get FreeBSD on onto a disk.
#
machine "i386"
cpu "I486_CPU"
ident MINI
maxusers 5
options INET # needed for _tcp _icmpstat _ipstat
# _udpstat _tcpstat _udb
options FFS #Berkeley Fast File System
options FAT_CURSOR #block cursor in syscons or pccons
options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device
options NCONS=2 #1 virtual consoles
options USERCONFIG #Allow user configuration with -c XXX
config kernel root on sd0 swap on sd0 and sd1 dumps on sd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller ncr0
controller scbus0
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
device sd0
device sd1
device sd2
device st0
pseudo-device loop # required by INET
pseudo-device gzip # Exec gzipped a.out's
EOM
exit 1
fi
cp -f /sys/compile/MINI/kernel /mnt
gzip -c -best /sbin/init > /mnt/sbin/init
gzip -c -best /sbin/fsck > /mnt/sbin/fsck
gzip -c -best /sbin/mount > /mnt/sbin/mount
gzip -c -best /sbin/halt > /mnt/sbin/halt
gzip -c -best /sbin/restore > /mnt/sbin/restore
gzip -c -best /bin/sh > /mnt/bin/sh
gzip -c -best /bin/sync > /mnt/bin/sync
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV sd0
./MAKEDEV sd1
./MAKEDEV sd2
./MAKEDEV st0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat > /mnt/etc/fstab <<EOM
/dev/fd0a / ufs rw 1 1
EOM
#
# create minimum passwd file
#
cat > /mnt/etc/passwd <<EOM
root:*:0:0:Charlie &:/root:/bin/sh
EOM
cat > /mnt/etc/master.passwd <<EOM
root::0:0::0:0:Charlie &:/root:/bin/sh
EOM
chmod 600 /mnt/etc/master.passwd
chmod 644 /mnt/etc/passwd
/usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd
#
# umount the floppy and inform the user
#
/sbin/umount /mnt]]></programlisting>
</sect3>
<sect3>
<title>After the Disaster</title>
<para>The key question is: did your hardware survive? You have been
doing regular backups so there is no need to worry about the
software.</para>
<para>If the hardware has been damaged. First, replace those parts
that have been damaged.</para>
<para>If your hardware is okay, check your floppies. If you are using
a custom boot floppy, boot single-user (type <literal>-s</literal>
at the <prompt>boot:</prompt> prompt). Skip the following
paragraph.</para>
<para>If you are using the <filename>boot.flp</filename> and
<filename>fixit.flp</filename> floppies, keep reading. Insert the
<filename>boot.flp</filename> floppy in the first floppy drive and
boot the computer. The original install menu will be displayed on
the screen. Select the <literal>Fixit--Repair mode with CDROM or
floppy.</literal> option. Insert the
<filename>fixit.flp</filename> when prompted.
<command>restore</command> and the other programs that you need are
located in <filename>/mnt2/stand</filename>.</para>
<para>Recover each filesystem separately.</para>
<para>Try to <citerefentry>
<refentrytitle>mount</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry>(e.g. <command>mount /dev/sd0a
/mnt</command>) the root partition of your first disk. If the
disklabel was damaged, use <citerefentry>
<refentrytitle>disklabel</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> to re-partition and
label the disk to match the label that your printed and saved. Use
<citerefentry>
<refentrytitle>newfs</refentrytitle>
<manvolnum>8</manvolnum></citerefentry> to re-create the
filesystems. Re-mount the root partition of the floppy read-write
(<command>mount -u -o rw /mnt</command>). Use your backup program
and backup tapes to recover the data for this filesystem (e.g.
<command>restore vrf /dev/st0</command>). Unmount the filesystem
(e.g. <command>umount /mnt</command>) Repeat for each filesystem
that was damaged.</para>
<para>Once your system is running, backup your data onto new tapes.
Whatever caused the crash or data loss may strike again. An another
hour spent now, may save you from further distress later.</para>
</sect3>
<sect3>
<title>* I did not prepare for the Disaster, What Now?</title>
<para></para>
</sect3>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../handbook.sgml" "part" "chapter")
End:
-->

View file

@ -49,7 +49,11 @@
<ulink URL="http://www.ascii.co.jp/">ASCII</ulink>. ISBN
4-7561-1580-2 P3800E.</para>
</listitem>
<listitem>
<para>FreeBSD mit Methode (in German), publiched by Computer und
Literatur Verlag/Vertrieb Hanser, 1998. ISBN 3-93211-31-0.</para>
</listitem>
</itemizedlist>
@ -151,7 +155,7 @@
<listitem>
<para>Nemeth, Evi. <emphasis>UNIX System Administration
Handbook</emphasis>. 2nd ed. Prentice Hall, 1995. <!-- <br>
Handbook</emphasis>. 2nd Ed. Prentice Hall, 1995. <!-- <br>
--> ISBN 0131510517</para>
</listitem>
@ -190,12 +194,6 @@
<!-- <br> --> ISBN 1-56592-079-1</para>
</listitem>
<listitem>
<para>Ellis, Margaret A. and Stroustrup, Bjarne. <emphasis>The
Annotated C++ Reference Manual</emphasis>. Addison-Wesley,
1990. <!-- <br> --> ISBN 0-201-51459-1</para>
</listitem>
<listitem>
<para>Harbison, Samuel P. and Steele, Guy L. Jr. <emphasis>C: A
Reference Manual</emphasis>. 4rd ed. Prentice Hall, 1995.
@ -209,7 +207,7 @@
</listitem>
<listitem>
<para>Lehey, Greg. <emphasis>Port UNIX Software</emphasis>.
<para>Lehey, Greg. <emphasis>Porting UNIX Software</emphasis>.
O'Reilly &amp; Associates, Inc., 1995.<!-- <br> --> ISBN
1-56592-126-7</para>
</listitem>
@ -226,11 +224,11 @@
Addison-Wesley, 1992<!-- <br> --> ISBN 0-201-56317-7</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>UNIX Network
Programming</emphasis>. PTR Prentice Hall, 1990. <!-- <br>
--> ISBN 0-13-949876-1</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>UNIX Network
Programming</emphasis>. 2nd Ed, PTR Prentice Hall, 1998. ISBN
0-13-490012-X</para>
</listitem>
<listitem>
<para>Wells, Bill. &ldquo;Writing Serial Drivers for UNIX&rdquo;.
@ -288,7 +286,13 @@
1: The Protocols</emphasis>. Reading, Mass. :
Addison-Wesley, 1996.<!-- <br> --> ISBN 0-201-63346-9</para>
</listitem>
<listitem>
<para>Schimmel, Curt. <emphasis>Unix Systems for Modern
Architectures</emphasis>. Reading, Mass. : Addison-Wesley,
1994. ISBN 0-201-63338-8</para>
</listitem>
<listitem>
<para>Stevens, W. Richard. <emphasis>TCP/IP Illustrated, Volume
3: TCP for Transactions, HTTP, NNTP and the UNIX Domain
@ -322,7 +326,7 @@
<listitem>
<para>Cheswick, William R. and Steven M. Bellovin.
<emphasis>Firewalls and Internal Security: Repelling the Wily
<emphasis>Firewalls and Internet Security: Repelling the Wily
Hacker</emphasis>. Reading, Mass. : Addison-Wesley,
1995.<!-- <br> --> ISBN 0-201-63357-4</para>
</listitem>
@ -352,7 +356,7 @@
<listitem>
<para>Anderson, Don and Tom Shanley. <emphasis>Pentium Processor
System Architecture</emphasis>. 2nd ed. Reading, Mass. :
System Architecture</emphasis>. 2nd Ed. Reading, Mass. :
Addison-Wesley, 1995.<!-- <br> --> ISBN 0-201-40992-5</para>
</listitem>
@ -362,7 +366,14 @@
Mass. : Addison-Wesley, 1995.<!-- <br> --> ISBN
0-201-62490-7</para>
</listitem>
<listitem>
<para>Intel Corporation publishes documentation on their CPUs,
chipsets and standards on their <ulink
url="http://developer.intel.com/">developer web site</ulink>,
usually as PDF files.</para>
</listitem>
<listitem>
<para>Shanley, Tom. <emphasis>80486 System
Architecture</emphasis>. 3rd ed. Reading, Mass. :
@ -433,7 +444,7 @@
<listitem>
<para><emphasis>The BSD family tree</emphasis>. 1997.<!-- <br>
--> <ulink
URL="http://www.de.freebsd.org/de/ftp/unix-stammbaum">http://www.de.freebsd.org/de/ftp/unix-stammbaum</ulink> or <ulink URL="file:/usr/share/misc/bsd-family-tree">local</ulink> on a FreeBSD-current machine.</para>
url="ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree">ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree</ulink> or <ulink URL="file:/usr/share/misc/bsd-family-tree">local</ulink> on a FreeBSD-current machine.</para>
</listitem>
<listitem>
@ -447,7 +458,12 @@
Library</emphasis>.<!-- <br> --> <ulink
URL="http://www.ncstrl.org/">http://www.ncstrl.org/</ulink></para>
</listitem>
<listitem>
<para><emphasis>Old BSD releases from the Computer Systems Research
group (CSRG)</emphasis>. <ulink
url="http://www.mckusick.com/csrg/">http://www.mckusick.com/csrg/</ulink>: The 4CD set covers all BSD versions from 1BSD to 4.4BSD and 4.4BSD-Lite2 (but not 2.11BSD, unfortunately). As well, the last disk holds the final sources plus the SCCS files.</para>
</listitem>
</itemizedlist>

View file

@ -3,7 +3,7 @@
<!ENTITY % authors SYSTEM "authors.ent"> %authors;
<!ENTITY % mailing-lists SYSTEM "mailing-lists.ent"> %mailing-lists;
<!ENTITY rel.current CDATA "2.2.6">
<!ENTITY rel.current CDATA "3.0">
]>
<book>
@ -16,7 +16,7 @@
</author>
</authorgroup>
<pubdate>March 1998</pubdate>
<pubdate>July 1998</pubdate>
<copyright>
<year>1995</year>
@ -35,11 +35,12 @@
with this project, send email to the &a.doc; The latest version of
this document is always available from the <ulink
URL="http://www.FreeBSD.ORG/">FreeBSD World Wide Web server</ulink>.
It may also be downloaded in plain text, postscript or HTML from the
<ulink URL="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs">FreeBSD FTP
server</ulink> or one of the numerous <link
It may also be downloaded in <ulink url="handbook.latin1">plain
text</ulink>, <ulink url="handbook.ps">postscript</ulink> or <ulink
url="handbook-html.tar.gz">HTML</ulink> with HTTP or gzip'd from the <ulink
url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs/">FreeBSD FTP server</ulink> or one of the numerous <link
linkend="mirrors-ftp">mirror sites</link>. You may also want to
<ulink URL="/search.html">Search the Handbook</ulink>.</para>
<ulink URL="http://www.FreeBSD.ORG/search.html">Search the Handbook</ulink>.</para>
</abstract>
</bookinfo>
@ -58,6 +59,8 @@
&chap.kernelconfig;
&chap.security;
&chap.printing;
&chap.disks;
&chap.backups;
&chap.quotas;
&chap.x11;
&chap.hw;

View file

@ -6,7 +6,7 @@
Chapters should be listed in the order in which they are referenced.
$Id: chapters.ent,v 1.2 1998-11-04 22:38:06 nik Exp $
$Id: chapters.ent,v 1.3 1998-11-12 01:26:17 nik Exp $
-->
<!-- Part one -->
@ -19,6 +19,8 @@
<!ENTITY chap.kernelconfig SYSTEM "kernelconfig/chapter.sgml">
<!ENTITY chap.security SYSTEM "security/chapter.sgml">
<!ENTITY chap.printing SYSTEM "printing/chapter.sgml">
<!ENTITY chap.disks SYSTEM "disks/chapter.sgml">
<!ENTITY chap.backups SYSTEM "backups/chapter.sgml">
<!ENTITY chap.quotas SYSTEM "quotas/chapter.sgml">
<!ENTITY chap.x11 SYSTEM "x11/chapter.sgml">
<!ENTITY chap.hw SYSTEM "hw/chapter.sgml">

File diff suppressed because it is too large Load diff

View file

@ -359,10 +359,13 @@ subscribe freebsd-stable</programlisting> In the body of your
<para>There are various ways of using an Internet (or email)
connection to stay up-to-date with any given area of the FreeBSD
project sources, or all areas, depending on what interests you. The
primary services we offer are <application>CVSup</application> and <application>CTM</application>.</para>
primary services we offer are <link linkend="anoncvs">Anonymous
CVS</link>, <link linkend="cvsup">CVSup</link>, and
<link linkend="ctm">CTM</link>.</para>
<para><application>CVSup</application> uses the
<emphasis>pull</emphasis> model of updating. The user (or a cron
<para><application>Anonymous CVS</application> and <application>CVSup</application> use the
<emphasis>pull</emphasis> model of updating sources. In the case of
<application>CVSup</application> the user (or a cron
script) invokes the <command>cvsup</command> program, and
it interacts with a <command>cvsupd</command> server
somewhere to bring your files up to date. The updates you receive
@ -370,14 +373,21 @@ subscribe freebsd-stable</programlisting> In the body of your
them. You can easily restrict your updates to the specific files or
directories that are of interest to you. Updates are generated on
the fly by the server, according to what you have and what you want
to have.</para>
to have. <application>Anonymous CVS</application> is quite a bit more simplistic
than CVSup in that it's just an extension to
<application>CVS</application> which allows it to pull changes
directly from a remote CVS
repository. <application>CVSup</application> can do this far more
efficiently, but <application>Anonymous CVS</application> is easier to
use.</para>
<para><application>CTM</application>, on the other hand, does not
interactively compare the sources you have with those on the master
archive. Instead, a script which identifies changes in files since
its previous run is executed several times a day on the master
archive, any detected changes being compressed, stamped with a
sequence-number and encoded for transmission over email (printable
archive or otherwise pull them across.. Instead, a script which identifies changes in files since
its previous run is executed several times a day on the master CTM
machine,
any detected changes being compressed, stamped with a
sequence-number and encoded for transmission over email (in printable
ASCII only). Once received, these &ldquo;CTM deltas&rdquo; can then be handed
to the <citerefentry><refentrytitle>ctm_rmail</refentrytitle><manvolnum>1</manvolnum></citerefentry> utility which will automatically decode, verify
and apply the changes to the user's copy of the sources. This
@ -390,12 +400,313 @@ subscribe freebsd-stable</programlisting> In the body of your
damaged portions for you. <application>CTM</application> won't do this, and if you wipe some
portion of your source tree out (and don't have it backed up) then
you will have to start from scratch (from the most recent CVS &ldquo;base
delta&rdquo;) and rebuild it all.</para>
delta&rdquo;) and rebuild it all with CTM or, with anoncvs, simply
delete the bad bits and resync.</para>
<para>For more information on <application>CTM</application> and <application>CVSup</application>, please see one of the
<para>For more information on <application>Anonymous CVS</application>, <application>CTM</application>, and <application>CVSup</application>, please see one of the
following sections:</para>
<sect2 id="anoncvs">
<title>Anonymous CVS</title>
<para><emphasis>Contributed by &a.jkh;</emphasis></para>
<sect3>
<title><anchor id="anoncvs-intro">Introduction</title>
<para>Anonymous CVS (or, as it is otherwise known,
<emphasis>anoncvs</emphasis>) is a feature provided by the CVS
utilities bundled with FreeBSD for synchronizing with a remote CVS
repository. Among other things, it allows users of FreeBSD to
perform, with no special privileges, read-only CVS operations
against one of the FreeBSD project's official anoncvs servers. To
use it, one simply sets the <envar>CVSROOT</envar> environment
variable to point at the appropriate anoncvs server and then uses
the <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> command to access it like any local
repository.</para>
<para>While it can also be said that the <link
linkend="cvsup">CVSup</link> and <emphasis>anoncvs</emphasis>
services both perform essentially the same function, there are
various trade-offs which can influence the user's choice of
synchronization methods. In a nutshell,
<application>CVSup</application> is much more efficient in its
usage of network resources and is by far the most technically
sophisticated of the two, but at a price. To use
<application>CVSup</application>, a special client must first be
installed and configured before any bits can be grabbed, and then
only in the fairly large chunks which
<application>CVSup</application> calls
<emphasis>collections</emphasis>.</para>
<para><application>Anoncvs</application>, by contrast, can be used
to examine anything from an individual file to a specific program
(like <command>ls</command> or <command>grep</command>) by
referencing the CVS module name. Of course,
<application>anoncvs</application> is also only good for read-only
operations on the CVS repository, so if it's your intention to
support local development in one repository shared with the
FreeBSD project bits then <application>CVSup</application> is
really your only option.</para>
</sect3>
<sect3>
<title><anchor id="anoncvs-usage">Using Anonymous CVS</title>
<para>Configuring <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> to use an Anonymous CVS repository is a simple
matter of setting the <envar>CVSROOT</envar> environment variable
to point to one of the FreeBSD project's
<emphasis>anoncvs</emphasis> servers. At the time of this writing,
the following servers are available:</para>
<itemizedlist>
<listitem>
<para><emphasis>USA</emphasis>:
anoncvs@anoncvs.freebsd.org:/cvs</para>
</listitem>
</itemizedlist>
<para>Since CVS allows one to &ldquo;check out&rdquo; virtually any
version of the FreeBSD sources that ever existed (or, in some
cases, will exist <!-- smiley -->:), you need to be familiar with
the revision (<option>-r</option>) flag to <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> and what some of the permissible values for it in
the FreeBSD Project repository are.</para>
<para>There are two kinds of tags, revision tags and branch tags. A
revision tag refers to a specific revision. Its meaning stays the
same from day to day. A branch tag, on the other hand, refers to
the latest revision on a given line of development, at any given
time. Because a branch tag does not refer to a specific revision,
it may mean something different tomorrow than it means
today.</para>
<para>Here are the branch tags that users might be interested
in:</para>
<variablelist>
<varlistentry>
<term>HEAD</term>
<listitem>
<para>Symbolic name for the main line, or FreeBSD-current.
Also the default when no revision is
specified.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2</term>
<listitem>
<para>The line of development for FreeBSD-2.2.x, also known as
FreeBSD-stable. Not valid for the ports collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_0</term>
<listitem>
<para>The line of development for FreeBSD-2.1.x - this branch
is largely obsolete. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Here are the revision tags that users might be interested
in:</para>
<variablelist>
<varlistentry>
<term>RELENG_2_2_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.6. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_5_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.5. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_2_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.2. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_1_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.1. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_2_0_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.0. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_7_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.7. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_6_1_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.6.1. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.6. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_5_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.5. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RELENG_2_1_0_RELEASE</term>
<listitem>
<para>FreeBSD-2.1.0. Not valid for the ports
collection.</para>
</listitem>
</varlistentry>
</variablelist>
<para>When you specify a branch tag, you normally receive the latest
versions of the files on that line of development. If you wish to
receive some past version, you can do so by specifying a date with
the <option>-D date</option> flag. See the <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> man page for more details.</para>
</sect3>
<sect3>
<title>Examples</title>
<para>While it really is recommended that you read the manual page
for <citerefentry>
<refentrytitle>cvs</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> thoroughly before doing
anything, here are some quick examples which essentially show how
to use Anonymous CVS:</para>
<example>
<title>Checking out something from -current (<citerefentry>
<refentrytitle>ls</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>) and deleting it
again:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co ls</userinput>
&prompt.user; <userinput>cvs release -d ls</userinput></screen>
</example>
<example>
<title>Checking out the version of ls(1) in the 2.2-stable
branch:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co -rRELENG_2_2 ls</userinput>
&prompt.user; <userinput>cvs release -d ls</userinput></screen>
</example>
<example>
<title>Creating a list of changes (as unidiffs) to <citerefentry>
<refentrytitle>ls</refentrytitle>
<manvolnum>1</manvolnum></citerefentry> between FreeBSD 2.2.2
and FreeBSD 2.2.6:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs rdiff -u -rRELENG_2_2_2_RELEASE -rRELENG_2_2_6_RELEASE ls</userinput></screen>
</example>
<example>
<title>Finding out what other module names can be used:</title>
<screen>
&prompt.user; <userinput>setenv CVSROOT anoncvs@anoncvs.freebsd.org:/cvs</userinput>
&prompt.user; <userinput>cvs co modules</userinput>
&prompt.user; <userinput>more modules/modules</userinput>
&prompt.user; <userinput>cvs release -d modules</userinput></screen>
</example>
</sect3>
<sect3>
<title>Other Resources</title>
<para>The following additional resources may be helpful in learning
CVS:</para>
<itemizedlist>
<listitem>
<para><ulink
url="http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/cvs/">CVS Tutorial</ulink> from Cal Poly.</para>
</listitem>
<listitem>
<para><ulink url="http://www.cyclic.com">Cyclic
Software</ulink>, commercial maintainers of CVS.</para>
</listitem>
<listitem>
<para><ulink
url="http://www.freebsd.org/cgi/cvsweb.cgi">CVSWeb</ulink>
is the FreeBSD Project web interface for CVS.</para>
</listitem>
</itemizedlist>
</sect3>
</sect2>
<sect2 id="ctm">
<title><application>CTM</application></title>
@ -511,23 +822,27 @@ subscribe freebsd-stable</programlisting> In the body of your
produced subsequently to it.</para>
<para>First you should determine what you already have. Everyone
can start from an &ldquo;empty&rdquo; directory. However, since the trees
can start from an &ldquo;empty&rdquo; directory. You must use an
initial &ldquo;Empty&rdquo delta to start off your
<application>CTM</application> supported tree. At some point it is
intended that one of these &ldquo;started&rdquo; deltas be
distributed on the CD for your convenience. This does not
currently happen however.</para>
<para>You can recognize
However, since the trees
are many tens of megabytes, you should prefer to start from
something already at hand. If you have a RELEASE CD, you can
copy or extract an initial source from it. This will save a
significant transfer of data.</para>
<para>Once you identify a suitable starting point, you must use an
initial &ldquo;transition&rdquo; delta to transform your starting point
into a <application>CTM</application> supported tree.</para>
<para>You can recognize these transition deltas by the
<para>You can recognize these &ldquo;starter&rdquo; deltas by the
<literal>X</literal> appended to the number
(<filename>src-cur.3210XEmpty.gz</filename> for instance). The
designation following the <filename>X</filename>
corresponds to the origin of your initial &ldquo;seed&rdquo;. <filename>Empty</filename> is
an empty directory, <filename>R225</filename> would designate the 2.2.5 release,
etc. As a rule a base transition from <filename>Empty</filename> is producted
an empty directory. As a rule a base transition from
<filename>Empty</filename> is produced
every 100 deltas. By the way, they are large! 25 to 30
Megabytes of <command>gzip</command>'ed data is
common for the <filename>XEmpty</filename> deltas.</para>
@ -791,7 +1106,7 @@ subscribe freebsd-stable</programlisting> In the body of your
<para>The easiest way to install <application>CVSup</application> if you are running FreeBSD
2.2 or later is to use either <ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/ports-current/net/cvsup.tar">the port</ulink> from the FreeBSD <link linkend="ports">ports collection</link> or the corresponding <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages-current/net/cvsup-15.3.tgz">binary package</ulink>, depending on whether you prefer to roll your own or not.</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/ports-current/net/cvsup.tar">the port</ulink> from the FreeBSD <link linkend="ports">ports collection</link> or the corresponding <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages-current/net/cvsup-15.4.2.tgz">binary package</ulink>, depending on whether you prefer to roll your own or not.</para>
<para>If you are running FreeBSD-2.1.6 or 2.1.7, you unfortunately
cannot use the binary package versions due to the fact that it
@ -813,24 +1128,25 @@ subscribe freebsd-stable</programlisting> In the body of your
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.3.tar.gz</ulink> (client including GUI).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup-bin-15.4.2.tar.gz</ulink> (client including GUI).</para>
</listitem>
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.3.tar.gz</ulink> (client without GUI).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsup.nogui-bin-15.4.2.tar.gz</ulink> (client without GUI).</para>
</listitem>
<listitem>
<para><ulink
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.3.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.3.tar.gz</ulink> (server).</para>
URL="ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.4.2.tar.gz">ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupd-bin-15.4.2.tar.gz</ulink> (server).</para>
</listitem>
</itemizedlist>
<para>or the German mirror:</para>
<para>as well as from the many FreeBSD <link
linkend="mirrors-ftp">FTP mirror sites</link> around the
world.</para>
<itemizedlist>
@ -1066,6 +1382,24 @@ cvs-crypto</programlisting>
<variablelist>
<varlistentry>
<term>tag=RELENG_3_0_0_RELEASE</term>
<listitem>
<para>FreeBSD-3.0. Not valid for the ports-*
collections.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>tag=RELENG_2_2_7_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.7. Not valid for the ports-*
collections.</para>
</listitem>
</varlistentry>
<varlistentry><term>tag=RELENG_2_2_6_RELEASE</term>
<listitem>
<para>FreeBSD-2.2.6. Not valid for the ports-*
@ -1521,7 +1855,17 @@ cvs-crypto</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term><literal></literal>ports-deskutils
release=cvs</term>
<listitem>
<para>Things that used to be on the desktop before
computers were invented.</para>
</listitem>
</varlistentry>
<varlistentry><term><literal>ports-devel
release=cvs</literal></term>
@ -1746,10 +2090,54 @@ cvs-crypto</programlisting>
release=cvs</literal></term>
<listitem>
<para>X11 software.</para>
<para>Ports to support the X window
system.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-clocks
release=cvs</literal></term>
<listitem>
<para>X11 clocks.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-fm
release=cvs</literal></term>
<listitem>
<para>X11 file managers.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-fonts
release=cvs</literal></term>
<listitem>
<para>X11 fonts and font utilities.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-toolkits
release=cvs</literal></term>
<listitem>
<para>X11 toolkits.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>ports-x11-wm</literal></term>
<listitem>
<para>X11 window managers.</para>
</listitem>
</varlistentry>
</variablelist>

View file

@ -0,0 +1,165 @@
<chapter id="disks">
<title>Disks</title>
<para><emphasis>Contributed by &a.obrien; 26 April 1998</emphasis></para>
<para>Lets say we want to add a new SCSI disk to a machine that currently
only has a single drive. First turn off the computer and install the
drive in the computer following the instructions of the computer,
controller, and drive manufacturer. Due the wide variations of procedures
to do this, the details are beyond the scope of this document.</para>
<para>Login as user <username>root</username>. After you've installed the
drive, inspect <filename>/var/run/dmesg.boot</filename> to ensure the new
disk was found. Continuing with our example, the newly added drive will be
<filename>sd1</filename> and we want to mount it on
<filename>/1</filename>. (if you are adding an IDE drive substitute
<filename>wd</filename> for <filename>sd</filename>)</para>
<para>Because FreeBSD runs on IBM-PC compatible computers, it must take into
account the PC BIOS partitions. These are different from the traditional
BSD partitions. A PC disk has up to four BIOS partition entries. If the
disk is going to be truly dedicated to FreeBSD, you can use the
<emphasis>dedicated</emphasis> mode. Otherwise, FreeBSD will have to live
with in one of the PC BIOS partitions. FreeBSD calls the PC BIOS
partitions, <emphasis>slices</emphasis> so as not to confuse them with
traditional BSD partitions. You may also use slices on a disk that is
dedicated to FreeBSD, but used in a computer that also has another
operating system installed. This is to not confuse the
<command>fdisk</command> utility of the other operating system.</para>
<para>In the slice case the drive will be added as
<filename>/dev/sd1s1e</filename>. This is read as: SCSI disk, unit number
1 (second SCSI disk), slice 1 (PC BIOS partition 1), and
<filename>e</filename> BSD partition. In the dedicated case, the drive
will be added simply as <filename>/dev/sd1e</filename>.</para>
<sect1>
<title>Using sysinstall</title>
<para> You may use <command>/stand/sysinstall</command> to partition and
label a new disk using its easy to use menus. Either login as user
<username>root</username> or use the <command>su</command> command. Run
<command>/stand/sysinstall</command> and enter the
<literal>Configure</literal> menu. With in the <literal>FreeBSD
Configuration Menu</literal>, scroll down and select the
<literal>Partition</literal> item. Next you should be presented with a
list of hard drives installed in your system. If you do not see
<literal>sd1</literal> listed, you need to recheck your physical
installation and <command>dmesg</command> output in the file
<filename>/var/run/dmesg.boot</filename>.</para>
<para>Select <literal>sd1</literal> to enter the <literal>FDISK Partition
Editor</literal>. Choose <literal>A</literal> to use the entire disk
for FreeBSD. When asked if you want to <quote>remain cooperative with
any future possible operating systems</quote>, answer
<literal>YES</literal>. Write the changes to the disk using
<command>W</command>. Now exit the FDISK editor using
<command>q</command>. Next you will be asked about the Master Boot
Record. Since you are adding a disk to an already running system, choose
<literal>None</literal>.</para>
<para>Next enter the <literal>Disk Label Editor</literal>. This is where
you will create the traditional BSD partitions. A disk can have up to
eight partitions, labeled a-h. A few of the partition labels have
special uses. The <literal>a</literal> partition is used for the root
partition (<filename>/</filename>). Thus only your system disk (e.g, the
disk you boot from) should have an <literal>a</literal> partition. The
<literal>b</literal> partition is used for swap partitions, and you may
have many disks with swap partitions. The <literal>c</literal> partition
addresses the entire disk in dedicated mode, or the entire FreeBSD slice
in slice mode. The other partitions are for general use.</para>
<para>Sysinstall's Label editor favors the <literal>e</literal> partition
for non-root, non-swap partitions. With in the Label editor, create a
single file system using <command>C</command>. When prompted if this
will be a FS (file system) or swap, choose <literal>FS</literal> and
give a mount point (e.g, <filename>/mnt</filename>). When adding a disk
in post-install mode, Sysinstall will not create entries in
<filename>/etc/fstab</filename> for you, so the mount point you specify
isn't important.</para>
<para>You are now ready to write the new label to the disk and create a
file system on it. Do this by hitting <command>W</command>. Ignore any
errors from Sysinstall that it could not mount the new partition. Exit
the Label Editor and Sysinstall completely.</para>
<para>The last step is to edit <filename>/etc/fstab</filename> to add an
entry for your new disk.</para>
</sect1>
<sect1>
<title>Using command line utilities</title>
<sect2>
<title>* Using Slices</title>
<para></para>
</sect2>
<sect2>
<title>Dedicated</title>
<para>If you will not be sharing the new drive with another operating
system, you may use the <literal>dedicated</literal> mode. Remember
this mode can confuse Microsoft operating systems; however, no damage
will be done by them. IBM's OS/2 however, will
&ldquo;appropriate&rdquo; any partition it finds which it doesn't
understand.</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rsd1 bs=1k count=1</userinput>
&prompt.root; <userinput>disklabel -Brw sd1 auto</userinput>
&prompt.root; <userinput>disklabel -e sd</userinput>1 # create the `e' partition
&prompt.root; <userinput>newfs -d0 /dev/rsd1e</userinput>
&prompt.root; <userinput>mkdir -p /1</userinput>
&prompt.root; <userinput>vi /etc/fstab</userinput> # add an entry for /dev/sd1e
&prompt.root; <userinput>mount /1</userinput></screen>
</informalexample>
<para>An alternate method is:</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rsd1 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/rsd1 | disklabel -BrR sd1 /dev/stdin</userinput>
&prompt.root; <userinput>newfs /dev/rsd1e</userinput>
&prompt.root; <userinput>mkdir -p /1</userinput>
&prompt.root; <userinput>vi /etc/fstab</userinput> # add an entry for /dev/sd1e
&prompt.root; <userinput>mount /1</userinput></screen>
</informalexample>
</sect2>
</sect1>
<sect1>
<title>* Non-traditional Drives</title>
<sect2>
<title>* Zip Drives</title>
<para></para>
</sect2>
<sect2>
<title>* Jazz Drives</title>
<para></para>
</sect2>
<sect2>
<title>* Sequest Drives</title>
<para></para>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../handbook.sgml" "part" "chapter")
End:
-->

View file

@ -49,7 +49,7 @@
<title>List summary</title>
<para><emphasis>General lists:</emphasis> The following are
general lists which anyone is free to join:</para>
general lists which anyone is free (and encouraged) to join:</para>
<informaltable frame="none">
<tgroup cols="2">
@ -61,6 +61,11 @@
</thead>
<tbody>
<row>
<entry>freebsd-advocacy</entry>
<entry>FreeBSD Evangelism</entry>
</row>
<row>
<entry>freebsd-announce</entry>
<entry>Important events and project milestones</entry>
@ -101,6 +106,11 @@
opportunities</entry>
</row>
<row>
<entry>freebsd-newbies</entry>
<entry>New FreeBSD users activities and discussions</entry>
</row>
<row>
<entry>freebsd-questions</entry>
<entry>User questions</entry>
@ -139,6 +149,12 @@
<entry>The FreeBSD Documentation project</entry>
</row>
<row>
<entry>freebsd-database</entry>
<entry>Discussing database use and development under
FreeBSD</entry>
</row>
<row>
<entry>freebsd-emulation</entry>
<entry>Emulation of other systems such as
@ -178,10 +194,15 @@
</row>
<row>
<entry>freebsd-multimedia</entry>
<entry>Multimedia discussion</entry>
<entry>freebsd-mozilla</entry>
<entry>Porting mozilla to FreeBSD</entry>
</row>
<row>
<entry>freebsd-net</entry>
<entry>Networking discussion and TCP/IP/source code</entry>
</row>
<row>
<entry>freebsd-platforms</entry>
<entry>Concerning ports to non-Intel architecture
@ -203,6 +224,11 @@
<entry>Security issues</entry>
</row>
<row>
<entry>freebsd-small</entry>
<entry>Using FreeBSD in embedded applications</entry>
</row>
<row>
<entry>freebsd-smp</entry>
<entry>Design discussions for [A]Symmetric
@ -213,6 +239,11 @@
<entry>freebsd-sparc</entry>
<entry>Porting FreeBSD to Sparc systems</entry>
</row>
<row>
<entry>freebsd-tokenring</entry>
<entry>Support Token Ring in FreeBSD</entry>
</row>
</tbody>
</tgroup>
</informaltable>
@ -540,7 +571,7 @@ help
milestones</emphasis></para>
<para>This is the mailing list for people interested only
in occasional announcements of significant freebsd events.
in occasional announcements of significant FreeBSD events.
This includes announcements about snapshots and other
releases. It contains announcements of new FreeBSD
capabilities. It may contain calls for volunteers etc.
@ -555,10 +586,39 @@ help
<para><emphasis>Architecture and design
discussions</emphasis></para>
<para>This is the mailing
list for people discussing FreeBSD architectural issues.
It is a closed list, and not for general
subscription.</para>
<para>This is a moderated list for discussion of FreeBSD
architecture. Messages will mostly be kept technical in
nature, with (rare) exceptions for other messages the
moderator deems need to reach all the subscribers of the
list. Examples of suitable topics;</para>
<itemizedlist>
<listitem>
<para>How to re-vamp the build system to have several
customized builds running at the same time.</para>
</listitem>
<listitem>
<para>What needs to be fixed with VFS to make Heidemann
layers work.</para>
</listitem>
<listitem>
<para>How do we change the device driver interface to be
able to use the ame drivers cleanly on many buses and
architectures?</para>
</listitem>
<listitem>
<para>How do I write a network driver?</para>
</listitem>
</itemizedlist>
<para>The moderator reserves the right to do minor editing
(spell-checking, grammar correction, trimming) of messages
that are posted to the list. The volume of the list will be
kept low, which may involve having to delay topics until an
active discussion has been resolved.</para>
</listitem>
</varlistentry>
@ -660,9 +720,11 @@ help
<listitem>
<para><emphasis>Documentation project</emphasis></para>
<para>This mailing list belongs to the FreeBSD Doc Project
and is for the discussion of documentation related issues
and projects.</para>
<para>This mailing list is for the discussion of documentation
related issues and projects. The members of this mailing list
are collectively referred to as &ldquo;The FreeBSD
Documentation Project&rdquo;. It is an open list; feel free to
join and contribute.</para>
</listitem>
</varlistentry>
@ -766,16 +828,22 @@ help
</listitem>
</varlistentry>
<varlistentry><term>FREEBSD-MULTIMEDIA</term>
<varlistentry><term>FREEBSD-NEWBIES</term>
<listitem>
<para><emphasis>Multimedia discussions</emphasis></para>
<para>This is a forum about multimedia applications using
FreeBSD. Discussion center around multimedia applications,
their installation, their development and their support
within FreeBSD This is a technical mailing list for which
strictly technical content is expected.</para>
<para><emphasis>Newbies activities
discussion</emphasis></para>
<para>We cover any of the activities of newbies that are not
already dealt with elsewhere, including: independent learning
and problem solving techniques, finding and using resources
and asking for help elsewhere, how to use mailing lists and
which lists to use, general chat, making mistakes, boasting,
sharing ideas, stories, moral (but not technical) support, and
taking an active part in the FreeBSD community. We take our
problems and support questions to freebsd-questions, and use
freebsd-newbies to meet others who are doing the same things
that we do as newbies.</para>
</listitem>
</varlistentry>
@ -866,7 +934,17 @@ help
FreeBSD-security.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>FREEBSD-SMALL</term>
<listitem>
<para>This list discusses topics related to unsually small and
embedded FreeBSD installations. This is a technical mailing
list for which strictly technical content is expected.</para>
</listitem>
</varlistentry>
<varlistentry><term>FREEBSD-USER-GROUPS</term>
<listitem>
@ -972,36 +1050,6 @@ help
URL="news:comp.unix.misc">comp.unix.misc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.announc">comp.os.386bsd.announc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.app">comp.os.386bsd.app</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.bugs">comp.os.386bsd.bugs</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.development">comp.os.386bsd.development</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.misc">comp.os.386bsd.misc</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.os.386bsd.questions">comp.os.386bsd.questions</ulink></para>
</listitem>
<listitem>
<para><ulink
URL="news:comp.bugs.4bsd">comp.bugs.4bsd</ulink></para>

View file

@ -78,24 +78,20 @@
<para>For Pentium Pro (P6) systems, I'm quite fond of the <ulink
URL="http://www.tyan.com/html/products.html">Tyan</ulink>
S1668 dual-processor motherboard. It makes a dandy little
single or dual processor system (which is supported in FreeBSD
3.0) and the price of the Pentium Pro 180/256K chip has fallen
to truly affordable levels. The Pentium Pro remains my favorite
processor solution server systems (Megahertz ratings aren't
everything).</para>
S1668 dual-processor motherboard as well as the Intel PR440FX
motherboard with on-board SCSI WIDE and 100/10MB Intel
Etherexpress NIC. You can build a dandy little single or dual
processor system (which is supported in FreeBSD 3.0) for very
little cost now that the Pentium Pro 180/256K chips have fallen so
greatly in price, but no telling how much longer this will
last.</para>
<para>For the Pentium II, I'm rather partial to the <ulink
URL="http://www.asus.com.tw">ASUS</ulink> <ulink
URL="http://www.asus.com.tw/Products/Motherboard/Pentiumpro/P2l97-s/index.html">P2l97-S</ulink> motherboard with the on-board Adaptec SCSI WIDE controller.</para>
<para>For Pentium machines, the ASUS <ulink
URL="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> motherboard appears to be a good choice for mid-to-high range Pentium server and workstation systems. You might also wish to investigate ASUS's <ulink URL="http://asustek.asus.com.tw/FTP/ASUS/Info/Spec/pvi-486sp3.txt">486SP3G</ulink> offering if it's a 486-class motherboard you're looking for.</para>
<note>
<para>These have become increasingly hard to get as ASUS
apparently no longer manufactures them).</para>
</note>
URL="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> motherboard appears to be a good choice for mid-to-high range Pentium server and workstation systems.</para>
<para>Those wishing to build more fault-tolerant systems should
also be sure to use Parity memory or, for truly 24/7
@ -131,6 +127,13 @@
your scarce PCI bus resources by buying the Adaptec 3940 card,
which puts two SCSI controllers (and internal busses) in a
single slot.</para>
<note>
<para>There are two types of 3940 on the market&mdash;the older
model with AIC 7880 chips on it, and hte newer one with AIC 7895
chips. The newer model requires <ulink
url="http://www.freebsd.org/pub/FreeBSD/development/cam/">CAM</ulink> support which is not yet part of FreeBSD&mdash;you have to add it, or install from one of the CAM binary snapshot release.</para>
</note>
</sect3>
@ -144,11 +147,8 @@
drives from server to desktop as falling drive prices make it
economical to do so. If you have more than one machine to
administer then think of it not simply as storage, think of it
as a food chain!</para>
<para>I do not currently see SCSI WIDE drives as a necessary
expense unless you're putting together an NFS or NEWS server
that will be doing a lot of multiuser disk I/O.</para>
as a food chain! For a serious server configuration, there's not
even any argument&mdash;use SCSI equipment and good cables.</para>
</sect3>
@ -157,12 +157,11 @@
<para>My SCSI preferences extend to SCSI CDROM drives as well, and
while the <ulink URL="http://www.toshiba.com">Toshiba</ulink>
XM-3501B (also released in a caddy-less model called the
XM-5401B) drive has always performed well for me, I'm now a
great fan of the <ulink
URL="http://www.plextor.com">Plextor</ulink> PX-12CS drive.
It's a 12 speed drive with excellent performance and
reliability.</para>
drives have always been favourites of mine (in whatever speed is
hot that week), I'm still fond of my good old <ulink
url="http://www.plextor.com">Plextor</ulink> PX-12CS drive. It's
only a 12 speed, but it's offered excellent performance and
reliability.</para>
<para>Generally speaking, most SCSI CDROM drives I've seen have
been of pretty solid construction and you probably won't go
@ -182,8 +181,8 @@
drives (though I believe they all ultimately come from Phillips
anyway): The Phillips CDD 522 (Acts like a Plasmon), the PLASMON
RF4100 and the HP 6020i. I myself use the HP 6020i for burning
CDROMs (with 2.2-current &mdash; it does not work with 2.1.5 or
earlier releases of the SCSI code) and it works very well. See
CDROMs (in 2.2 and alter releases&mdash;it does not work with
earlier releases of the SCSI code) and it works very well. See
<ulink
URL="file:/usr/share/examples/worm">/usr/share/examples/worm</ulink> on your 2.2 system for example scripts used to created ISO9660 filesystem images (with RockRidge extensions) and burn them onto an HP6020i CDR.</para>
@ -209,12 +208,14 @@
Inc. (formerly X Inside, Inc)</ulink> then I can heartily
recommend the <ulink URL="http://www.matrox.com/">Matrox</ulink>
<ulink
URL="http://www.matrox.com/mgaweb/brochure.htm">Millenium</ulink> card. Note that support for this card is also excellent with the <ulink URL="http://www.xfree86.org/">XFree86</ulink> server, which is now at version 3.3.2.</para>
URL="http://www.matrox.com/mgaweb/brochure.htm">Millenium II</ulink> card. Note that support for this card is also excellent with the <ulink URL="http://www.xfree86.org/">XFree86</ulink> server, which is now at version 3.3.2.</para>
<para>You also certainly can't go wrong with one of <ulink
URL="http://www.nine.com/">Number 9's</ulink> cards &mdash; their S3
Vision 868 and 968 based cards (the 9FX series) also being quite
fast and very well supported by XFree86's S3 server.</para>
fast and very well supported by XFree86's S3 server. You can
also pick up their Revolution 3D cards very cheaply these days,
especially if you require a lot of video memory.</para>
</sect3>
@ -222,27 +223,28 @@
<title>Monitors</title>
<para>I have had very good luck with the <ulink
URL="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII monitors</ulink>, as have I with the Viewsonic offering in the same (Trinitron) tube. For larger than 17", all I can recommend at the time of this writing is to not spend any less than U.S. &#36;2,500 for a 21" monitor or &#36;1,700 for a 20" monitor if that's what you really need. There are good monitors available in the &gt;=20" range and there are also cheap monitors in the &gt;=20" range. Unfortunately, very few are both cheap and good!</para>
URL="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII monitors</ulink>, as have I with the Viewsonic offering in the same (Trinitron) tube. For larger than 17", all I can recommend at the time of this writing is to not spend any less than U.S. &#36;2,000 for a 21" monitor or &#36;1,700 for a 20" monitor if that's what you really need. There are good monitors available in the &gt;=20" range and there are also cheap monitors in the &gt;=20" range. Unfortunately, very few are both cheap and good!</para>
</sect3>
<sect3 id="hw-networking">
<title>Networking</title>
<para>I can recommend the <ulink
<para>I can recommend the Intel EtherExpress Pro/100B card first
ande foremost, followed by the <ulink
URL="http://www.smc.com/">SMC</ulink> Ultra 16 controller for
any ISA application and the SMC EtherPower or Compex ENET32
cards for any serious PCI based networking. Both of the PCI
cards are based around DEC's DC21041 Ethernet controller chip
and other cards using it, such as the Zynx ZX342 or DEC DE435,
will generally work as well. For 100Mbit networking, either the
SMC SMC9332DST 10/100MB or Intel EtherExpress Pro/100B cards
will do a fine job, the Intel EtherExpress generally getting my
vote.</para>
cards for slightly cheaper PCI based networking. In general, any
PCI NIC based around DEC's DC21041 Ethernet controller chip,
such as the Zynx ZX342 or DEC DE435, will generally work quite
well and can frequently be found in 2-port and 4-port version
(useful for firewalls and routers), though the Pro/100MB card has
the edge when it comes to providing the best performance with teh
lower overhead.</para>
<para>If what you're looking for is, on the other hand, the
cheapest possible solution which will still work reasonably
well, then almost any NE2000 clone is a good choice.</para>
<para>If what you're looking for is the
cheapest possible solution then almost any NE2000 clone will do
a fine job for very little cost.</para>
</sect3>
@ -334,7 +336,7 @@
<sect3 id="hw-mb-pci">
<title>PCI</title>
<para><emphasis>Contributed by &a.rgrimes;.<!-- <br> -->25 April
<para><emphasis>Contributed by &a.obrien; from postings by &a.rgrimes;.<!-- <br> -->25 April
1995.</emphasis></para>
<para><emphasis>Continuing updates by &a.jkh;.</emphasis><!-- <br>
@ -4875,7 +4877,7 @@ options "TUNE_1542" #dynamic tune of bus DMA speed</programli
<para>Data transfer rate is 350kB/s using
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Rates of 530kB/s have been
reported when using <link
linkend="hw-storage-amanda">Amanda</link></para>
linkend="backups-programs-amanda">Amanda</link></para>
<para>Production of this drive has been discontinued.</para>
@ -5655,653 +5657,6 @@ scsi -f $2 -s 100 -c "1b 0 0 $cdb3 $cdb4 $cdb5"</programlisting>
<para></para>
</sect2>
<sect2>
<title>* Adding and reconfiguring disks</title>
<para></para>
</sect2>
<sect2 id="hw-storage-tapebackups">
<title>Tapes and backups</title>
<sect3>
<title>* What about backups to floppies?</title>
<para></para>
</sect3>
<sect3>
<title>Tape Media</title>
<sect4 id="hw-storage-tapebackups-4mm">
<title>4mm (DDS: Digital Data Storage)</title>
<para>4mm tapes are replacing QIC as the workstation backup
media of choice. This trend accelerated greatly when Conner
purchased Archive, a leading manufacturer of QIC drives, and
then stopped production of QIC drives. 4mm drives are small
and quiet but do not have the reputation for reliability that
is enjoyed by 8mm drives. The cartridges are less expensive
and smaller (3 x 2 x 0.5 inches, 76 x 51 x 12 mm) than 8mm
cartridges. 4mm, like 8mm, has comparatively short head life
for the same reason, both use helical scan.</para>
<para>Data thruput on these drives starts ~150kB/s, peaking at
~500kB/s. Data capacity starts at 1.3 GB and ends at 2.0 GB.
Hardware compression, available with most of these drives,
approximately doubles the capacity. Multi-drive tape library
units can have 6 drives in a single cabinet with automatic
tape changing. Library capacities reach 240 GB.</para>
<para>4mm drives, like 8mm drives, use helical-scan. All the
benefits and drawbacks of helical-scan apply to both 4mm and
8mm drives.</para>
<para>Tapes should be retired from use after 2,000 passes or 100
full backups.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-8mm">
<title>8mm (Exabyte)</title>
<para>8mm tapes are the most common SCSI tape drives; they are
the best choice of exchanging tapes. Nearly every site has an
exabyte 2 GB 8mm tape drive. 8mm drives are reliable,
convenient and quiet. Cartridges are inexpensive and small
(4.8 x 3.3 x 0.6 inches; 122 x 84 x 15 mm). One downside of
8mm tape is relatively short head and tape life due to the
high rate of relative motion of the tape across the
heads.</para>
<para>Data thruput ranges from ~250kB/s to ~500kB/s. Data sizes
start at 300 MB and go up to 7 GB. Hardware compression,
available with most of these drives, approximately doubles the
capacity. These drives are available as single units or
multi-drive tape libraries with 6 drives and 120 tapes in a
single cabinet. Tapes are changed automatically by the unit.
Library capacities reach 840+ GB.</para>
<para>Data is recorded onto the tape using helical-scan, the
heads are positioned at an angle to the media (approximately 6
degrees). The tape wraps around 270 degrees of the spool that
holds the heads. The spool spins while the tape slides over
the spool. The result is a high density of data and closely
packed tracks that angle across the tape from one edge to the
other.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-qic">
<title>QIC</title>
<para>QIC-150 tapes and drives are, perhaps, the most common
tape drive and media around. QIC tape drives are the least
expensive &ldquo;serious&rdquo; backup drives. The downside is the cost
of media. QIC tapes are expensive compared to 8mm or 4mm
tapes, up to 5 times the price per GB data storage. But, if
your needs can be satisfied with a half-dozen tapes, QIC may
be the correct choice. QIC is the <emphasis>most</emphasis>
common tape drive. Every site has a QIC drive of some density
or another. Therein lies the rub, QIC has a large number of
densities on physically similar (sometimes identical) tapes.
QIC drives are not quiet. These drives audibly seek before
they begin to record data and are clearly audible whenever
reading, writing or seeking. QIC tapes measure (6 x 4 x 0.7
inches; 15.2 x 10.2 x 1.7 mm). <link
linkend="hw-storage-tapebackups-mini">Mini-cartridges</link>,
which also use 1/4" wide tape are
discussed separately. Tape libraries and changers are not
available.</para>
<para>Data thruput ranges from ~150kB/s to ~500kB/s. Data
capacity ranges from 40 MB to 15 GB. Hardware compression is
available on many of the newer QIC drives. QIC drives are
less frequently installed; they are being supplanted by DAT
drives.</para>
<para>Data is recorded onto the tape in tracks. The tracks run
along the long axis of the tape media from one end to the
other. The number of tracks, and therefore the width of a
track, varies with the tape's capacity. Most if not all newer
drives provide backward-compatibility at least for reading
(but often also for writing). QIC has a good reputation
regarding the safety of the data (the mechanics are simpler
and more robust than for helical scan drives).</para>
<para>Tapes should be retired from use after 5,000
backups.</para>
</sect4>
<sect4 id="hw-storage-tapebackups-mini">
<title>* Mini-Cartridge</title>
<para></para>
</sect4>
<sect4 id="hw-storage-tapebackups-dlt">
<title>DLT</title>
<para>DLT has the fastest data transfer rate of all the drive
types listed here. The 1/2" (12.5mm) tape is contained in a
single spool cartridge (4 x 4 x 1 inches; 100 x 100 x 25 mm).
The cartridge has a swinging gate along one entire side of the
cartridge. The drive mechanism opens this gate to extract the
tape leader. The tape leader has an oval hole in it which the
drive uses to &ldquo;hook&rdquo; the tape. The take-up spool is located
inside the tape drive. All the other tape cartridges listed
here (9 track tapes are the only exception) have both the
supply and take-up spools located inside the tape cartridge
itself.</para>
<para>Data thruput is approximately 1.5MB/s, three times the
thruput of 4mm, 8mm, or QIC tape drives. Data capacities
range from 10GB to 20GB for a single drive. Drives are
available in both multi-tape changers and multi-tape,
multi-drive tape libraries containing from 5 to 900 tapes over
1 to 20 drives, providing from 50GB to 9TB of storage.</para>
<para>Data is recorded onto the tape in tracks parallel to the
direction of travel (just like QIC tapes). Two tracks are
written at once. Read/write head lifetimes are relatively
long; once the tape stops moving, there is no relative motion
between the heads and the tape.</para>
</sect4>
</sect3>
<sect3>
<title>Using a new tape for the first time</title>
<para>The first time that you try to read or write a new,
completely blank tape, the operation will fail. The console
messages should be similar to:</para>
<informalexample>
<screen>st0(ncr1:4:0): NOT READY asc:4,1
st0(ncr1:4:0): Logical unit is in process of becoming ready</screen>
</informalexample>
<para>The tape does not contain an Identifier Block (block number
0). All QIC tape drives since the adoption of QIC-525 standard
write an Identifier Block to the tape. There are two solutions:</para>
<para><command>mt fsf 1</command> causes the tape drive
to write an Identifier Block to the tape.</para>
<para>Use the front panel button to eject the tape.</para>
<para>Re-insert the tape and <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> data to
the tape.</para>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> will report <errorname>DUMP: End of tape detected</errorname> and the console
will show: <errorname>HARDWARE FAILURE info:280
asc:80,96</errorname></para>
<para>rewind the tape using: <command>mt
rewind</command></para>
<para>Subsequent tape operations are successful.</para>
</sect3>
<sect3>
<title>Backup Programs</title>
<para>The three major programs are <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>, and
<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
<sect4>
<title>Dump and Restore</title>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry> are the traditional Unix backup
programs. They operate on the drive as a collection of disk
blocks, below the abstractions of files, links and directories
that are created by the filesystems.
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> backs up devices, entire
filesystems, not parts of a filesystem and not directory trees
that span more than one filesystem, using either soft links
<citerefentry><refentrytitle>ln</refentrytitle><manvolnum>1</manvolnum></citerefentry> or mounting one filesystem onto
another. <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> does not write files and
directories to tape, but rather writes the data blocks that
are the building blocks of files and directories.
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> has quirks that remain from its
early days in Version 6 of ATT Unix (circa 1975). The default
parameters are suitable for 9-track tapes (6250 bpi), not the
high-density media available today (up to 62,182 ftpi). These
defaults must be overridden on the command line to utilize the
capacity of current tape drives.</para>
<para><citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>rrestore</refentrytitle><manvolnum>8</manvolnum></citerefentry> backup data across the network
to a tape drive attached to another computer. Both programs
rely upon <citerefentry><refentrytitle>rcmd</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
<citerefentry><refentrytitle>ruserok</refentrytitle><manvolnum>3</manvolnum></citerefentry> to access the remote tape
drive. Therefore, the user performing the backup must have
<filename>rhosts</filename> access to the remote
computer. The arguments to <citerefentry><refentrytitle>rdump</refentrytitle><manvolnum>8</manvolnum></citerefentry> and
<citerefentry><refentrytitle>rrestore</refentrytitle><manvolnum>8</manvolnum></citerefentry> must suitable to use on the
remote computer. e.g. When <command>rdump</command>'ing from a FreeBSD computer to an
Exabyte tape drive connected to a Sun called komodo, use:</para>
<informalexample>
<screen>&prompt.root; <userinput>/sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nrst8 /dev/rsd0a 2&gt;&amp;1</userinput></screen>
</informalexample>
<para>Beware:
there are security implications to allowing <filename>rhosts</filename> commands. Evaluate your
situation carefully.</para>
</sect4>
<sect4>
<title>Tar</title>
<para><citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> also dates back to Version 6 of
ATT Unix (circa 1975). <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> operates in
cooperation with the filesystem; <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>
writes files and directories to tape.
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not support the full range of
options that are available from <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
but <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not require the unusual
command pipeline that <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> uses.</para>
<para>Most versions of <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> do not support
backups across the network. The GNU version of
<citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>, which FreeBSD utilizes, supports
remote devices using the same syntax as <command>rdump</command>. To <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry> to
an Exabyte tape drive connected to a Sun called komodo, use:
<command>/usr/bin/tar cf komodo:/dev/nrst8 .
2&gt;&amp;1</command>. For versions without remote device
support, you can use a pipeline and <citerefentry><refentrytitle>rsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>
to send the data to a remote tape drive. (XXX add an example
command)</para>
</sect4>
<sect4>
<title>Cpio</title>
<para><citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> is the original Unix file
interchange tape program for magnetic media.
<citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> has options (among many others) to
perform byte-swapping, write a number of different archives
format, and pipe the data to other programs. This last feature
makes <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> and excellent choice for
installation media. <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not know
how to walk the directory tree and a list of files must be
provided thru <acronym>STDIN</acronym>.</para>
<para><citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not support backups across
the network. You can use a pipeline and
<citerefentry><refentrytitle>rsh</refentrytitle><manvolnum>1</manvolnum></citerefentry> to send the data to a remote tape
drive. (XXX add an example command)</para>
</sect4>
<sect4>
<title>Pax</title>
<para><citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> is IEEE/POSIX's answer to
<command>tar</command> and <command>cpio</command>. Over the years the various
versions of <command>tar</command> and <command>cpio</command> have gotten slightly incompatible.
So rather than fight it out to fully standardize them, POSIX
created a new archive utility. <command>pax</command> attempts to read and write many of
the various cpio and tar formats, plus new formats of its own.
Its command set more resembles <command>cpio</command> than <command>tar</command>.</para>
</sect4>
<sect4 id="hw-storage-amanda">
<title><ulink
URL="http://www.freebsd.org/ports/misc.html#amanda-2.2.6.5">Amanda</ulink></title>
<para>Amanda (Advanced Maryland Network Disk Archiver) is a
client/server backup system, rather than a single program. An
Amanda server will backup to a single tape drive any number of
computers that have Amanda clients and network communications
with the Amanda server. A common problem at locations with a
number of large disks is the length of time required to backup
to data directly to tape exceeds the amount of time available
for the task. Amanda solves this problem. Amanda can use a
&ldquo;holding disk&rdquo; to backup several filesystems at the same time.
Amanda creates &ldquo;archive sets&rdquo;: a group of tapes used over a
period of time to create full backups of all the filesystems
listed in Amanda's configuration file. The &ldquo;archive set&rdquo; also
contains nightly incremental (or differential) backups of all
the filesystems. Restoring a damaged filesystem requires the
most recent full backup and the incremental backups.</para>
<para>The configuration file provides fine control backups and
the network traffic that Amanda generates. Amanda will use
any of the above backup programs to write the data to tape.
Amanda is available as either a port or a package, it is not
installed by default.</para>
</sect4>
<sect4>
<title>Do nothing</title>
<para>&ldquo;Do nothing&rdquo; is not a computer program, but it is the most
widely used backup strategy. There are no initial costs.
There is no backup schedule to follow. Just say no. If
something happens to your data, grin and bear it!</para>
<para>If your time and your data is worth little to nothing,
then &ldquo;Do nothing&rdquo; is the most suitable backup program for your
computer. But beware, Unix is a useful tool, you may find
that within six months you have a collection of files that are
valuable to you.</para>
<para>&ldquo;Do nothing&rdquo; is the correct backup method for
<filename>/usr/obj</filename> and other directory trees that
can be exactly recreated by your computer. An example is the
files that comprise these handbook pages-they have been
generated from <acronym>SGML</acronym> input files. Creating
backups of these <acronym>HTML</acronym> files is not
necessary. The <acronym>SGML</acronym> source files are
backed up regularly.</para>
</sect4>
<sect4>
<title>Which Backup Program is Best?</title>
<para><citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> <emphasis>Period.</emphasis>
Elizabeth D. Zwicky torture tested all the backup programs
discussed here. The clear choice for preserving all your data
and all the peculiarities of Unix filesystems is
<citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Elizabeth created filesystems
containing a large variety of unusual conditions (and some not
so unusual ones) and tested each program by do a backup and
restore of that filesystems. The peculiarities included:
files with holes, files with holes and a block of nulls, files
with funny characters in their names, unreadable and
unwritable files, devices, files that change size during the
backup, files that are created/deleted during the backup and
more. She presented the results at LISA V in Oct.
1991.</para>
</sect4>
</sect3>
<sect3>
<title>Emergency Restore Procedure</title>
<sect4>
<title>Before the Disaster</title>
<para>There are only four steps that you need to perform in
preparation for any disaster that may occur.</para>
<procedure>
<step>
<para>Print the disklabel from each of your disks
(e.g., <command>disklabel sd0 | lpr</command>), your
filesystem table (<filename>/etc/fstab</filename>) and all
boot messages, two copies of each.</para>
</step>
<step>
<para>Determine the boot and fixit floppies (<filename>boot.flp</filename>
and <filename>fixit.flp</filename>) have all your devices. The easiest way to
check is to reboot your machine with the boot floppy in the
floppy drive and check the boot messages. If all your devices
are listed and functional, skip on to step three.</para>
<para>Otherwise, you have to create two custom bootable floppies
which has a kernel that can mount your all of your disks and
access your tape drive. These floppies must contain:
<citerefentry><refentrytitle>fdisk</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>disklabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>newfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry>, and
whichever backup program you use. These programs must be
statically linked. If you use <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>, the
floppy must contain <citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
</step>
<step>
<para>Create backup tapes regularly. Any changes that you
make after your last backup may be irretrievably lost.
Write-protect the backup tapes.</para>
</step>
<step>
<para>Test the floppies (either <filename>boot.flp</filename> and <filename>fixit.flp</filename>
or the two custom bootable floppies you made in step two.)
and backup tapes. Make notes of the procedure. Store these
notes with the bootable floppy, the printouts and the backup
tapes. You will be so distraught when restoring that the
notes may prevent you from destroying your backup tapes (How?
In place of <command>tar xvf /dev/rst0</command>, you might
accidently type <command> tar cvf /dev/rst0</command> and
over-write your backup tape).</para>
<para>For an added measure of security, make bootable floppies
and two backup tapes each time. Store one of each at a remote
location. A remote location is NOT the basement of the same
office building. A number of firms in the World Trade Center
learned this lesson the hard way. A remote location should be
physically separated from your computers and disk drives by a
significant distance.</para>
<para>An example script for creating a bootable floppy:</para>
<programlisting>
#!/bin/sh
#
# create a restore floppy
#
# format the floppy
#
PATH=/bin:/sbin:/usr/sbin:/usr/bin
fdformat -q fd0
if [ $? -ne 0 ]
then
echo "Bad floppy, please use a new one"
exit 1
fi
# place boot blocks on the floppy
#
disklabel -w -B -b /usr/mdec/fdboot -s /usr/mdec/bootfd /dev/rfd0c fd1440
#
# newfs the one and only partition
#
newfs -t 2 -u 18 -l 1 -c 40 -i 5120 -m 5 -o space /dev/rfd0
#
# mount the new floppy
#
mount /dev/fd0a /mnt
#
# create required directories
#
mkdir /mnt/dev
mkdir /mnt/bin
mkdir /mnt/sbin
mkdir /mnt/etc
mkdir /mnt/root
mkdir /mnt/mnt # for the root partition
mkdir /mnt/tmp
mkdir /mnt/var
#
# populate the directories
#
if [ ! -x /sys/compile/MINI/kernel ]
then
cat &lt;&lt; EOM
The MINI kernel does not exist, please create one.
Here is an example config file:
#
# MINI -- A kernel to get FreeBSD on onto a disk.
#
machine "i386"
cpu "I486_CPU"
ident MINI
maxusers 5
options INET # needed for _tcp _icmpstat _ipstat
# _udpstat _tcpstat _udb
options FFS #Berkeley Fast File System
options FAT_CURSOR #block cursor in syscons or pccons
options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device
options NCONS=2 #1 virtual consoles
options USERCONFIG #Allow user configuration with -c XXX
config kernel root on sd0 swap on sd0 and sd1 dumps on sd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk fd0 at fdc0 drive 0
controller ncr0
controller scbus0
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
device sd0
device sd1
device sd2
device st0
pseudo-device loop # required by INET
pseudo-device gzip # Exec gzipped a.out's
EOM
exit 1
fi
cp -f /sys/compile/MINI/kernel /mnt
gzip -c -best /sbin/init &gt; /mnt/sbin/init
gzip -c -best /sbin/fsck &gt; /mnt/sbin/fsck
gzip -c -best /sbin/mount &gt; /mnt/sbin/mount
gzip -c -best /sbin/halt &gt; /mnt/sbin/halt
gzip -c -best /sbin/restore &gt; /mnt/sbin/restore
gzip -c -best /bin/sh &gt; /mnt/bin/sh
gzip -c -best /bin/sync &gt; /mnt/bin/sync
cp /root/.profile /mnt/root
cp -f /dev/MAKEDEV /mnt/dev
chmod 755 /mnt/dev/MAKEDEV
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# create the devices nodes
#
cd /mnt/dev
./MAKEDEV std
./MAKEDEV sd0
./MAKEDEV sd1
./MAKEDEV sd2
./MAKEDEV st0
./MAKEDEV pty0
cd /
#
# create minimum filesystem table
#
cat &gt; /mnt/etc/fstab &lt;&lt;EOM
/dev/fd0a / ufs rw 1 1
EOM
#
# create minimum passwd file
#
cat &gt; /mnt/etc/passwd &lt;&lt;EOM
root:*:0:0:Charlie &amp;:/root:/bin/sh
EOM
cat &gt; /mnt/etc/master.passwd &lt;&lt;EOM
root::0:0::0:0:Charlie &amp;:/root:/bin/sh
EOM
chmod 600 /mnt/etc/master.passwd
chmod 644 /mnt/etc/passwd
/usr/sbin/pwd_mkdb -d/mnt/etc /mnt/etc/master.passwd
#
# umount the floppy and inform the user
#
/sbin/umount /mnt</programlisting>
</step>
</procedure>
</sect4>
<sect4>
<title>After the Disaster</title>
<para>The key question is: did your hardware survive? You have
been doing regular backups so there is no need to worry about
the software.</para>
<para>If the hardware has been damaged. First, replace those
parts that have been damaged.</para>
<para>If your hardware is okay, check your floppies. If you are
using a custom boot floppy, boot single-user (type <option>-s</option> at the
<prompt>boot:</prompt> prompt). Skip the following paragraph.</para>
<para>If you are using the boot.flp and fixit.flp floppies, keep
reading. Insert the boot.flp floppy in the first floppy drive
and boot the computer. The original install menu will be
displayed on the screen. Select the "Fixit--Repair mode with
CDROM or floppy." option. Insert the <filename>fixit.flp</filename> when prompted.
<command>restore</command> and the other programs
that you need are located in
<filename>/mnt2/stand</filename>.</para>
<para>Recover each filesystem separately.</para>
<para>Try to <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> (e.g. <command>mount /dev/sd0a /mnt</command>) the root partition of your first disk. If
the disklabel was damaged, use <citerefentry><refentrytitle>disklabel</refentrytitle><manvolnum>8</manvolnum></citerefentry>
to re-partition and label the disk to match the label that
your printed and saved. Use <citerefentry><refentrytitle>newfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> to
re-create the filesystems. Re-mount the root partition of the
floppy read-write (<command>mount -u -o rw /mnt</command>).
Use your backup program and backup tapes to recover the data
for this filesystem (e.g. <command>restore vrf
/dev/st0</command>). Unmount the filesystem (e.g.
<filename>umount /mnt</filename>) Repeat for each filesystem
that was damaged.</para>
<para>Once your system is running, backup your data onto new
tapes. Whatever caused the crash or data loss may strike
again. An another hour spent now, may save you from further
distress later.</para>
</sect4>
<sect4>
<title>* I did not prepare for the Disaster, What Now?</title>
<para></para>
</sect4>
</sect3>
</sect2>
</sect1>
<sect1 id="hw-other">

View file

@ -15,10 +15,13 @@
between FreeBSD and your hardware which may, in turn, dictate which
installation options are even possible. It can also provide early
clues to any compatibility problems which could prevent FreeBSD
running on your system at all. If you plan on installing via
anonymous FTP then this installation disk is all you need to download
(the installation will handle any further required downloading
itself).</para>
running on your system at all.</para>
<para>If you plan on installing via
anonymous FTP then this installation floppy is all you need to
download and create&mdash;the installation program itself will handle
any further required downloading directly (using an ethernet connection,
a modem and ppp dialip #, etc).</para>
<para>For more information on obtaining the latest FreeBSD
distributions, please see <link linkend="mirrors">Obtaining
@ -180,6 +183,11 @@ Boot:
cause a later probe for another device that is present to fail. In
that case, the probes for the conflicting driver(s) should be
disabled.</para>
<warning>
<para>Do not disable any device you will need during installation, such
as your screen (<devicename>sc0</devicename>).</para>
</warning>
<para>In the configuration mode, you can:</para>

View file

@ -286,7 +286,7 @@
point paging will be enabled and the kernel will finally run at the
address for which it was linked.</para>
<para><emphasis>Contributed by &a.davidg;.<!-- <br> --> 16 Apr
<para><emphasis>Contributed by &a.dg;.<!-- <br> --> 16 Apr
1995.</emphasis></para>
<para>The physical pages immediately following the kernel BSS contain

View file

@ -102,7 +102,7 @@
</listitem>
<listitem>
<para>A full compliment of <emphasis>C</emphasis>,
<para>A full complement of <emphasis>C</emphasis>,
<emphasis>C++</emphasis> and <emphasis>Fortran</emphasis> development tools. Many
additional languages for advanced research and development are
also available in the ports and packages collection.</para>
@ -245,7 +245,7 @@
<listitem>
<para><emphasis>Software Development:</emphasis> The
basic FreeBSD system comes with a full compliment of
basic FreeBSD system comes with a full complement of
development tools including the renowned GNU C/C++ compiler
and debugger.</para>
</listitem>
@ -348,8 +348,9 @@
(&ldquo;-current&rdquo;) in November 1996 as the RELENG_2_2 branch, and the
first full release (2.2.1) was released in April, 1997. Further
releases along the 2.2 branch were done in the Summer and Fall of
'97, the latest being 2.2.6 which appeared in late March of '98.
The first official 3.0 release will appear later in 1998.</para>
'97, the latest being 2.2.7 which appeared in late July of '98.
The first official 3.0 release will appear in October, 1998 and the
last release on the 2.2 branch, 2.2.8, will appear in November.</para>
<para>Long term development projects for everything from SMP to DEC
ALPHA support will continue to take place in the 3.0-current branch
@ -539,7 +540,7 @@
<para>In addition to the base distributions, FreeBSD offers a new
ported software collection with hundreds of commonly sought-after
programs. At the end of March 1998 there were more than 1300 ports!
programs. At the end of August 1998 there were more than 1700 ports!
The list of ports ranges from http (WWW) servers, to games,
languages, editors and almost everything in between. The entire
ports collection requires approximately 26MB of storage, all ports

View file

@ -1118,16 +1118,7 @@
<listitem>
<para>AT&amp;T StarLAN 10 and EN100; 3Com 3C507;
unknown NI5210</para>
</listitem>
</varlistentry>
<varlistentry><term><literal>device ix0 at isa? port 0x300 net
irq 10 iomem 0xd0000 iosiz 32768 vector
ixintr</literal></term>
<listitem>
<para>Intel EtherExpress 16</para>
unknown NI5210; Intel EtherExpress 16</para>
</listitem>
</varlistentry>

View file

@ -13,7 +13,13 @@
is too small to hold the dump, you can configure your kernel to use
an alternate dump device (in the <literal>config
kernel</literal> line), or you can specify an alternate using the
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. Dumps to non-swap devices, tapes for example,
<citerefentry><refentrytitle>dumpon</refentrytitle><manvolnum>8</manvolnum></citerefentry> command. The best way to use <citerefentry>
<refentrytitle>dumpon</refentrytitle>
<manvolnum>8</manvolnum>
</citerefentry> is to set the <literal>dumpdev</literal> variable in
<filename>/etc/rc.conf</filename>. Typically you want to specify one of
the swap devices specified in <filename>/etc/fstab</filename>.
Dumps to non-swap devices, tapes for example,
are currently not supported. Config your kernel using
<command>config -g</command>. See <link linkend="kernelconfig">Kernel
Configuration</link> for
@ -232,7 +238,23 @@
</sect1>
<sect1>
<title>Debugging a crash dump with DDD</title>
<para>Examining a kernel crash dump with a graphical debugger like
<command>ddd</command> is also possible. Add the <option>-k</option>
option to the <command>ddd</command> command line you would use
normally. For example;</para>
<informalexample>
<screen>&prompt.root; <userinput>ddd -k /var/crash/kernel.0 /var/crash/vmcore.0</userinput></screen>
</informalexample>
<para>You should then be able to go about looking at the crash dump using
<command>ddd</command>'d graphical interface.</para>
</sect1>
<sect1>
<title>Post-mortem Analysis of a Dump</title>

View file

@ -11,7 +11,7 @@
possible to run a large fraction of Linux binaries in both a.out and
ELF format. The linux emulation in the 2.1-STABLE branch is capable
of running Linux DOOM and Mathematica; the version present in
FreeBSD-2.2-RELEASE is vastly more capable and runs all these as
&rel.current;-RELEASE is vastly more capable and runs all these as
well as Quake, Abuse, IDL, netrek for Linux and a whole host of
other programs.</para>
@ -22,11 +22,6 @@
filesystem) or i386-specific calls, such as enabling virtual 8086
mode.</para>
<para>To tell whether your kernel is configured for Linux
compatibility simply run any Linux binary. If it prints the error
message <errorname>linux-executable: Exec format error. Wrong Architecture.</errorname> then you do not have linux compatibility support
and you need to configure and install a new kernel.</para>
<para>Depending on which version of FreeBSD you are running, how you
get Linux-emulation up will vary slightly:</para>
@ -180,7 +175,7 @@ options LINUX</programlisting>
just grab the linux_lib port:</para>
<informalexample>
<screen>&prompt.root; <userinput>cd /usr/ports-current/emulators/linux_lib</userinput>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_lib</userinput>
&prompt.root; <userinput>make all install</userinput></screen>
</informalexample>
@ -188,10 +183,9 @@ options LINUX</programlisting>
the mail archives <!-- smiley -->:-) seems to hold that Linux emulation works
best with linux binaries linked against the ZMAGIC libraries;
QMAGIC libraries (such as those used in Slackware V2.0) may tend
to give the Linuxulator heartburn. As of this writing (March
1996) ELF emulation is still in the formulative stages but seems
to work pretty well. Also, expect some programs to complain
about incorrect minor versions. In general this does not seem
to give the Linuxulator heartburn. Also, expect some programs to complain
about incorrect minor versions of the system libraries. In
general, however, this does not seem
to be a problem.</para>
</sect3>
@ -216,7 +210,7 @@ options LINUX</programlisting>
that the Linux <command>ld.so</command> reports.</para>
<para>FreeBSD-2.2-RELEASE and later works slightly differently
with respect to <command>/compat/linux</command>. On -CURRENT, all files, not just
with respect to <filename>/compat/linux</filename>: all files, not just
libraries, are searched for from the &ldquo;shadow root&rdquo;
<filename>/compat/linux</filename>.</para>
@ -240,7 +234,7 @@ options LINUX</programlisting>
do the necessary installation steps).</para>
<para>If you have access to a Linux system, see what shared
libraries it needs, and copy them to your FreeBSD system.
libraries the application needs, and copy them to your FreeBSD system.
Example: you have just ftp'ed the Linux binary of Doom. Put it
on the Linux system you have access to, and check which shared
libraries it needs by running <command>ldd linuxxdoom</command>:</para>
@ -313,7 +307,7 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
<sect3>
<title>Configuring the <filename>ld.so</filename> &mdash; for FreeBSD
2.2-RELEASE only</title>
2.2-RELEASE and later</title>
<para>This section applies only to FreeBSD 2.2-RELEASE and later.
Those running 2.1-STABLE should skip this section.</para>
@ -424,7 +418,35 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
</sect3>
</sect2>
<sect2>
<title>Installing Linux ELF binaries</title>
<para>ELF binaries sometimes require an extra step of
&ldquo;branding&rdquo;. If you attempt to run an unbranded ELF binary,
you will get an error message like the following;</para>
<informalexample>
<screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput>
ELF binary type not known
Abort</screen>
</informalexample>
<para>To help the FreeBSD kernel distinguish between a FreeBSD ELF
binary from a Linux one, use the <citerefentry>
<refentrytitle>brandelf</refentrytitle>
<manvolnum>1</manvolnum>
</citerefentry> utility.</para>
<informalexample>
<screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen>
</informalexample>
<para>The GNU toolchain now places the appropriate branding information
into ELF binaries automatically, so you should be needing to do this
step increasingly rarely in future.</para>
</sect2>
<sect2>
<title>Configuring the host name resolver</title>
@ -455,7 +477,7 @@ multi on</programlisting>
<para>Lastly, those who run 2.1-STABLE need to set an the
<envar>RESOLV_HOST_CONF</envar> environment variable so that applications will
know how to search the host tables. If you run FreeBSD
2.2-RELEASE, you can skip this. For the
2.2-RELEASE or later, you can skip this. For the
<filename>/bin/csh</filename> shell use:</para>
<informalexample>
@ -507,7 +529,7 @@ multi on</programlisting>
</listitem>
<listitem>
<para>ftp.demon.co.uk:/pub/linux/distributions</para>
<para>ftp.demon.co.uk:/pub/unix/linux</para>
</listitem>
<listitem>

View file

@ -41,6 +41,7 @@
<link linkend="mirrors-cz">Czech Republic</link>,
<link linkend="mirrors-dk">Denmark</link>,
<link linkend="mirrors-ee">Estonia</link>,
<link linkend="mirrors-es">Spain</link>,
<link linkend="mirrors-fi">Finland</link>,
<link linkend="mirrors-fr">France</link>,
<link linkend="mirrors-de">Germany</link>,
@ -54,6 +55,7 @@
<link linkend="mirrors-pt">Portugal</link>,
<link linkend="mirrors-ru">Russia</link>,
<link linkend="mirrors-za">South Africa</link>,
<link linkend="mirrors-sk">Slovak Republic</link>,
<link linkend="mirrors-si">Slovenia</link>,
<link linkend="mirrors-se">Sweden</link>,
<link linkend="mirrors-tw">Taiwan</link>,
@ -534,7 +536,10 @@
<para><ulink
URL="ftp://ftp3.ru.freebsd.org/pub/FreeBSD">ftp://ftp3.ru.freebsd.org/pub/FreeBSD</ulink><!-- <br> --></para>
</listitem>
<listitem>
<para><ulink url="ftp://ftp4.ru.freebsd.org/pub/FreeBSD">ftp://ftp4.ru.freebsd.org/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
@ -568,7 +573,22 @@
</listitem>
</varlistentry>
<varlistentry>
<term><anchor id="mirrors-sk">Slovak Republic</term>
<listitem>
<para>In case of problems, please contact the hostmaster
<email>hostmaster@sk.FreeBSD.ORG</email> for this domain.</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://ftp.sk.freebsd.ORG/pub/FreeBSD">ftp://ftp.sk.freebsd.ORG/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term><anchor id="mirrors-si">Slovenia</term>
<listitem>
@ -587,7 +607,22 @@
</listitem>
</varlistentry>
<varlistentry>
<term><anchor id="mirrors-es">Spain</term>
<listitem>
<para>In case of problems, please contact the hostmaster
<email>hostmaster@es.FreeBSD.ORG</email> for this domain.</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://ftp.es.freebsd.ORG/pub/FreeBSD">ftp://ftp.es.freebsd.ORG/pub/FreeBSD</ulink></para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term><anchor id="mirrors-se">Sweden</term>
<listitem>
@ -978,7 +1013,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Denmark</term>
<listitem>
<para>cvsup.dk.FreeBSD.ORG (maintainer
<email>jesper@skriver.dk</email>)</para>
</listitem>
</varlistentry>
<varlistentry><term>Estonia</term>
<listitem>
@ -1031,7 +1075,16 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Iceland</term>
<listitem>
<para>cvsup.is.FreeBSD.ORG (maintainer
<email>adam@veda.is</email>)</para>
</listitem>
</varlistentry>
<varlistentry><term>Japan</term>
<listitem>
@ -1045,7 +1098,21 @@
<listitem>
<para>cvsup2.jp.FreeBSD.ORG (maintainer <email>max@FreeBSD.ORG</email>)</para>
</listitem>
<listitem>
<para>cvsup3.jp.FreeBSD.ORG (maintainer
<email>shige@cin.nihon-u.ac.jp</email>)</para>
</listitem>
<listitem>
<para>cvsup4.jp.FreeBSD.ORG (maintainer
<email>cvsup-admin@ftp.media.kyoto-u.ac.jp</email>)</para>
</listitem>
<listitem>
<para>cvsup5.jp.FreeBSD.ORG (maintainer
<email>cvsup@imasy.or.jp</email>)</para>
</listitem>
</itemizedlist>
</listitem>
@ -1058,7 +1125,7 @@
<itemizedlist>
<listitem>
<para>cvsup.nl.FreeBSD.ORG (maintainer <email>xaa@stack.nl</email>)</para>
<para>cvsup.nl.FreeBSD.ORG (maintainer <email>xaa@xaa.iae.nl</email>)</para>
</listitem>
</itemizedlist>
@ -1095,7 +1162,25 @@
</listitem>
</varlistentry>
<varlistentry>
<term>Slovak Republic</term>
<listitem>
<itemizedlist>
<listitem>
<para>cvsup.sk.FreeBSD.ORG (maintainer
<email>tps@tps.sk</email>)</para>
</listitem>
<listitem>
<para>cvsup2.sk.FreeBSD.ORG (maintainer
<email>tps@tps.sk</email>)</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry><term>South Africa</term>
<listitem>

View file

@ -121,29 +121,38 @@ IVNhdG9zaGkgQXNhbWkgPGFzYW1pQEZyZWVCU0QuT1JHPg==
<programlisting>
Jonathan M. Bresler &lt;jmb@FreeBSD.org&gt;
Key fingerprint = 31 57 41 56 06 C1 40 13 C5 1C E3 E5 DC 62 0E FB
f16 Fingerprint16 = 31 57 41 56 06 C1 40 13 C5 1C E3 E5 DC 62 0E FB
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2
Version: PGPfreeware 5.0i for non-commercial use
mQCNAzG2GToAAAEEANI6+4SJAAgBpl53XcfEr1M9wZyBqC0tzpie7Zm4vhv3hO8s
o5BizSbcJheQimQiZAY4OnlrCpPxijMFSaihshs/VMAz1qbisUYAMqwGEO/T4QIB
nWNo0Q/qOniLMxUrxS1RpeW5vbghErHBKUX9GVhxbiVfbwc4wAHbXdKX5jjdAAUR
tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNA3x
ffUVW/uOVC1dAQHGdAQAgsnYklBtVUdGuQwXB3bYp9omTD7CVD0aibVrz+lXiPDh
aTVkOC1uhEwL59+R8VdpAnEDMobdZDA/ihCc+6/FW/eE0uyrWZzb5Ng9V1MfC6HI
+sXpeXPy585Z56ewadV2yY9rvzcwmmUNHmAXT/5O0S2AWB0EJZ+cewTrokSTVVOJ
AJUDBRA0C3EoVS4eLnPSiKUBASb+A/95g6w9DDPRGDlbsl4pN1BlSPKrmDQPRK1X
C3bddDY2HNelSNhzp2FYD0WoN1re1vMJV0oaaJHwv7wjbe3+SYEX/IdmtfzI0MbZ
Q/uPybPJOxi2ud6C6J+mEGJN9iBCnsaCz8CETuC9gR1mtxsxySUj9mk0fxKfdP6S
3QDrv6CQ1IkAlQMFEDKsi9CzWmLrWZ8yPQEBduUD/RhV4Qa89rYls9vtIFm6XBjZ
8mW37FYxeqIxg3ZrIyTMlghsOPV0f7zymCCWPRGKOLePRiGo0ZCEkDTYiM9tnwQI
09rmPWJb50yfTSZXjHx6+Hcm6O6BCmDFloo0Mxo6n9pvMH/TmmqHxCsAV+p8XEWy
rMZvwVSynMxmJd17Y5HLtBNKb25hdGhhbiBNLiBCcmVzbGVyiQCVAwUQMbYtYQHb
XdKX5jjdAQHEHwP/fEaQoTi7zKD1U/5kW2YPIBUyMTpLiO9QOr4stYjJvhHh4Ejw
fGvMIhbFrPKtxSNH1s3m4jAXKXiQBDCz17IIzL4n8dlunxNGE5MHcsmpWzggyIg4
zbPqPOcg4gLFEWsEkr2o0akwzIGa3tbCvC+ITaX/rdlWV1jaQjTqSNyPZBM=
=RV56
tCVKb25hdGhhbiBNLiBCcmVzbGVyIDxqbWJARnJlZUJTRC5PUkc+iQCVAwUQNbtI
gAHbXdKX5jjdAQHamQP+OQr10QRknamIPmuHmFYJZ0jU9XPIvTTMuOiUYLcXlTdn
GyTUuzhbEywgtOldW2V5iA8platXThtqC68NsnN/xQfHA5xmFXVbayNKn8H5stDY
2s/4+CZ06mmJfqYmONF1RCbUk/M84rVT3Gn2tydsxFh4Pm32lf4WREZWRiLqmw+J
AJUDBRA0DfF99RVb+45ULV0BAcZ0BACCydiSUG1VR0a5DBcHdtin2iZMPsJUPRqJ
tWvP6VeI8OFpNWQ4LW6ETAvn35HxV2kCcQMyht1kMD+KEJz7r8Vb94TS7KtZnNvk
2D1XUx8Locj6xel5c/Lnzlnnp7Bp1XbJj2u/NzCaZQ0eYBdP/k7RLYBYHQQln5x7
BOuiRJNVU4kAlQMFEDQLcShVLh4uc9KIpQEBJv4D/3mDrD0MM9EYOVuyXik3UGVI
8quYNA9ErVcLdt10NjYc16VI2HOnYVgPRag3Wt7W8wlXShpokfC/vCNt7f5JgRf8
h2a1/MjQxtlD+4/Js8k7GLa53oLon6YQYk32IEKexoLPwIRO4L2BHWa3GzHJJSP2
aTR/Ep90/pLdAOu/oJDUiQCVAwUQMqyL0LNaYutZnzI9AQF25QP9GFXhBrz2tiWz
2+0gWbpcGNnyZbfsVjF6ojGDdmsjJMyWCGw49XR/vPKYIJY9EYo4t49GIajRkISQ
NNiIz22fBAjT2uY9YlvnTJ9NJleMfHr4dybo7oEKYMWWijQzGjqf2m8wf9OaaofE
KwBX6nxcRbKsxm/BVLKczGYl3XtjkcuJAJUDBRA1ol5TZWCprDT5+dUBATzXA/9h
/ZUuhoRKTWViaistGJfWi26FB/Km5nDQBr/Erw3XksQCMwTLyEugg6dahQ1u9Y5E
5tKPxbB69eF+7JXVHE/z3zizR6VL3sdRx74TPacPsdhZRjChEQc0htLLYAPkJrFP
VAzAlSlm7qd+MXf8fJovQs6xPtZJXukQukPNlhqZ94kAPwMFEDSH/kF4tXKgazlt
bxECfk4AoO+VaFVfguUkWX10pPSSfvPyPKqiAJ4xn8RSIe1ttmnqkkDMhLh00mKj
lLQuSm9uYXRoYW4gTS4gQnJlc2xlciA8Sm9uYXRoYW4uQnJlc2xlckBVU2kubmV0
PokAlQMFEDXbdSkB213Sl+Y43QEBV/4D/RLJNTrtAqJ1ATxXWv9g8Cr3/YF0GTmx
5dIrJOpBup7eSSmiM/BL9Is4YMsoVbXCI/8TqA67TMICvq35PZU4wboQB8DqBAr+
gQ8578M7Ekw1OAF6JXY6AF2P8k7hMcVBcVOACELPT/NyPNByG5QRDoNmlsokJaWU
/2ls4QSBZZlb
=zbCw
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>
@ -219,23 +228,29 @@ Jordan K. Hubbard &lt;jkh@FreeBSD.org&gt;
Fingerprint = 3C F2 27 7E 4A 6C 09 0A 4B C9 47 CD 4F 4D 0B 20
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.2i
Version: 2.6.3ia
mQCNAzFjX0IAAAEEAML+nm9/kDNPp43ZUZGjYkm2QLtoC1Wxr8JulZXqk7qmhYcQ
jvX+fyoriJ6/7ZlnLe2oG5j9tZOnRLPvMaz0g9CpW6Dz3nkXrNPkmOFV9B8D94Mk
tyFeRJFqnkCuqBj6D+H8FtBwEeeTecSh2tJ0bZZTXnAMhxeOdvUVW/uOVC1dAAUR
tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPokAlQMFEDF75D1r
WmeNgbKneQEBXtcD+gJIv8JzZRKlDZyTCQanK8iRgE+zMhxptI0kDObaGxT1BrpY
4/EPyiUN10G4k2Jb+DOc8Lg2xDQ3xmvgipFf9NMNV/ThaEuZ3wA31I6tW/arQEqB
Tp8u6T3v20m62t7Afo9HaoE6MBpHQUk2TilxgAd5P57sporL3pgW9YojIO9ziQCV
AwUQMXyV2h9/qQgDWPy9AQEMfgP/RmbSg2WlesATUQ4WuanjcdREduKPyfQatrXD
2xt+jg9X78dTyiNN1YvLqvT6msfs04MKSC0hA2mou6ozw8Xak+1QmP0fBOZKp9pP
8szO188Do9ByzJPvHF1eXT7jFMOXVq8ZIl9iwjxcIDLzlxOz49DC7LO6AT+LKQk7
UGeP+lqJAJUDBRAxe+UG9RVb+45ULV0BAXZ9A/9F9gLpGukVNkeOjaqxQdJGTS+a
xh/Abk0c/nKhAEyxpAl5JyQ3ifYk6BHhPvlTi9LrZoXGA8sk/eU4eRTZVzvGEC4G
+xsavlE/xzku8855QTLPpkCunUpQeu1wzaIrUUE6Zjh05imFbJYyQOBgTFpuqWsC
rsUpl+2mr8IGIxG5rA==
=LW9i
tCNKb3JkYW4gSy4gSHViYmFyZCA8amtoQEZyZWVCU0Qub3JnPokBFQMFEDXCTXQM
j46yp4IfPQEBwO8IAIN0J09AXBf86dFUTFGcAMrEQqOF5IL+KGorAjzuYxERhKfD
ZV7jA+sCQqxkWfcVcE20kVyVYqzZIkio9a5zXP6TwA247JkPt54S1PmMDYHNlRIY
laXlNoji+4q3HP2DfHqXRT2859rYpm/fG/v6pWkos5voPKcZ2OFEp9W+Ap88oqw+
5rx4VetZNJq1Epmis4INj6XqNqj85+MOOIYE+f445ohDM6B/Mxazd6cHFGGIR+az
VjZ6lCDMLjzhB5+FqfrDLYuMjqkMTR5z9DL+psUvPlCkYbQ11NEWtEmiIWjUcNJN
GCxGzv5bXk0XPu3ADwbPkFE2usW1cSM7AQFiwuyJAJUDBRAxe+Q9a1pnjYGyp3kB
AV7XA/oCSL/Cc2USpQ2ckwkGpyvIkYBPszIcabSNJAzm2hsU9Qa6WOPxD8olDddB
uJNiW/gznPC4NsQ0N8Zr4IqRX/TTDVf04WhLmd8AN9SOrVv2q0BKgU6fLuk979tJ
utrewH6PR2qBOjAaR0FJNk4pcYAHeT+e7KaKy96YFvWKIyDvc4kAlQMFEDF8ldof
f6kIA1j8vQEBDH4D/0Zm0oNlpXrAE1EOFrmp43HURHbij8n0Gra1w9sbfo4PV+/H
U8ojTdWLy6r0+prH7NODCkgtIQNpqLuqM8PF2pPtUJj9HwTmSqfaT/LMztfPA6PQ
csyT7xxdXl0+4xTDl1avGSJfYsI8XCAy85cTs+PQwuyzugE/iykJO1Bnj/paiQCV
AwUQMXvlBvUVW/uOVC1dAQF2fQP/RfYC6RrpFTZHjo2qsUHSRk0vmsYfwG5NHP5y
oQBMsaQJeSckN4n2JOgR4T75U4vS62aFxgPLJP3lOHkU2Vc7xhAuBvsbGr5RP8c5
LvPOeUEyz6ZArp1KUHrtcM2iK1FBOmY4dOYphWyWMkDgYExabqlrAq7FKZftpq/C
BiMRuaw=
=C/Jw
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>
@ -252,27 +267,30 @@ Version: 2.6.3ia
mQCNAzAdpMIAAAEEALHDgrFUwhZtb7PbXg3upELoDVEUPFRwnmpJH1rRqyROUGcI
ooVe7u+FQlIs5OsXK8ECs/5Wpe2UrZSzHvjwBYOND5H42YtI5UULZLRCo5bFfTVA
K9Rpo5icfTsYihrzU2nmnycwFMk+jYXyT/ZDYWDP/BM9iLjj0x9/qQgDWPy9AAUR
tCNQb3VsLUhlbm5pbmcgS2FtcCA8cGhrQEZyZWVCU0Qub3JnPokAlQMFEDMGK9qz
WmLrWZ8yPQEB4iED/18bQVhV2gUYFSxIUTaUtO2HVPi7GRpSzmXoTfS+FJyRR0ED
zTqTHstoBe2PeWgTsOf9cUub5UKcJkRQp7VrJv4Kncyuq7pX69a+QMveCzuUwAur
nDbt/emOL6NU8g9Uk50QuOuipb5rULQLRRoF5TkViy/VES83ERXdYQ9Ml3fWiQCV
AwUQMX6NfWtaZ42Bsqd5AQEKsgP+L+uLz95dRdEmnZ+omrO+tYZM/0jHU7i8yC5q
H0gguKOCljI4liR7NkqKONUJWYtfsTB81d9iSosBZRrTx6i/hB8l8kOB975n/f9S
hftFwmjLYCNMFlDM4j0kySvMV20UZjAyv9BeE51VWlIZ5n/oeSuzul3Znow02tF/
zVnInJiJAJUDBRAxfJXn9RVb+45ULV0BAXJ8A/9K6NT6VLZZC5q3g7bBk5DWuzBS
3oK2Ebww6xzsD2R9edltoz1J3GPngK0CWpHh4kw5iTaRWoC2YJYRNG6icnGvlMAl
1/urqQHJVhxATINm8oljDKsj1RBJ6VKBzNbCJIHTVpX0AJoqUQX2Idi8goFr0fAm
7cD2CBb1JhoAdzEfO4kAlQMFEDFLHlwff6kIA1j8vQEBj5MD/1hA8hJdhpL7mvQj
rTAIn6Ldr08Lr1lqTaKSBMdCL3suGlW0Sw/dIBgicPDhgxLahT3DVfGiIst32FSl
xmWY7wine80X4TZkJ9Hiw3Mpqtjl92j6zHNq0ZZE+CceNubpEdYLDqokAIMPdWlo
WPHZcPxCs5PKI5udseFYF2gQAjI2iQCVAwUQMTlDoO9huekR1Y7VAQGy+AP/Rzp+
UGtJavbSiPx5EnXOXxkA/+ulXQgQG9vdkWwewkvxDNOzHW3KkUWCGtPtIMENznbF
j3QlYB+USIaf1ogvlD5EdXGPDfTINpE8CX2WXzajfgYFpYETDzduwjoWDZfEN9zZ
fQqQS62VgAReOIz3k9BL708z/+WUO0++RLGCmImJAJUDBRAw5q8kAPLZCeu7G0EB
AT3bBACwo+r9TgbiSyyU5cZpq5KgGT1c7eUHXjtxKmtrXD1nFNJ6j7x2DM2XGe6B
YOfDWbFq4UkEAyAeXviuuUP4enQu1v2g7JGXeuI8bRM519pLdPzDq/DnbA4rNStn
/SkH7awMfNSplcFuE6rc5ezVkw17eOHzDrYmwsFavL9gxZEycg==
=Q45T
tCNQb3VsLUhlbm5pbmcgS2FtcCA8cGhrQEZyZWVCU0Qub3JnPokAlQMFEDQQ0aZ1
u244dqP3sQEBu4ID/jXFFeJgs2MdTDNOZM/FbfDhI4qxAbYUsqS3+Ra16yd8Wd/A
jV+IHJE2NomFWl8UrUjCGinXiwzPgK1OfFJrS9Og1wQLvAl0X84BA8MTP9BQr4w7
6I/RbksgUSrVCIO8MJwlydjSPocWGBeXlVjbZxXzyuJk7H+TG+zuI5BuBcNIiQCV
AwUQMwYr2rNaYutZnzI9AQHiIQP/XxtBWFXaBRgVLEhRNpS07YdU+LsZGlLOZehN
9L4UnJFHQQPNOpMey2gF7Y95aBOw5/1xS5vlQpwmRFCntWsm/gqdzK6rulfr1r5A
y94LO5TAC6ucNu396Y4vo1TyD1STnRC466KlvmtQtAtFGgXlORWLL9URLzcRFd1h
D0yXd9aJAJUDBRAxfo19a1pnjYGyp3kBAQqyA/4v64vP3l1F0Sadn6ias761hkz/
SMdTuLzILmofSCC4o4KWMjiWJHs2Soo41QlZi1+xMHzV32JKiwFlGtPHqL+EHyXy
Q4H3vmf9/1KF+0XCaMtgI0wWUMziPSTJK8xXbRRmMDK/0F4TnVVaUhnmf+h5K7O6
XdmejDTa0X/NWcicmIkAlQMFEDF8lef1FVv7jlQtXQEBcnwD/0ro1PpUtlkLmreD
tsGTkNa7MFLegrYRvDDrHOwPZH152W2jPUncY+eArQJakeHiTDmJNpFagLZglhE0
bqJyca+UwCXX+6upAclWHEBMg2byiWMMqyPVEEnpUoHM1sIkgdNWlfQAmipRBfYh
2LyCgWvR8CbtwPYIFvUmGgB3MR87iQCVAwUQMUseXB9/qQgDWPy9AQGPkwP/WEDy
El2Gkvua9COtMAifot2vTwuvWWpNopIEx0Ivey4aVbRLD90gGCJw8OGDEtqFPcNV
8aIiy3fYVKXGZZjvCKd7zRfhNmQn0eLDcymq2OX3aPrMc2rRlkT4Jx425ukR1gsO
qiQAgw91aWhY8dlw/EKzk8ojm52x4VgXaBACMjaJAJUDBRAxOUOg72G56RHVjtUB
AbL4A/9HOn5Qa0lq9tKI/HkSdc5fGQD/66VdCBAb292RbB7CS/EM07MdbcqRRYIa
0+0gwQ3OdsWPdCVgH5RIhp/WiC+UPkR1cY8N9Mg2kTwJfZZfNqN+BgWlgRMPN27C
OhYNl8Q33Nl9CpBLrZWABF44jPeT0EvvTzP/5ZQ7T75EsYKYiYkAlQMFEDDmryQA
8tkJ67sbQQEBPdsEALCj6v1OBuJLLJTlxmmrkqAZPVzt5QdeO3Eqa2tcPWcU0nqP
vHYMzZcZ7oFg58NZsWrhSQQDIB5e+K65Q/h6dC7W/aDskZd64jxtEznX2kt0/MOr
8OdsDis1K2f9KQftrAx81KmVwW4Tqtzl7NWTDXt44fMOtibCwVq8v2DFkTJy
=JKbP
-----END PGP PUBLIC KEY BLOCK-----</programlisting>
</sect2>

View file

@ -47,7 +47,9 @@ MAINTAINER= email-addresses</programlisting>
<sect1>
<title>Contributed Software</title>
<para><emphasis>Contributed by &a.phk; and &a.obrien;. </emphasis></para>
<para>June 1996.</para>
<para>Some parts of the FreeBSD distribution consist of software that
@ -75,7 +77,18 @@ MAINTAINER= email-addresses</programlisting>
only with the approval of the core team and with the general
consensus of the other developers. The ability to maintain the
package in the future will be a key issue in the decisions.</para>
<note>
<para>Because of some unfortunate design limitations with the RCS file
format and CVS's use of vendor branches, minor, trivial and/or
cosmetic changes are <emphasis>strongly discouraged</emphasis> on
files that are still tracking the vendor branch. &ldquo;Spelling
fixes&rdquo; are explicitly included here under the
&ldquo;cosmetic&rdquo; category and are to be avoided for files with
revision 1.1.x.x. The repository bloat impact from a single character
change can be rather dramatic.</para>
</note>
<para>The <application>Tcl</application> embedded programming
language will be used as example of how this model works:</para>
@ -104,14 +117,14 @@ MAINTAINER= email-addresses</programlisting>
<para>The important thing here is that the
<filename>src/contrib/tcl</filename> directory is created according
to the rules: It is supposed to contain the sources as distributed
(on a proper CVS vendor-branch) with as few FreeBSD-specific changes
(on a proper CVS vendor-branch and without RCS keyword expansion) with as few FreeBSD-specific changes
as possible. The 'easy-import' tool on freefall will assist in
doing the import, but if there are any doubts on how to go about it,
it is imperative that you ask first and not blunder ahead and hope
it &ldquo;works out&rdquo;. CVS is not forgiving of import accidents and a fair
amount of effort is required to back out major mistakes.</para>
<para>Because of some unfortunate design limitations with CVS's vendor
<para>Because of the previously mentioned design limitations with CVS's vendor
branches, it is required that &ldquo;official&rdquo; patches from the vendor be
applied to the original distributed sources and the result
re-imported onto the vendor branch again. Official patches should

View file

@ -38,7 +38,13 @@
client/server software such as <command>pppd</command>. Unless otherwise stated, all
commands in this section should be executed as root.</para>
<para>There are a large number of enhancements in version 2 of ppp. You
can discover what version you have by running ppp with no arguments
and typing <command>show version</command> at the prompt. It is a
simple matter to upgrade to the latest version of ppp (under any
version of FreeBSD) by downloading the latest archive via <ulink
url="http://www.Awfulhak.org/ppp.html">www.Awfulhak.org</ulink>.</para>
<sect2>
<title>Before you start</title>
@ -65,42 +71,45 @@
login/password pair.</para>
</listitem>
<listitem>
<para>The IP address of your ISP's gateway. The gateway is
the machine to which you will connect and will be set up as
your &ldquo;default route&rdquo;. If your
ISP hasn't given you this number, don't worry. We can make
one up and your ISP's PPP server will tell us when we
connect.</para>
<para>This number is known from now on as
<literal>HISADDR</literal>.</para>
</listitem>
<listitem>
<para>Your ISP's netmask setting. Again, if your ISP hasn't
given you this information, you can safely use a netmask of
<hostid role="netmask">255.255.255.0</hostid>.</para>
</listitem>
<listitem>
<para>The IP addresses of one or more nameservers. Normally,
you will be given two IP numbers. You
<emphasis>must</emphasis> have this information unless you run
your own nameserver.</para>
<emphasis>must</emphasis> have this information for
<application>PPP</application> version 1.x unless you run
your own nameserver. From version 2 onwards,
<application>PPP</application> supports nameserver address
negotiation. If your ISP supports this, then using the command
<command>enable dns</command> in your config file will tell
<application>PPP</application> to set the nameservers for
you.</para>
</listitem>
</itemizedlist>
<para>The following information may have been supplied by your ISP,
but is not strictly necessary:</para>
<itemizedlist>
<listitem>
<para>The IP address of your ISP's gateway. The gateway is the
machine to which you will connect and will be set up as your
<emphasis>default route</emphasis>. If your ISP hasn't given
you this number, we can make one up and your ISP's PPP server
will tell us the correct value when we connect.</para>
<listitem>
<para>If your ISP allocates you a static IP address and
hostname then you will need this information too. If not,
you will need to know from what range of IP addresses your
allocated IP address will belong. If you haven't been given
this range, don't worry. You can configure <command>ppp</command> to accept any
IP number (as explained later).</para>
</listitem>
</itemizedlist>
<para>This IP number is referred to as <literal>HISADDR</literal>
by ppp.</para>
</listitem>
<listitem>
<para>Your ISP's netmask. If your ISP hasn't given you this
information, you can safely use a netmask of <hostid
role="netmask">255.255.255.0</hostid>.</para>
<para>If your ISP allocates you a static IP address and hostname
then you can enter this information. Otherwise, we simply let the
peer assign whatever IP number it sees fit.</para>
</listitem>
</itemizedlist>
<para>If you do not have any of the required information, contact
your ISP and make sure they provide it to you.</para>
@ -148,11 +157,14 @@ tun0: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
tun1: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 576
tun2: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
inet 203.10.100.1 --&gt; 203.10.100.20 netmask 0xffffffff
tun3: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
tun3: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</screen>
</informalexample>
<para>This case shows four tunnel devices, two of which are
currently configured and being used.</para>
currently configured and being used. It should be noted that the
<literal>RUNNING</literal> flag above indicates that the interface has
been used at some point&mdash;it is not an error if your interface does
not show up as <literal>RUNNING</literal>.</para>
<para>If you have a kernel without the tun device, and you can not
rebuild it for some reason, all is not lost. You should be able
@ -200,7 +212,14 @@ tun3: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
</informalexample>
<para>The <literal>RUNNING</literal> flag may not yet be set, in which
case you will see:</para>
<informalexample>
<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8010&lt;POINTOPOINT,MULTICAST> mtu 1500</screen>
</informalexample>
</sect2>
<sect2>
@ -228,7 +247,9 @@ tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
<sect3>
<title>Edit the <filename>/etc/host.conf</filename> file</title>
<para>This file should contain the following two lines:</para>
<para>This file should contain the following two lines (in this
order):</para>
<programlisting>
hosts
@ -286,7 +307,13 @@ domain <replaceable>bar.com</replaceable></programlisting>
domain, and is probably unnecessary. Refer to the <filename>resolv.conf</filename>
manual page for details of other possible entries in this
file.</para>
<para>If you are running PPP version 2 or greater, the <command>enable
dns</command> command will tell PPP to request that your ISP
confirms the nameserver values. If your ISP supplies different
addresses (or if there are no nameserver lines in
<filename>/etc/resolv.conf</filename>), PPP will rewrite the file
with the ISP-supplied values.</para>
</sect3>
</sect2>
@ -328,12 +355,11 @@ domain <replaceable>bar.com</replaceable></programlisting>
4 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0 OK-AT-OK \\dATDT\\TTIMEOUT 40 CONNECT"
5 provider:
6 set phone "(0123) 456 7890"
7 set login "TIMEOUT 10 gin:-BREAK-gin: foo word: bar col: ppp"
7 set login "TIMEOUT 10 \"\" \"\" gin:--gin: foo word: bar col: ppp"
8 set timeout 300
9 deny lqr
10 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable>
11 delete ALL
12 add 0 0 HISADDR</programlisting>
9 set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable> 255.255.255.0 0.0.0.0
10 add default HISADDR
11 enable dns</programlisting>
<para>Do not include the line numbers, they are
just for reference in this discussion.</para>
@ -415,7 +441,11 @@ protocol: ppp</screen>
</informalexample>
<para>You will need to alter this script to suit your own
needs. If you're using PAP or CHAP, there will be no
needs. When you write this script for the first time,
you should enable &ldquo;chat&rdquo; logging to ensure that
the conversation is going as expected.</para>
<para>If you're using PAP or CHAP, there will be no
login at this point, so your login string can be left
blank. See
<link linkend="userppp-PAPnCHAP">PAP and CHAP
@ -435,26 +465,6 @@ protocol: ppp</screen>
<varlistentry><term>Line 9:</term>
<listitem>
<para><command>ppp</command> can be configured to exchange Link Quality
Report (LQR) packets. These packets describe how good
the physical link is. <command>ppp</command>'s LQR strategy is to close
the connection when a number of these packets are
missed. This is useful when you have a direct serial
link to another machine and the DSR modem signal is not
available to indicate that the line is up. When data
saturates the line, LQR packets are sometimes
&ldquo;missed&rdquo;, causing <command>ppp</command> to close the connection
prematurely. Refusing to negotiate lqr is sometimes
prudent (if you are going through a modem) as it avoids
this whole mess. By default, <command>ppp</command> will not attempt to
negotiate LQR, but will accept LQR negotiation from the
peer.</para>
</listitem>
</varlistentry>
<varlistentry><term>Line 10:</term>
<listitem>
<para>Sets the interface addresses. The string <replaceable>x.x.x.x</replaceable>
should be replaced by the IP address that your provider
@ -473,17 +483,7 @@ protocol: ppp</screen>
</listitem>
</varlistentry>
<varlistentry><term>Line 11:</term>
<listitem>
<para>Deletes all existing routing table entries for the
acquired tun device. This should not normally be
necessary, but will make sure that <command>ppp</command> is starting with
a clean bill of health.</para>
</listitem>
</varlistentry>
<varlistentry><term>Line 12:</term>
<varlistentry><term>Line 10:</term>
<listitem>
<para>Adds a default route to your ISPs gateway. The
@ -492,9 +492,21 @@ protocol: ppp</screen>
important that this line appears after line 9, otherwise
<literal>HISADDR</literal> will not yet be
initialized.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Line 11:</term>
<listitem>
<para>This line tells PPP to ask your ISP to confirm that your
nameserver addresses are correct. If your ISP supports this
facility, PPP can then update
<filename>/etc/resolv.conf</filename> with the correct
nameserver entries.</para>
</listitem>
</varlistentry>
</variablelist>
<para>It is not necessary to add an entry to
@ -522,7 +534,7 @@ protocol: ppp</screen>
Static IP addresses</link>, with the following change:</para>
<programlisting>
10 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
9 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0</programlisting>
<para>Again, do not include the line numbers, they are just for
reference in this discussion. Indentation of at least one space
@ -530,34 +542,28 @@ protocol: ppp</screen>
<variablelist>
<varlistentry><term>Line 10:</term>
<varlistentry><term>Line 9:</term>
<listitem>
<para>The number after the <literal>/</literal> character is the number
of bits of the address that ppp will insist on. You may
wish to use IP numbers more appropriate to your
circumstances, but the above example will almost always
work. If it fails, you may be able to defeat some
broken ppp implementations by supplying an additional
<literal>0.0.0.0</literal> argument:</para>
<programlisting>
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
<para>This tells ppp to negotiate using address <hostid
role="ipaddr">0.0.0.0</hostid> rather than <hostid
role="ipaddr">10.0.0.1</hostid>. Do not use <hostid
role="netmask">0.0.0.0/0</hostid> as the first argument
to <command>set ifaddr</command> as it
prevents <command>ppp</command> from setting up an initial route in
<option>-auto</option> and <option>-ddial</option>
mode.</para>
circumstances, but the above example will always
work.</para>
<para>The last argument (<literal>0.0.0.0</literal>) tells PPP
to negotiate using address <hostid
role="ipaddr">0.0.0.0</hostid> rather than <hostid
role="ipaddr">10.0.0.1</hostid>. Do not use
<literal>0.0.0.0</literal> as the first argument to
<command>set ifaddr</command> as it prevents PPP from setting
up an intial route in <option>-auto</option> mode.</para>
</listitem>
</varlistentry>
</variablelist>
<para>You will also need to create an entry in
<para>If you are running version 1.x of PPP, uou will also need to create an entry in
<filename>/etc/ppp/ppp.linkup</filename>.
<filename>ppp.linkup</filename> is used after a connection has
been established. At this point, <command>ppp</command> will know what IP
@ -611,7 +617,14 @@ set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
<filename>/etc/ppp/ppp.conf.sample</filename> and
<filename>/etc/ppp/ppp.linkup.sample</filename> for a detailed
example.</para>
<para>Version 2 of PPP introduces &ldquo;sticky routes&rdquo;. Any
<literal>add</literal> or <literal>delete</literal> lines that
contain <literal>MYADDR</literal> or <literal>HISADDR</literal> will
be remembered, and any time the actual values of
<literal>MYADDR</literal> or <literal>HISADDR</literal> change, the
routes will be re-applied. This removes the necessity of repeating
these lines in <filename>ppp.linkup</filename>.</para>
</sect3>
<sect3>
@ -621,24 +634,21 @@ set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
role.</para>
<para>When you configure <command>ppp</command> to
receive incoming calls, you must decide whether you wish to
forward packets for just PPP
connections, for all interfaces, or not at all. To forward for
just PPP connections, include the line
receive incoming calls on a machine connected to a LAN, you must decide if you wish to
forward packets to the LAN. If you do, you should allocate the
peer an IP number from your LAN's subet, and use the command
<programlisting>
enable proxy</programlisting>
in your <filename>ppp.conf</filename> file. If you wish to
forward packets on all interfaces, use the
in your <filename>ppp.conf</filename> file. You should also
confirm that the <filename>/etc/rc.conf</filename> file (this file
used to be called <filename>/etc/sysconfig</filename>) contains the
following:</para>
<programlisting>
gateway=YES</programlisting>
option in <filename>/etc/rc.conf</filename> (this file used
to be called <filename>/etc/sysconfig</filename>).</para>
<sect4>
<title>Which getty?</title>
@ -672,7 +682,16 @@ gateway=YES</programlisting>
permission to run <command>ppp</command> by adding them to the
<username>network</username> group in
<filename>/etc/group</filename>.</para>
<para>You will also need to give them access to one or more sections
of the configuration file using the <command>allow</command>
command:</para>
<programlisting>
allow users fred mary</programlisting>
<para>If this command is used in the <literal>default</literal>
section, it gives the specified users access to everything.</para>
</sect4>
<sect4>
@ -702,7 +721,7 @@ exec /usr/sbin/ppp -direct $IDENT</programlisting>
using the following commands:</para>
<informalexample>
<screen>&prompt.root; <userinput>ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
<screen>&prompt.root; <userinput>ln -s ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
</informalexample>
<para>You should use this script as the
@ -855,9 +874,6 @@ mary:
<programlisting>
#!/bin/sh
TTY=`tty`
IDENT=`basename $TTY`
exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
<para>For each dialup line enabled in
@ -867,14 +883,9 @@ exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
above.</para>
<programlisting>
papttyd0:
enable pap
set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
enable proxy
papttyd1:
enable pap
set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
pap:
enable pap
set ifaddr 203.14.100.1 203.14.100.20-203.14.100.40
enable proxy</programlisting>
<para>Each user logging in with this method will need to have
@ -886,36 +897,43 @@ papttyd1:
enable passwdauth</programlisting>
<para>option to authenticate users via pap from the
<filename>/etc/password</filename>d file<footnote><para>(*) Note this option only available in 2.2-961014-SNAP
or later, or by getting the updated ppp code for 2.1.x. (see
MS extensions below for details)</para>
</footnote>.</para>
<filename>/etc/password</filename> file.</para>
<para>If you wish to assign some users a static IP number, you can
specify the number as the third argument in
<filename>/etc/ppp/ppp.secret</filename>. See
<filename>/etc/ppp/ppp.secret.sample</filename> for
examples.</para>
</sect5>
<sect5>
<title>MS extentions</title>
<para>From 2.2-961014-SNAP onwards it is possible to allow the
automatic negotiation of DNS and NetBIOS name servers with
clients supporting this feature (namely Win95/NT clients).
See RFC1877 for more details on the protocol.</para>
<para>An example of enabling these extensions in your
<filename>/etc/ppp/ppp.conf</filename> file is illustrated
below.</para>
<para>It is possible to configure PPP to supply DNS and NetBIOS
nameserver addresses on demand.</para>
<para>To enable these extensions with PPP version 1.x, the
following lines might be added to the relevant section of
<filename>/etc/ppp/ppp.conf</filename>.</para>
<programlisting>
default:
set debug phase lcp chat
set timeout 0
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
<para>And for PPP version 2 and above:</para>
<programlisting>
accept dns
set dns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
<para>This will tell the clients the primary and secondary
name server addresses, and a netbios nameserver host.</para>
<para>In version 2 and above, if the <literal>set dns</literal>
line is ommitted, PPP will use the values found in
<filename>/etc/resolv.conf</filename>.</para>
</sect5>
</sect4>
</sect3>
@ -932,7 +950,7 @@ default:
<para>PAP is less secure than CHAP, but security is not normally
an issue here as passwords, although being sent as plain text
with PAP, are being transmitted down a serial line only.
There's not much room for hackers to &ldquo;eavesdrop&rdquo;.</para>
There's not much room for crackers to &ldquo;eavesdrop&rdquo;.</para>
<para>Referring back to the <link linkend="userppp-staticIP">PPP and Static IP addresses</link> or <link
linkend="userppp-dynamicIP">PPP and Dynamic IP
@ -942,8 +960,8 @@ default:
<programlisting>
7 set login
&hellip;
13 set authname <replaceable>MyUserName</replaceable>
14 set authkey <replaceable>MyPassword</replaceable></programlisting>
12 set authname <replaceable>MyUserName</replaceable>
13 set authkey <replaceable>MyPassword</replaceable></programlisting>
<para>As always, do not include the line numbers, they are just
for reference in this discussion. Indentation of at least one
@ -959,7 +977,7 @@ default:
</listitem>
</varlistentry>
<varlistentry><term>Line 13:</term>
<varlistentry><term>Line 12:</term>
<listitem>
<para>This line specifies your PAP/CHAP user name. You
@ -968,7 +986,7 @@ default:
</listitem>
</varlistentry>
<varlistentry><term>Line 14:</term>
<varlistentry><term>Line 13:</term>
<listitem>
<para>This line specifies your PAP/CHAP password. You
@ -980,56 +998,29 @@ default:
<programlisting>
15 accept CHAP</programlisting> to make it obvious that this is the
intention, but PAP and CHAP are accepted by
intention, but PAP and CHAP are both accepted by
default.</para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>Your <literal>authkey</literal> will be logged
if you have command logging turned on (<command>set log
+command</command>). Care should be taken when deciding the
ppp log file permissions.</para>
</note>
</sect3>
<sect3>
<title>Changing your <command>ppp</command> configuration on the fly</title>
<para>It is possible to talk to the <command>ppp</command> program while it is
running in the background, but only if a suitable password has
been set up.</para>
<para>By default, ppp will listen to a TCP port of 3000 +
<replaceable>tunno</replaceable>, where <replaceable>tunno</replaceable> is the number of the tun device
acquired, however, if a password for the local machine is not
set up in <filename>/etc/ppp/ppp.secret</filename>, no server
connection will be created. To set your password, put the
following line in
<filename>/etc/ppp/ppp.secret</filename>:</para>
<programlisting>
<replaceable>foo</replaceable> <replaceable>MyPassword</replaceable></programlisting>
<para><replaceable>foo</replaceable> is your local
hostname (run <command>hostname -s</command> to determine the
correct name), and <replaceable>MyPassword</replaceable> is
the unencrypted password that you wish to use.
<filename>/etc/ppp/ppp.secret</filename> should
<emphasis>not</emphasis> be accessable by anyone without user id
<username>0</username>. This means that <filename>/</filename>,
<filename>/etc</filename> and <filename>/etc/ppp</filename>
should not be writable, and <filename>ppp.secret</filename>
should be owned by user id <username>0</username> and have permissions 0600.</para>
<para>It is also possible to select a specific port number or to
have ppp listen to a local unix domain socket rather than to a
TCP socket. Refer to the <command>set
socket</command> command in manual page for further
details.</para>
running in the background, but only if a suitable diagnostic port has
been set up. To do this, add the following line to your
configuration:</para>
<programlisting>
set server /var/run/ppp-tun%d DiagnosticPassword 0177</programlisting>
<para>This will tell PPP to listen to the specified unix-domain
socket, asking clients for the specified password before allowing
access. The <literal>%d</literal> in the name is replaced with teh
tun device number that is in use.</para>
<para>Once a socket has been set up, the
<citerefentry><refentrytitle>pppctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> program may be used in scripts that
@ -1230,8 +1221,8 @@ sendmail_flags="-bd"</programlisting>
<sect2>
<title>Acknowledgments</title>
<para>This section of the handbook was last updated on Sun Sep 7,
1997 by &a.brian;</para>
<para>This section of the handbook was last updated on Monday Aug 10,
1998 by &a.brian;</para>
<para>Thanks to the following for their input, comments &amp;
suggestions:</para>

View file

@ -3969,7 +3969,11 @@ done
linkend="printing-simple">Simple Printer Setup</link>. Do
any advanced setup in <link linkend="printing-advanced">Advanced Printer Setup</link> that you need. Make sure to
test the printer and see if it works with the features of LPD
you have enabled.</para>
you have enabled. Also ensure that the <emphasis>local
host</emphasis> has authorization to use the LPD service in the
<emphasis>remote host</emphasis> (see <link
linkend="printing-advanced-restricting-remote">Restricting Jobs
from Remote Printers</link>).</para>
<para>If you are using a printer with a network interface that is
compatible with LPD, then the <emphasis>printer host</emphasis>

View file

@ -440,8 +440,8 @@ permit port ttyd0</programlisting>
software, please <emphasis>do not</emphasis> get it from a USA or
Canada site. You will get that site in <emphasis>big</emphasis>
trouble! A legal copy of this is available from
<hostid role="fqdn">skeleton.mikom.csir.co.za</hostid>, which is in South
Africa.</para>
<hostid role="fqdn">ftp.internat.freebsd.org</hostid>, which is in
South Africa and an official FreeBSD mirror site.</para>
<sect2>
@ -464,7 +464,7 @@ README krb.conf krb.realms</screen>
<filename>principal.*</filename> or <filename>master_key</filename>)
exist, then use the <command>kdb_destroy</command> command to
destroy the old Kerberos database, of if Kerberos is not running,
simply delete the extra files with <command>rm</command>.</para>
simply delete the extra files.</para>
<para>You should now edit the <filename>krb.conf</filename> and
<filename>krb.realms</filename> files to define your Kerberos
@ -939,10 +939,10 @@ FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995</screen>
<para>It may help, but a poorly setup firewall system is more of a
security risk than not having one at all. A firewall can only add
another layer of security to your systems, but they will not be
able to stop a really determined hacker from penetrating your
able to stop a really determined cracker from penetrating your
internal network. If you let internal security lapse because you
believe your firewall to be impenetrable, you have just made the
hackers job that bit easier.</para>
crackers job that bit easier.</para>
</note>
@ -1534,20 +1534,20 @@ FreeBSD BUILT-19950429 (GR386) #0: Sat Apr 29 17:50:09 SAT 1995</screen>
<title>Example commands for ipfw</title>
<para>This command will deny all packets from the host
<hostid role="fqdn">evil.hacker.org</hostid> to the telnet port of the
<hostid role="fqdn">evil.crackers.org</hostid> to the telnet port of the
host <hostid role="fqdn">nice.people.org</hostid> by being forwarded by
the router:</para>
<informalexample>
<screen>&prompt.root <userinput>ipfw add deny tcp from evil.hacker.org to nice.people.org 23</userinput></screen>
<screen>&prompt.root <userinput>ipfw add deny tcp from evil.crackers.org to nice.people.org 23</userinput></screen>
</informalexample>
<para>The next example denies and logs any TCP traffic from the
entire <hostid role="domainname">hacker.org</hostid> network (a class C) to the
entire <hostid role="domainname">crackers.org</hostid> network (a class C) to the
<hostid role="fqdn">nice.people.org</hostid> machine (any port).</para>
<informalexample>
<screen>&prompt.root; <userinput>ipfw add deny log tcp from evil.hacker.org/24 to nice.people.org</userinput></screen>
<screen>&prompt.root; <userinput>ipfw add deny log tcp from evil.crackers.org/24 to nice.people.org</userinput></screen>
</informalexample>
<para>If you do not want people sending X sessions to your internal

View file

@ -30,10 +30,6 @@
<para>&a.ache;</para>
</listitem>
<listitem>
<para>&a.dyson;</para>
</listitem>
<listitem>
<para>&a.bde;</para>
</listitem>
@ -43,7 +39,7 @@
</listitem>
<listitem>
<para>&a.davidg;</para>
<para>&a.dg;</para>
</listitem>
<listitem>
@ -96,12 +92,14 @@
<para>These are the people who have commit privileges and do the
engineering work on the FreeBSD source tree. All core team members
and most FreeBSD Documentation project personnel are also
developers.</para>
are also developers.</para>
<itemizedlist>
<listitem>
<para>&a.ugen;</para>
</listitem>
<listitem>
<para>&a.mbarkah;</para>
</listitem>
@ -109,7 +107,15 @@
<listitem>
<para>&a.stb;</para>
</listitem>
<listitem>
<para>&a.pb;</para>
</listitem>
<listitem>
<para>&a.abial;</para>
</listitem>
<listitem>
<para>&a.jb;</para>
</listitem>
@ -117,15 +123,31 @@
<listitem>
<para>&a.torstenb;</para>
</listitem>
<listitem>
<para>&a.dburr;</para>
</listitem>
<listitem>
<para>&a.danny;</para>
</listitem>
<listitem>
<para>&a.thepish;</para>
</listitem>
<listitem>
<para>&a.charnier;</para>
</listitem>
<listitem>
<para>&a.luoqi;</para>
</listitem>
<listitem>
<para>&a.ejc;</para>
</listitem>
<listitem>
<para>&a.kjc;</para>
</listitem>
@ -141,7 +163,11 @@
<listitem>
<para>&a.adam;</para>
</listitem>
<listitem>
<para>&a.dillon;</para>
</listitem>
<listitem>
<para>&a.dufault;</para>
</listitem>
@ -222,14 +248,14 @@
<para>&a.hanai;</para>
</listitem>
<listitem>
<para>&a.ahasty;</para>
</listitem>
<listitem>
<para>&a.jhay;</para>
</listitem>
<listitem>
<para>&a.ghelmer;</para>
</listitem>
<listitem>
<para>&a.helbig;</para>
</listitem>
@ -237,19 +263,23 @@
<listitem>
<para>&a.erich;</para>
</listitem>
<listitem>
<para>&a.hosokawa;</para>
</listitem>
<listitem>
<para>&a.hsu;</para>
</listitem>
<listitem>
<para>&a.mph;</para>
</listitem>
<listitem>
<para>&a.itojun;</para>
</listitem>
<listitem>
<para>&a.ugen;</para>
</listitem>
<listitem>
<para>&a.gj;</para>
</listitem>
@ -269,7 +299,27 @@
<listitem>
<para>&a.andreas;</para>
</listitem>
<listitem>
<para>&a.motoyuki;</para>
</listitem>
<listitem>
<para>&a.jkoshy;</para>
</listitem>
<listitem>
<para>&a.kuriyama;</para>
</listitem>
<listitem>
<para>&a.grog;</para>
</listitem>
<listitem>
<para>&a.jlemon;</para>
</listitem>
<listitem>
<para>&a.imp;</para>
</listitem>
@ -281,11 +331,15 @@
<listitem>
<para>&a.mckay;</para>
</listitem>
<listitem>
<para>&a.jlemon;</para>
</listitem>
<listitem>
<para>&a.mckusick;</para>
</listitem>
<listitem>
<para>&a.ken;</para>
</listitem>
<listitem>
<para>&a.tedm;</para>
</listitem>
@ -305,7 +359,11 @@
<listitem>
<para>&a.alex;</para>
</listitem>
<listitem>
<para>&a.rnordier;</para>
</listitem>
<listitem>
<para>&a.davidn;</para>
</listitem>
@ -313,7 +371,11 @@
<listitem>
<para>&a.obrien;</para>
</listitem>
<listitem>
<para>&a.ljo;</para>
</listitem>
<listitem>
<para>&a.fsmp;</para>
</listitem>
@ -393,6 +455,10 @@
<listitem>
<para>&a.msmith;</para>
</listitem>
<listitem>
<para>&a.des;</para>
</listitem>
<listitem>
<para>&a.brian;</para>
@ -405,7 +471,11 @@
<listitem>
<para>&a.karl;</para>
</listitem>
<listitem>
<para>&a.dt;</para>
</listitem>
<listitem>
<para>&a.cwt;</para>
</listitem>
@ -418,10 +488,18 @@
<para>&a.hoek;</para>
</listitem>
<listitem>
<para>&a.nectar;</para>
</listitem>
<listitem>
<para>&a.swallace;</para>
</listitem>
<listitem>
<para>&a.dwhite;</para>
</listitem>
<listitem>
<para>&a.nate;</para>
</listitem>
@ -459,7 +537,7 @@
<variablelist>
<varlistentry><term>Documentation Project Manager</term>
<listitem>
<para>&a.jfieber;</para>
<para><emphasis>currently vacant</emphasis></para>
</listitem>
</varlistentry>
@ -467,10 +545,7 @@
<varlistentry><term>Webmaster</term>
<listitem>
<para>&a.mbarkah;</para>
<para><emphasis>Deputy:</emphasis> &a.paul;</para>
<para>&a.wosch;;</para>
</listitem>
</varlistentry>
@ -482,26 +557,6 @@
</listitem>
</varlistentry>
<varlistentry><term>Build Engineer</term>
<listitem>
<para>&a.paul;</para>
<para><emphasis>Deputy:</emphasis> &a.dave;</para>
</listitem>
</varlistentry>
<varlistentry><term>Mirror Manager</term>
<listitem>
<para>&a.ulf;</para>
<para><emphasis>Deputy:</emphasis> &a.john;</para>
</listitem>
</varlistentry>
<varlistentry><term>News Editor</term>
<listitem>
@ -511,7 +566,15 @@
</listitem>
</varlistentry>
<varlistentry>
<term>FreeBSD Really-Quick NewsLetter Editor</term>
<listitem>
<para>Chris Coleman <email>chrisc@vmunix.com</email></para>
</listitem>
</varlistentry>
<varlistentry><term>Gallery and Commercial Editor</term>
<listitem>
@ -525,10 +588,7 @@
<varlistentry><term>Style Police &amp; Art Director</term>
<listitem>
<para>&a.dave;</para>
<para><emphasis>Deputy:</emphasis> &a.opsys;</para>
<para>&a.opsys;</para>
</listitem>
</varlistentry>
@ -536,19 +596,13 @@
<listitem>
<para>&a.mayo;</para>
<para><emphasis>Deputy:</emphasis> &a.cracauer;</para>
</listitem>
</varlistentry>
<varlistentry><term>CGI Engineer</term>
<listitem>
<para>&a.cracauer;</para>
<para><emphasis>Deputy:</emphasis> &a.stb;</para>
<para>&a.stb;</para>
</listitem>
</varlistentry>
@ -556,11 +610,16 @@
<listitem>
<para>&a.nsj;</para>
<para><emphasis>Drying plates:</emphasis> &a.nik;</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LinuxDoc to DocBook conversion</term>
<listitem>
<para>&a.nik;</para>
</listitem>
</varlistentry>
</variablelist>
@ -573,20 +632,21 @@
<variablelist>
<varlistentry><term>Principal Architect</term>
<listitem>
<para>&a.davidg;</para>
<para>&a.dg;</para>
</listitem>
</varlistentry>
<varlistentry><term>Documentation Project Manager</term>
<varlistentry><term><ulink
url="http://www.freebsd.org/docproj/docproj.html">Documentation Project Manager</ulink></term>
<listitem>
<para>&a.jfieber;</para>
<para><emphasis>currently vacant</emphasis></para>
</listitem>
</varlistentry>
<varlistentry><term>Internationalization</term>
<varlistentry><term><link linkend="l10n">Internationalization</link></term>
<listitem>
<para>&a.ache;</para>
@ -602,7 +662,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Postmaster</term>
<varlistentry><term><link linkend="eresources-mail">Postmaster</link></term>
<listitem>
<para>&a.jmb;</para>
@ -627,7 +687,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Security Officer</term>
<varlistentry><term><ulink url="http://www.freebsd.org/security/">Security Officer</ulink></term>
<listitem>
<para>&a.guido;</para>
@ -635,7 +695,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Source Repository Managers</term>
<varlistentry><term><ulink url="http://www.freebsd.org/support.html#cvs">>Source Repository Managers</ulink></term>
<listitem>
<para>Principal: &a.peter;</para>
@ -647,7 +707,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Ports Manager</term>
<varlistentry><term><ulink url="http://www.freebsd.org/ports/">Ports Manager</ulink></term>
<listitem>
<para>&a.asami;</para>
@ -663,7 +723,7 @@
</listitem>
</varlistentry>
<varlistentry><term>Usenet Support</term>
<varlistentry><term><link linkend="eresources-news">Usenet Support</link></term>
<listitem>
<para>&a.joerg;</para>
@ -671,13 +731,20 @@
</listitem>
</varlistentry>
<varlistentry><term>GNATS Administrator</term>
<varlistentry><term><ulink url="http://www.freebsd.org/support.html#gnats">GNATS Administrator</ulink></term>
<listitem>
<para>&a.steve;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><ulink url="http://www.freebsd.org/internal/">Webmaster</ulink></term>
<listitem>
<para>&a.wosch;</para>
</listitem>
</varlistentry>
</variablelist>