summaryrefslogtreecommitdiffstats
path: root/slackbook/html/system-configuration.html
diff options
context:
space:
mode:
Diffstat (limited to 'slackbook/html/system-configuration.html')
-rw-r--r--slackbook/html/system-configuration.html589
1 files changed, 0 insertions, 589 deletions
diff --git a/slackbook/html/system-configuration.html b/slackbook/html/system-configuration.html
deleted file mode 100644
index 2c88375a..00000000
--- a/slackbook/html/system-configuration.html
+++ /dev/null
@@ -1,589 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<title>System Configuration</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.7" />
-<link rel="HOME" title="Slackware Linux Essentials" href="index.html" />
-<link rel="PREVIOUS" title="The setup Program" href="installation-setup.html" />
-<link rel="NEXT" title="Selecting a Kernel" href="system-configuration-kernel.html" />
-<link rel="STYLESHEET" type="text/css" href="docbook.css" />
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-</head>
-<body class="CHAPTER" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#840084"
-alink="#0000FF">
-<div class="NAVHEADER">
-<table summary="Header navigation table" width="100%" border="0" cellpadding="0"
-cellspacing="0">
-<tr>
-<th colspan="3" align="center">Slackware Linux Essentials</th>
-</tr>
-
-<tr>
-<td width="10%" align="left" valign="bottom"><a href="installation-setup.html"
-accesskey="P">Prev</a></td>
-<td width="80%" align="center" valign="bottom"></td>
-<td width="10%" align="right" valign="bottom"><a href="system-configuration-kernel.html"
-accesskey="N">Next</a></td>
-</tr>
-</table>
-
-<hr align="LEFT" width="100%" />
-</div>
-
-<div class="CHAPTER">
-<h1><a id="SYSTEM-CONFIGURATION" name="SYSTEM-CONFIGURATION"></a>Chapter 4 System
-Configuration</h1>
-
-<div class="TOC">
-<dl>
-<dt><b>Table of Contents</b></dt>
-
-<dt>4.1 <a href="system-configuration.html#SYSTEM-CONFIGURATION-OVERVIEW">System
-Overview</a></dt>
-
-<dt>4.2 <a href="system-configuration-kernel.html">Selecting a Kernel</a></dt>
-</dl>
-</div>
-
-<p>Before you can configure the more advanced parts of your system, it's a good idea to
-learn how the system is organized and what commands can be used to search for files and
-programs. It's also good to know if you need to compile a custom kernel and what the
-steps for doing that are. This chapter will familiarize you with system organization and
-configuration files. Then, you can move on to configuring the more advanced parts of the
-system.</p>
-
-<div class="SECT1">
-<h1 class="SECT1"><a id="SYSTEM-CONFIGURATION-OVERVIEW"
-name="SYSTEM-CONFIGURATION-OVERVIEW">4.1 System Overview</a></h1>
-
-<p>It's important to understand how a Linux system is put together before diving into the
-various configuration aspects. A Linux system is significantly different from a DOS,
-Windows, or Macintosh system (with the exception of the Unix-based Mac OS X), but these
-sections will help you get acquainted with the layout so that you can easily configure
-your system to meet your needs.</p>
-
-<div class="SECT2">
-<h2 class="SECT2"><a id="SYSTEM-CONFIGURATION-LAYOUT"
-name="SYSTEM-CONFIGURATION-LAYOUT">4.1.1 File System Layout</a></h2>
-
-<p>The first noticeable difference between Slackware Linux and a DOS or Windows system is
-the filesystem. For starters, we do not use drive letters to denote different partitions.
-Under Linux, there is one main directory. You can relate this to the <tt
-class="DEVICENAME">C:</tt> drive under DOS. Each partition on your system is mounted to a
-directory on the main directory. It's kind of like an ever-expanding hard disk.</p>
-
-<p>We call the main directory the root directory, and it's denoted with a single slash
-(<tt class="FILENAME">/</tt>). This concept may seem strange, but it actually makes life
-easy for you when you want to add more space. For example, let's say you run out of space
-on the drive that has <tt class="FILENAME">/home</tt> on it. Most people install
-Slackware and make one big root drive. Well, since a partition can be mounted to any
-directory, you can simply go to the store and pick up a new hard drive and mount it to
-<tt class="FILENAME">/home</tt>. You've now grafted on some more space to your system.
-And all without having to move many things around.</p>
-
-<p>Below, you will find descriptions of the major top level directories under
-Slackware.</p>
-
-<div class="VARIABLELIST">
-<dl>
-<dt><tt class="FILENAME">bin</tt></dt>
-
-<dd>
-<p>Essential user programs are stored here. These represent the bare minimum set of
-programs required for a user to use the system. Things like the shell and the filesystem
-commands (<tt class="COMMAND">ls</tt>, <tt class="COMMAND">cp</tt>, and so on) are stored
-here. The <tt class="FILENAME">/bin</tt> directory usually doesn't receive modification
-after installation. If it does, it's usually in the form of package upgrades that we
-provide.</p>
-</dd>
-
-<dt><tt class="FILENAME">boot</tt></dt>
-
-<dd>
-<p>Files that are used by the Linux Loader (LILO). This directory also receives little
-modification after an installation. The kernel is stored here as of Slackware 8.1. In
-earlier releases of Slackware, the kernel was simply stored under <tt
-class="FILENAME">/</tt> , but common practice is to put the kernel and related files here
-to facilitate dual-booting.</p>
-</dd>
-
-<dt><tt class="FILENAME">dev</tt></dt>
-
-<dd>
-<p>Everything in Linux is treated as a file, even hardware devices like serial ports,
-hard disks, and scanners. In order to access these devices, a special file called a
-device node has to be present. All device nodes are stored in the <tt
-class="FILENAME">/dev</tt> directory. You will find this to be true across many Unix-like
-operating systems.</p>
-</dd>
-
-<dt><tt class="FILENAME">etc</tt></dt>
-
-<dd>
-<p>This directory holds system configuration files. Everything from the X Window
-configuration file, the user database, to the system startup scripts. The system
-administrator will become quite familiar with this directory over time.</p>
-</dd>
-
-<dt><tt class="FILENAME">home</tt></dt>
-
-<dd>
-<p>Linux is a multiuser operating system. Each user on the system is given an account and
-a unique directory for personal files. This directory is called the user's home
-directory. The <tt class="FILENAME">/home</tt> directory is provided as the default
-location for user home directories.</p>
-</dd>
-
-<dt><tt class="FILENAME">lib</tt></dt>
-
-<dd>
-<p>System libraries that are required for basic operation are stored here. The C library,
-the dynamic loader, the ncurses library, and kernel modules are among the things stored
-here.</p>
-</dd>
-
-<dt><tt class="FILENAME">mnt</tt></dt>
-
-<dd>
-<p>This directory contains temporary mount points for working on hard disks or removable
-drives. Here you'll find mount points for your CD-ROM and floppy drives.</p>
-</dd>
-
-<dt><tt class="FILENAME">opt</tt></dt>
-
-<dd>
-<p>Optional software packages. The idea behind <tt class="FILENAME">/opt</tt> is that
-each software package installs to <tt class="FILENAME">/opt/<var
-class="REPLACEABLE">software-package</var></tt>, which makes it easy to remove later.
-Slackware distributes some things in <tt class="FILENAME">/opt</tt> (such as KDE in <tt
-class="FILENAME">/opt/kde</tt>), but you are free to add anything you want to <tt
-class="FILENAME">/opt</tt>.</p>
-</dd>
-
-<dt><tt class="FILENAME">proc</tt></dt>
-
-<dd>
-<p>This is a unique directory. It's not really part of the filesystem, but a virtual
-filesystem that provides access to kernel information. Various pieces of information that
-the kernel wants you to know are conveyed to you through files in the <tt
-class="FILENAME">/proc</tt> directory. You can also send information to the kernel
-through some of these files. Try doing <tt class="COMMAND">cat /proc/cpuinfo</tt>.</p>
-</dd>
-
-<dt><tt class="FILENAME">root</tt></dt>
-
-<dd>
-<p>The system administrator is known as <tt class="USERNAME">root</tt> on the system. <tt
-class="USERNAME">root</tt>'s home directory is kept in <tt class="FILENAME">/root</tt>
-instead of <tt class="FILENAME">/home/root</tt>. The reason is simple. What if <tt
-class="FILENAME">/home</tt> was a different partition from <tt class="FILENAME">/</tt>
-and it could not be mounted? <tt class="USERNAME">root</tt> would naturally want to log
-in and repair the problem. If his home directory was on the damaged filesystem, it would
-make it difficult for him to log in.</p>
-</dd>
-
-<dt><tt class="FILENAME">sbin</tt></dt>
-
-<dd>
-<p>Essential programs that are run by <tt class="USERNAME">root</tt> and during the
-system bootup process are kept here. Normal users will not run programs in this
-directory.</p>
-</dd>
-
-<dt><tt class="FILENAME">tmp</tt></dt>
-
-<dd>
-<p>The temporary storage location. All users have read and write access to this
-directory.</p>
-</dd>
-
-<dt><tt class="FILENAME">usr</tt></dt>
-
-<dd>
-<p>This is the big directory on a Linux system. Everything else pretty much goes here,
-programs, documentation, the kernel source code, and the X Window system. This is the
-directory to which you will most likely be installing programs.</p>
-</dd>
-
-<dt><tt class="FILENAME">var</tt></dt>
-
-<dd>
-<p>System log files, cache data, and program lock files are stored here. This is the
-directory for frequently-changing data.</p>
-</dd>
-</dl>
-</div>
-
-<p>You should now have a good feel for which directories contain what on the filesystem.
-More detailed information about the filesystem layout is available in the hier(7) man
-page. The next section will help you find specific files easily, so you don't have to do
-it by hand.</p>
-</div>
-
-<div class="SECT2">
-<h2 class="SECT2"><a id="SYSTEM-CONFIGURATION-FINDING"
-name="SYSTEM-CONFIGURATION-FINDING">4.1.2 Finding Files</a></h2>
-
-<p>You now know what each major directory holds, but it still doesn't really help you
-find things. I mean, you could go looking through directories, but there are quicker
-ways. There are four main file search commands available in Slackware.</p>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1329" name="AEN1329">4.1.2.1 <tt
-class="COMMAND">which</tt></a></h3>
-
-<p>The first is the <tt class="COMMAND">which</tt>(1) command. <tt
-class="COMMAND">which</tt> is usually used to locate a program quickly. It just searches
-your <tt class="ENVAR">PATH</tt> and returns the first instance it finds and the
-directory path to it. Take this example:</p>
-
-<table border="0" bgcolor="#E0E0E0" width="100%">
-<tr>
-<td>
-<pre class="SCREEN">
-<samp class="PROMPT">%</samp> <kbd class="USERINPUT">which bash</kbd>
-/bin/bash
-</pre>
-</td>
-</tr>
-</table>
-
-<p>From that you see that <tt class="COMMAND">bash</tt> is in the <tt
-class="FILENAME">/bin</tt> directory. This is a very limited command for searching, since
-it only searches your <tt class="ENVAR">PATH</tt>.</p>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1347" name="AEN1347">4.1.2.2 <tt
-class="COMMAND">whereis</tt></a></h3>
-
-<p>The <tt class="COMMAND">whereis</tt>(1) command works similar to <tt
-class="COMMAND">which</tt>, but can also search for man pages and source files. A <tt
-class="COMMAND">whereis</tt> search for <tt class="COMMAND">bash</tt> should return
-this:</p>
-
-<table border="0" bgcolor="#E0E0E0" width="100%">
-<tr>
-<td>
-<pre class="SCREEN">
-<samp class="PROMPT">%</samp> <kbd class="USERINPUT">whereis bash</kbd>
-bash: /bin/bash /usr/bin/bash /usr/man/man1/bash.1.gz
-</pre>
-</td>
-</tr>
-</table>
-
-<p>This command not only told us where the actual program is located, but also where the
-online documentation is stored. Still, this command is limited. What if you wanted to
-search for a specific configuration file? You can't use <tt class="COMMAND">which</tt> or
-<tt class="COMMAND">whereis</tt> for that.</p>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1363" name="AEN1363">4.1.2.3 <tt
-class="COMMAND">find</tt></a></h3>
-
-<p>The <tt class="COMMAND">find</tt>(1) command allows the user to search the filesystem
-with a rich collection of search predicates. Users may specify a search with filename
-wildcards, ranges of modification or creation times, or other advanced properties. For
-example, to search for the default <tt class="FILENAME">xinitrc</tt> file on the system,
-the following command could be used.</p>
-
-<table border="0" bgcolor="#E0E0E0" width="100%">
-<tr>
-<td>
-<pre class="SCREEN">
-<samp class="PROMPT">%</samp> <kbd class="USERINPUT">find / -name xinitrc</kbd>
-/var/X11R6/lib/xinit/xinitrc
-</pre>
-</td>
-</tr>
-</table>
-
-<p><tt class="COMMAND">find</tt> will take a while to run, since it has to traverse the
-entire root directory tree. And if this command is run as a normal user, there will be
-permission denied error messages for directories that only <tt class="USERNAME">root</tt>
-can see. But <tt class="COMMAND">find</tt> found our file, so that's good. If only it
-could be a bit faster...</p>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1378" name="AEN1378">4.1.2.4 <tt
-class="COMMAND">slocate</tt></a></h3>
-
-<p>The <tt class="COMMAND">slocate</tt>(1) command searches the entire filesystem, just
-like the find command can do, but it searches a database instead of the actual
-filesystem. The database is set to automatically update every morning, so you have a
-somewhat fresh listing of files on your system. You can manually run <tt
-class="COMMAND">updatedb</tt>(1) to update the slocate database (before running <tt
-class="COMMAND">updatedb</tt> by hand, you must first <tt class="COMMAND">su</tt> to the
-<tt class="USERNAME">root</tt> user). Here's an example of <tt
-class="COMMAND">slocate</tt> in action:</p>
-
-<table border="0" bgcolor="#E0E0E0" width="100%">
-<tr>
-<td>
-<pre class="SCREEN">
-<samp class="PROMPT">%</samp> <kbd
-class="USERINPUT">slocate xinitrc</kbd> # we don't have to go to the root
-/var/X11R6/lib/xinit/xinitrc
-/var/X11R6/lib/xinit/xinitrc.fvwm2
-/var/X11R6/lib/xinit/xinitrc.openwin
-/var/X11R6/lib/xinit/xinitrc.twm
-</pre>
-</td>
-</tr>
-</table>
-
-<p>We got more than what we were looking for, and quickly too. With these commands, you
-should be able to find whatever you're looking for on your Linux system.</p>
-</div>
-</div>
-
-<div class="SECT2">
-<h2 class="SECT2"><a id="SYSTEM-CONFIGURATION-RCD" name="SYSTEM-CONFIGURATION-RCD">4.1.3
-The <tt class="FILENAME">/etc/rc.d</tt> Directory</a></h2>
-
-<p>The system initialization files are stored in the <tt class="FILENAME">/etc/rc.d</tt>
-directory. Slackware uses the BSD-style layout for its initialization files as opposed to
-System V init scripts, which tend to make configuration changes much more difficult
-without using a program specifically designed for that purpose. In BSD-init scripts, each
-runlevel is given a single rc file. In System V, each runlevel is given its own
-directory, each containing numerous init scripts. This provides an organized structure
-that is easy to maintain.</p>
-
-<p>There are several categories of initialization files. These are system startup,
-runlevels, network initialization, and System V compatibility. As per tradition, we'll
-lump everything else into another category.</p>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1406" name="AEN1406">4.1.3.1 System Startup</a></h3>
-
-<p>The first program to run under Slackware besides the Linux kernel is <tt
-class="COMMAND">init</tt>(8). This program reads the <tt
-class="FILENAME">/etc/inittab</tt>(5) file to see how to run the system. It runs the <tt
-class="FILENAME">/etc/rc.d/rc.S</tt> script to prepare the system before going into your
-desired runlevel. The <tt class="FILENAME">rc.S</tt> file enables your virtual memory,
-mounts your filesystems, cleans up certain log directories, initializes Plug and Play
-devices, loads kernel modules, configures PCMCIA devices, sets up serial ports, and runs
-System V init scripts (if found). Obviously <tt class="FILENAME">rc.S</tt> has a lot on
-its plate, but here are some scripts in <tt class="FILENAME">/etc/rc.d</tt> that <tt
-class="FILENAME">rc.S</tt> will call on to complete its work:</p>
-
-<div class="VARIABLELIST">
-<dl>
-<dt><tt class="FILENAME">rc.S</tt></dt>
-
-<dd>
-<p>This is the actual system initialization script.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.modules</tt></dt>
-
-<dd>
-<p>Loads kernel modules. Things like your network card, PPP support, and other things are
-loaded here. If this script finds <tt class="FILENAME">rc.netdevice</tt>, it will run
-that as well.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.pcmcia</tt></dt>
-
-<dd>
-<p>Probes for and configures any PCMCIA devices that you might have on your system. This
-is most useful for laptop users, who probably have a PCMCIA modem or network card.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.serial</tt></dt>
-
-<dd>
-<p>Configures your serial ports by running the appropriate <tt
-class="COMMAND">setserial</tt> commands.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.sysvinit</tt></dt>
-
-<dd>
-<p>Looks for System V init scripts for the desired runlevel and runs them. This is
-discussed in more detail below.</p>
-</dd>
-</dl>
-</div>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1454" name="AEN1454">4.1.3.2 Runlevel Initialization
-Scripts</a></h3>
-
-<p>After system initialization is complete, <tt class="COMMAND">init</tt> moves on to
-runlevel initialization. A runlevel describes the state that your machine will be running
-in. Sound redundant? Well, the runlevel tells <tt class="COMMAND">init</tt> if you will
-be accepting multiuser logins or just a single user, whether or not you want network
-services, and if you will be using the X Window System or <tt
-class="COMMAND">agetty</tt>(8) to handle logins. The files below define the different
-runlevels in Slackware Linux.</p>
-
-<div class="VARIABLELIST">
-<dl>
-<dt><tt class="FILENAME">rc.0</tt></dt>
-
-<dd>
-<p>Halt the system (runlevel 0). By default, this is symlinked to <tt
-class="FILENAME">rc.6</tt>.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.4</tt></dt>
-
-<dd>
-<p>Multiuser startup (runlevel 4), but in X11 with KDM, GDM, or XDM as the login
-manager.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.6</tt></dt>
-
-<dd>
-<p>Reboot the system (runlevel 6).</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.K</tt></dt>
-
-<dd>
-<p>Startup in single user mode (runlevel 1).</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.M</tt></dt>
-
-<dd>
-<p>Multiuser mode (runlevels 2 and 3), but with the standard text-based login. This is
-the default runlevel in Slackware.</p>
-</dd>
-</dl>
-</div>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1493" name="AEN1493">4.1.3.3 Network Initialization</a></h3>
-
-<p>Runlevels 2, 3, and 4 will start up the network services. The following files are
-responsible for the network initialization:</p>
-
-<div class="VARIABLELIST">
-<dl>
-<dt><tt class="FILENAME">rc.inet1</tt></dt>
-
-<dd>
-<p>Created by <tt class="COMMAND">netconfig</tt>, this file is responsible for
-configuring the actual network interface.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.inet2</tt></dt>
-
-<dd>
-<p>Runs after <tt class="FILENAME">rc.inet1</tt> and starts up basic network
-services.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.atalk</tt></dt>
-
-<dd>
-<p>Starts up AppleTalk services.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.httpd</tt></dt>
-
-<dd>
-<p>Starts up the Apache web server. Like a few other rc scripts, this one can also be
-used to stop and restart a service. <tt class="FILENAME">rc.httpd</tt> takes arguments of
-stop, start, or restart. &#13;</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.news</tt></dt>
-
-<dd>
-<p>Starts up the news server.</p>
-</dd>
-</dl>
-</div>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1534" name="AEN1534">4.1.3.4 System V Compatibility</a></h3>
-
-<p>System V init compatibility was introduced in Slackware 7.0. Many other Linux
-distributions make use of this style instead of the BSD style. Basically each runlevel is
-given a subdirectory for init scripts, whereas BSD style gives one init script to each
-runlevel.</p>
-
-<p>The <tt class="FILENAME">rc.sysvinit</tt> script will search for any System V init
-scripts you have in <tt class="FILENAME">/etc/rc.d</tt> and run them, if the runlevel is
-appropriate. This is useful for certain commercial software packages that install System
-V init scripts</p>
-</div>
-
-<div class="SECT3">
-<h3 class="SECT3"><a id="AEN1546" name="AEN1546">4.1.3.5 Other Files</a></h3>
-
-<p>The scripts described below are the other system initialization scripts. They are
-typically run from one of the major scripts above, so all you need to do is edit the
-contents.</p>
-
-<div class="VARIABLELIST">
-<dl>
-<dt><tt class="FILENAME">rc.gpm</tt></dt>
-
-<dd>
-<p>Starts up general purpose mouse services. Allows you to copy and paste at the Linux
-console. Occasionally, gpm will cause problems with the mouse when it is used under X
-windows. If you experience problems with the mouse under X, try taking away the
-executable permission from this file and stopping the gpm server.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.font</tt></dt>
-
-<dd>
-<p>Loads the custom screen font for the console.</p>
-</dd>
-
-<dt><tt class="FILENAME">rc.local</tt></dt>
-
-<dd>
-<p>Contains any specific startup commands for your system. This is empty after a fresh
-install, as it is reserved for local administrators. This script is run after all other
-initialization has taken place.</p>
-</dd>
-</dl>
-</div>
-
-<p>To enable a script, all you need to do is add the execute permissions to it with the
-<tt class="COMMAND">chmod</tt> command. To disable a script, remove the execute
-permissions from it. For more information about <tt class="COMMAND">chmod</tt>, see <a
-href="filesystem-structure-permissions.html">Section 9.2</a>.</p>
-</div>
-</div>
-</div>
-</div>
-
-<div class="NAVFOOTER">
-<hr align="LEFT" width="100%" />
-<table summary="Footer navigation table" width="100%" border="0" cellpadding="0"
-cellspacing="0">
-<tr>
-<td width="33%" align="left" valign="top"><a href="installation-setup.html"
-accesskey="P">Prev</a></td>
-<td width="34%" align="center" valign="top"><a href="index.html"
-accesskey="H">Home</a></td>
-<td width="33%" align="right" valign="top"><a href="system-configuration-kernel.html"
-accesskey="N">Next</a></td>
-</tr>
-
-<tr>
-<td width="33%" align="left" valign="top">The <tt class="COMMAND">setup</tt> Program</td>
-<td width="34%" align="center" valign="top">&nbsp;</td>
-<td width="33%" align="right" valign="top">Selecting a Kernel</td>
-</tr>
-</table>
-</div>
-</body>
-</html>
-