Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 May 1996 12:58:45 -0600
From:      Sean Kelly <kelly@fsl.noaa.gov>
To:        cskinner@bml.ca
Cc:        doc@freebsd.org
Subject:   Re: FreeBSD 2.1 Documentation and Installation of "Everything" to 2.1 Gig drive.
Message-ID:  <9605221858.AA15748@fslg8.fsl.noaa.gov>
In-Reply-To: <199605221622.MAA05481@host.igs.net> (cskinner@bml.ca)

next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> "Chris" == "Chris K Skinner" <cskinner@bml.ca> writes:

    Chris> Dear documenting dudes for freebsd, Hi.  Nice job so far.

Thanks!

    Chris> Warning: I'm only a Dos/Windows C-programmin' dude with
    Chris> minimal UNIX going on in my head.

We'll work on fixing that ... :-)

    Chris> The learning curve for me is big because of the following:

    Chris> 1.  There are configuration files all over the place, each
    Chris> one with a different name or "file extension" and so on.

Most of the configuration files should all reside under /etc or in a
subdirectory under /etc.  Some programs will accept their config files
in other places as well---for example, the X Window server will look
in /etc/XF86Config as well as /usr/X11R6/lib/X11/XF86Config.

When you've got some software the gives you the option, locating its
config file in /etc is a good idea.

File extensions ... they don't really exist in Unix except by
convention.  For most Unix configuration files, there's *no*
extension.  Here's a sampling:

   System       Use                     Config file(s)

   sysconfig    Boot-time parameters    /etc/sysconfig
   host table   Local host name/addrs   /etc/hosts
   tip          Modem/terminal dialout  /etc/remote, /etc/modems
   getty        Logins                  /etc/gettytab
   init         Logins, process mgmt    /etc/inittab
   lpd          Printer spooler         /etc/printcap
   inetd        Internet superdaemon    /etc/inted.conf
   sendmail     Mail queueing/transfer  /etc/sendmail.cf, /etc/aliases
   XFree86      Windowing system        /etc/XF86Config
   term I/O     Terminal ctrl sequences /etc/termcap
   kernel conf  Configuring Unix kernel /sys/i386/conf/<kernel-name>

    Chris> 2.  The existing sysinstall facility just gets you started
    Chris> and leaves a bunch of configuration items incomplete:
    Chris> samba, DNS/named configuration, NFS client/server software,
    Chris> routed, apache, and other of the distribution packages.

Probably because we need to be able to start sysinstall from a floppy
and enabling it to configure all those other things would make it too
large to fit on a single disk.  Besides, a lot of installations (mine,
for example) don't need samba, DNS, NFS, apache, etc.

    Chris> Re-configuration seems not to take into consideration
    Chris> existing settings and overwrites some hand-crafted settings
    Chris> with the old, non-functional defaults.

I'd recommend using sysinstall just to get the system installed and
bootable.  After that, use your favorite text editor in the classic
Unix fashion to change the system configuration.

    Chris> 3.  X-windows: wow--it's quite a bit different than Win3.1x
    Chris> or Win95!

Indeed.  It's a portable, network-transparent window system---and a
major headache.

    Chris> For items 1, 2, 3, I bought the BSD Docs Walnut Creek
    Chris> CD-Rom,

I think the book ``Installing and Running FreeBSD'' might have been
even better help.  Walnut Creek has a good return policy.  You could
return the BSD Docs CD-ROM and get the book instead.

    Chris> but it did not have direct answers to questions like:

    Chris> 1.  What is the name of each config file and its location?

There are just too many of them to list 'em all.  Again, most reside
in /etc.  Some are built (``compiled'') from plain text files and also
reside in /etc.  Be sure you type

        man 5 <config-file-name>

Section 5 of the manual describes file formats; there should be a
manual entry for many of the configuration files.  For example, to get
the format of the /etc/fstab config file, type

        man 5 fstab

(In many cases, you can omit the `5'.)

Finally, feel free to ask SPECIFIC questions on a particular topic and
we'll help you in setting up a specific config file.  For example,
when you're ready to set up DNS/named, let us know and we'll help.

    Chris> 2.  Does one edit each config file or is there a config
    Chris> utility program to manipulate the file?

Edit by hand using your favorite text editor.  Note that some programs
you may add later (such as from the ports or packages collections, or
from the Internet) may come with their own config file editors.  Most
don't.

    Chirs> 3.  For 2 or more example installation complexity levels,
    Chirs> what are the key elements to understand about the each type
    Chirs> of config file on the system?  Give at least a beginner,
    Chirs> and an intermediate example.

Beginner:

Most config files describe an entry on a single line with whitespace
to separate each field.  For example, in /etc/hosts, I have:

127.0.0.1 localhost.fsl.noaa.gov localhost 
137.75.7.40 rose.fsl.noaa.gov rose

This excerpt contains two entries: one for network address 127.0.0.1,
which maps to two different names (localhost.fsl.noaa.gov, and
localhost), and another entry.  Type

        man 5 hosts

for more info.


Intermediate:

Some config files use the `capability syntax' ... each entry spans
several physical lines but are contained in a single logical line by
escaping each end of line with backslashes.  Here's an excerpt from my
/etc/printcap file:

bamboo|ps|PS|lp|eeep|Panasonic KX-P4455 PostScript v51.4:\
        :lp=/dev/ttyd5:fs#0x8a000c1:xs#0x820:br#38400:rw:sf:\
        :sd=/var/spool/lpd/bamboo:af=/var/spool/lpd/bamboo/acct:pl#66:pw#80:\
        :mx#0:rs:sh:sc:rg=printer:\
        :df=/usr/local/libexec/psif-dvi:\
        :rf=/usr/local/libexec/psif-fortran:\
        :tf=/usr/local/libexec/psif-troff:\
        :if=/usr/local/libexec/psif:

Here's a single entry for a printer named `bamboo' hooked up to
/dev/ttyd5 in read-write mode.  Type

        man 5 printcap
        man 3 termcap

for more info.

    Chirs> 4.  What are the differences between X-windows and
    Chirs> MS-windows?  Like how do ya start the darned
    Chris> thing?

There are too many differences between the two window systems to list
in a single email message.  The most striking difference is that in
Microsoft Windows, programs running on the local machine interact with
the local display.  With X windows, there's a separation of process
from display, so a process can run anywhere and display anywhere, be
it local or remote.  Another difference is the separation between
policy and mechanism, but that's just a copout that resulted in a
boondoggle that crippled graphics performance and forced a stupid user
interface standard on the Unix community.  See the book _The Unix
Haters' Handbook_ for more details.

To start MS windows, type `win'.  To start X windows, type `startx'
... usually.  You might also want to type `xinit'.  And some people
even set up their systems so that instead of a text-mode `login:'
prompt they go right into X windows with a fancy windowing `login:'
prompt.

To install XFree86, the X Window System that comes with FreeBSD, you
must edit your /etc/XF86Config file to tell the software what kind of
graphics card you have, what kind of monitor you have, and what kind
of mouse you're using.

A quick way to do that is to run the program `xf86config' which tries
to do a lot of the work for you.  You may still have to do things by
hand if you have less popular graphics cards and/or monitors.  Also,
type

        man XF86Config

    Chris> bridge any deficiencies that X-windows might not have over
    Chris> MS-windows like file type associations, OLE2, TTFonts, DDE,
    Chris> NetDDE, filesharing, icon files in a program manager or
    Chris> file manager user interface shell program--I dunno, I'm no
    Chris> expert--other stuff?

Are you sure you want to run a Unix style operating system?

    Chirs> 5.  What are the major configuration
    Chris> choices that have to be made?  What impact will these
    Chris> decisions have on operation of the system at a later stage
    Chris> (as the disk gets full or other)?

It depends on what you want to do with your system.  If you want to
set up a web server, you'll want to pick, install, configure, and run
web server software.  If you want to set up a news server, you'll want
to pick, install, cinfigure, and run news server software.

Invariably, you'll want to edit your kernel config file and make a
custom kernel.  The FreeBSD handbook has a thorough section on how to
do that; use your favorite web browser on either

   file:/usr/share/doc/handbook/handbook.html     (on FreeBSD 2.1 systems)
   http://www.freebsd.org/handbook/handbook.html  (anywhere)

and look for ``Configuring the FreeBSD Kernel.''

-- 
Sean Kelly                          
NOAA Forecast Systems Laboratory    kelly@fsl.noaa.gov
Boulder Colorado USA                http://www-sdd.fsl.noaa.gov/~kelly/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9605221858.AA15748>