From 3152fcc3bbd4cabf01c7e70766a305ce4c725881 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Fri, 25 May 2018 23:29:36 +0000 Subject: Fri May 25 23:29:36 UTC 2018 patches/packages/glibc-zoneinfo-2018e-noarch-2_slack14.0.txz: Rebuilt. Handle removal of US/Pacific-New timezone. If we see that the machine is using this, it will be automatically switched to US/Pacific. --- slackbook/html/system-configuration.html | 589 ------------------------------- 1 file changed, 589 deletions(-) delete mode 100644 slackbook/html/system-configuration.html (limited to 'slackbook/html/system-configuration.html') diff --git a/slackbook/html/system-configuration.html b/slackbook/html/system-configuration.html deleted file mode 100644 index 2c88375a6..000000000 --- a/slackbook/html/system-configuration.html +++ /dev/null @@ -1,589 +0,0 @@ - - - - -System Configuration - - - - - - - - - - -
-

Chapter 4 System -Configuration

- -
-
-
Table of Contents
- -
4.1 System -Overview
- -
4.2 Selecting a Kernel
-
-
- -

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.

- -
-

4.1 System Overview

- -

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.

- -
-

4.1.1 File System Layout

- -

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 C: 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.

- -

We call the main directory the root directory, and it's denoted with a single slash -(/). 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 /home 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 -/home. You've now grafted on some more space to your system. -And all without having to move many things around.

- -

Below, you will find descriptions of the major top level directories under -Slackware.

- -
-
-
bin
- -
-

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 (ls, cp, and so on) are stored -here. The /bin directory usually doesn't receive modification -after installation. If it does, it's usually in the form of package upgrades that we -provide.

-
- -
boot
- -
-

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 / , but common practice is to put the kernel and related files here -to facilitate dual-booting.

-
- -
dev
- -
-

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 /dev directory. You will find this to be true across many Unix-like -operating systems.

-
- -
etc
- -
-

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.

-
- -
home
- -
-

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 /home directory is provided as the default -location for user home directories.

-
- -
lib
- -
-

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.

-
- -
mnt
- -
-

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.

-
- -
opt
- -
-

Optional software packages. The idea behind /opt is that -each software package installs to /opt/software-package, which makes it easy to remove later. -Slackware distributes some things in /opt (such as KDE in /opt/kde), but you are free to add anything you want to /opt.

-
- -
proc
- -
-

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 /proc directory. You can also send information to the kernel -through some of these files. Try doing cat /proc/cpuinfo.

-
- -
root
- -
-

The system administrator is known as root on the system. root's home directory is kept in /root -instead of /home/root. The reason is simple. What if /home was a different partition from / -and it could not be mounted? root 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.

-
- -
sbin
- -
-

Essential programs that are run by root and during the -system bootup process are kept here. Normal users will not run programs in this -directory.

-
- -
tmp
- -
-

The temporary storage location. All users have read and write access to this -directory.

-
- -
usr
- -
-

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.

-
- -
var
- -
-

System log files, cache data, and program lock files are stored here. This is the -directory for frequently-changing data.

-
-
-
- -

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.

-
- -
-

4.1.2 Finding Files

- -

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.

- -
-

4.1.2.1 which

- -

The first is the which(1) command. which is usually used to locate a program quickly. It just searches -your PATH and returns the first instance it finds and the -directory path to it. Take this example:

- - - - - -
-
-%  which bash
-/bin/bash
-
-
- -

From that you see that bash is in the /bin directory. This is a very limited command for searching, since -it only searches your PATH.

-
- -
-

4.1.2.2 whereis

- -

The whereis(1) command works similar to which, but can also search for man pages and source files. A whereis search for bash should return -this:

- - - - - -
-
-%  whereis bash
-bash: /bin/bash /usr/bin/bash /usr/man/man1/bash.1.gz
-
-
- -

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 which or -whereis for that.

-
- -
-

4.1.2.3 find

- -

The find(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 xinitrc file on the system, -the following command could be used.

- - - - - -
-
-%  find / -name xinitrc
-/var/X11R6/lib/xinit/xinitrc
-
-
- -

find 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 root -can see. But find found our file, so that's good. If only it -could be a bit faster...

-
- -
-

4.1.2.4 slocate

- -

The slocate(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 updatedb(1) to update the slocate database (before running updatedb by hand, you must first su to the -root user). Here's an example of slocate in action:

- - - - - -
-
-%  slocate xinitrc   # 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
-
-
- -

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.

-
-
- -
-

4.1.3 -The /etc/rc.d Directory

- -

The system initialization files are stored in the /etc/rc.d -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.

- -

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.

- -
-

4.1.3.1 System Startup

- -

The first program to run under Slackware besides the Linux kernel is init(8). This program reads the /etc/inittab(5) file to see how to run the system. It runs the /etc/rc.d/rc.S script to prepare the system before going into your -desired runlevel. The rc.S 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 rc.S has a lot on -its plate, but here are some scripts in /etc/rc.d that rc.S will call on to complete its work:

- -
-
-
rc.S
- -
-

This is the actual system initialization script.

-
- -
rc.modules
- -
-

Loads kernel modules. Things like your network card, PPP support, and other things are -loaded here. If this script finds rc.netdevice, it will run -that as well.

-
- -
rc.pcmcia
- -
-

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.

-
- -
rc.serial
- -
-

Configures your serial ports by running the appropriate setserial commands.

-
- -
rc.sysvinit
- -
-

Looks for System V init scripts for the desired runlevel and runs them. This is -discussed in more detail below.

-
-
-
-
- -
-

4.1.3.2 Runlevel Initialization -Scripts

- -

After system initialization is complete, init moves on to -runlevel initialization. A runlevel describes the state that your machine will be running -in. Sound redundant? Well, the runlevel tells init 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 agetty(8) to handle logins. The files below define the different -runlevels in Slackware Linux.

- -
-
-
rc.0
- -
-

Halt the system (runlevel 0). By default, this is symlinked to rc.6.

-
- -
rc.4
- -
-

Multiuser startup (runlevel 4), but in X11 with KDM, GDM, or XDM as the login -manager.

-
- -
rc.6
- -
-

Reboot the system (runlevel 6).

-
- -
rc.K
- -
-

Startup in single user mode (runlevel 1).

-
- -
rc.M
- -
-

Multiuser mode (runlevels 2 and 3), but with the standard text-based login. This is -the default runlevel in Slackware.

-
-
-
-
- -
-

4.1.3.3 Network Initialization

- -

Runlevels 2, 3, and 4 will start up the network services. The following files are -responsible for the network initialization:

- -
-
-
rc.inet1
- -
-

Created by netconfig, this file is responsible for -configuring the actual network interface.

-
- -
rc.inet2
- -
-

Runs after rc.inet1 and starts up basic network -services.

-
- -
rc.atalk
- -
-

Starts up AppleTalk services.

-
- -
rc.httpd
- -
-

Starts up the Apache web server. Like a few other rc scripts, this one can also be -used to stop and restart a service. rc.httpd takes arguments of -stop, start, or restart.

-
- -
rc.news
- -
-

Starts up the news server.

-
-
-
-
- -
-

4.1.3.4 System V Compatibility

- -

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.

- -

The rc.sysvinit script will search for any System V init -scripts you have in /etc/rc.d and run them, if the runlevel is -appropriate. This is useful for certain commercial software packages that install System -V init scripts

-
- -
-

4.1.3.5 Other Files

- -

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.

- -
-
-
rc.gpm
- -
-

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.

-
- -
rc.font
- -
-

Loads the custom screen font for the console.

-
- -
rc.local
- -
-

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.

-
-
-
- -

To enable a script, all you need to do is add the execute permissions to it with the -chmod command. To disable a script, remove the execute -permissions from it. For more information about chmod, see Section 9.2.

-
-
-
-
- - - - - -- cgit v1.2.3