home *** CD-ROM | disk | FTP | other *** search
- Chapter 17
- The SuSE Linux Boot Concept
-
- Booting and initializing a UNIX system can challenge even an experienced
- system administrator. This chapter gives you a short overview of the SuSE
- Linux boot concept.
- This concept is much more complex but also more flexible than those used in
- some Linux distributions. It is based on the boot concept used for a System V
- workstation as described in [Fri93].
- The simple words "Uncompressing Linux..." signal that the kernel
- is taking control over your hardware. It checks and sets your console1 to
- read BIOS settings and to initialize basic hardware interfaces. Next, your
- drivers "probe" existing hardware and initialize it accordingly. After checking
- the partitions and mounting the root filesystem (assigning it to " / "), the
- kernel starts /sbin/init which starts the main system with all its programs and
- configurations. The kernel will control the entire system, including hardware
- access and the CPU time programs may use.
-
-
- 17.1 The init Program
-
- The program /sbin/init is responsible for correctly initializing all system pro-
- cesses. Thus, it is the father of all processes in the entire system.
- init takes a special role: init is started directly by the kernel and resists signal
- 9, which normally enables you to kill processes. All further programs are
- either started directly by init or by one of its "child" processes.
- init is centrally configured via the /etc/inittab file. Here, the so-called
- "runlevels" are defined (more about runlevels in the next section). Here it
- is also specified what should happen in the various levels. Depending on
- the entries in /etc/inittab, several scripts are started by init which, for
- reasons of clarity, all reside in the same directory, /sbin/init.d.
- The entire process of starting up the system (and shutting down, as well) is
- maintained by init. From this point of view, the kernel can be considered
- as a "background process" whose task it is to maintain all other processes
- and to adjust CPU time and hardware access according to requests from other
- programs.
-
- 1 Or more precisely, the BIOS registers of graphics cards and output format.
-
- 395
-
-
-
- 17. The SuSE Linux Boot Concept
-
- 17.2 Runlevels
-
- In Linux there are so-called runlevels which define how the system is going to
- be started up. After booting, the system starts as defined in /etc/inittab
- in the line initdefault. An alternative to this is assigning a special run-
- level at boot time (e. g., at the LILO prompt): the kernel passes any parame-
- ters which it doesn't need directly to init.
- To change runlevels while the system is running, you can just enter init with
- the appropriate number. Only the super user is allowed to do this:
- root@earth:/ > init S
- brings you to single user mode which is used for the maintenance and ad-
- ministration of your system. After finishing work in S mode, the system
- administrator can change the runlevel to 2 again by typing:
- root@earth:/ > init 2
- Now all essential programs are started and users can log in and work with
- the system. The table below gives you an overview of available runlevels.
- Runlevel 1 should not be used on a system whose /usr partition is mounted
- via NFS:
-
-
- Runlevel Meaning
- 0 Halt
- S Single user mode
- 1 Multi-user without network
- 2 Multi-user with network (standard)
- 3 Multi-user with network and xdm
- 4 Unused
- 5 Unused
- 6 Reboot
-
-
- Table 17.1: Valid runlevels in Linux
-
- You can halt the system using:
- root@earth:/ > init 0
- or restart it with:
- root@earth:/ > init 6
- If you have already installed and configured the X Window System properly
- (Section 8.1 page 208) and want users to log in via a graphical user interface,
- you can easily change the runlevel to 3. You should give it a try first by
- typing:
- root@earth:/ > init 3
- to see whether the system works as you expected.
-
- 396
-
-
-
- 17.3. Changing Runlevels
-
- With a damaged /etc/inittab, you can end up in a system
- which can not be brought up properly. Therefore, be extremely care-
- ful while editing /etc/inittab! ¡ In an emergency you may
- try to enter init=/bin/sh at the LILO boot prompt for directly
- booting into a shell (see Section 21 page 106). This looks like:
- boot: linux init=/bin/sh
-
- 17.3 Changing Runlevels
- Generally, there are a couple of things that happen if you change runlevels.
- First, so-called stop scripts of the current runlevel are launched, closing down
- some programs which are essential for the current runlevel. Thereafter, start
- scripts of the new runlevel are started. Here, in most cases, a number of
- programs will be started.
- To illustrate this, we will show you a change from runlevel 2 to 3:
- * The administrator (`root') tells init to change run levels:
- root@earth:/ > init 3
-
- * init now consults its configuration file (/etc/inittab) and realizes
- that it should start /sbin/init.d/rc with the new runlevel as a pa-
- rameter.
- * Now rc calls all the stop scripts of the current runlevel, but only for those
- where there is no start script in the selected new run level. In our example,
- these are all the scripts which reside in /sbin/init.d/rc2.d (old
- runlevel was 2) and which start with a `K'.2 The number following `K'
- guarantees a certain order to start, as there are some dependencies which
- have to be taken into consideration.
- * The last thing to start are the start scripts of the new runlevel. These are (in
- our example) in /sbin/init.d/rc3.d and begin with an `S'. The
- same procedure regarding the order in which they are started is applied
- here.
-
- If you want to change to the same runlevel which you are already in, init only
- checks /etc/inittab for changes and starts the appropriate steps (e. g.,
- for starting a getty on another interface).
-
- 17.4 Init Scripts
- Scripts in /sbin/init.d are divided into two sections:
- * scripts which are executed directly by init. This only applies while boot-
- ing and shutting down the system immediately (power failure or pressing
-
- Ctrl + Alt + Del by the user).
-
- * scripts which are started indirectly by init. This happens when the run-
- level is changed. Generally, /sbin/init.d/rc is executed here, which guar-
- antees the correct order of the relevant scripts.
- 2 Names of stop scripts always start with a `K', whereas start scripts always start with an `S'.
-
- 397
-
-
-
- 17. The SuSE Linux Boot Concept
-
- All scripts are located in /sbin/init.d. Scripts for changing the run level
- are also found there but are called via symbolic links from one of the subdi-
- rectories /sbin/init.d/rc0.d to /sbin/init.d/rc6.d. This is
- just for clarity reasons and avoids duplicate scripts (e. g., if they are used in
- several runlevels). Since every script can be executed as both a start and a stop
- script, these scripts have to "understand" the parameters "start" and "stop".
- An example: while leaving runlevel 2, /sbin/init.d/rc2.d/K40network
- Example is one script, of many, that is executed. This results in /sbin/init.d/
- network being executed from /sbin/init.d/rc with the "stop" pa-
- rameter. When entering runlevel 3, the same script is started, but with the
- "start" parameter instead of "stop".
- Links in these runlevel-specific subdirectories simply serve to allocate the
- scripts to a certain runlevel.
- Boot and Below,we give you a short introduction to the boot and stop scripts that are
- shutdown launched first (or last, respectively) as well as an explanation of the maintain-
- ing script.
- * boot
- Executed while starting the system directly, using init. It is indepen-
- dent of the chosen runlevel and is only executed once. Here, filesystems
- are checked, the kernel daemon is launched, some unnecessary files in
- /var/lock are deleted, and the network is configured for the loopback
- device (if it has been selected in /etc/rc.config). Furthermore, the
- system time is set up and Plug and Play hardware is initialized by the
- isapnp tools.
- If an error occurs while automatically checking and repairing the filesys-
- tem, the system administrator can intervene, after first entering the root
- password.
-
- The directory /sbin/init.d/boot.d is assigned to this script. All
- scripts in this directory are executed while the system is booted. This
- is the right place for your own personal extensions, which should be
- executed only once.
-
- Last to be executed is the script boot.local.
- * boot.local
- Here, you can enter additional commands to be executed at boot time
- before changing into a runlevel. It can be compared to AUTOEXEC.BAT
- on DOS systems.
- * boot.setup
- General settings that have to be performed while changing from single
- user mode to another runlevel.
- Here, keyboard maps are loaded and the kernel daemon is started, which
- loads modules automatically.
- * halt
- This script is only executed while changing into runlevel 0 or 6. Here, it
- is executed either as halt or as reboot. Whether the system shuts down or
- reboots depends on how halt is called.
-
- 398
-
-
-
- 17.5. /etc/rc.config and /sbin/SuSEconfig
-
- * rc
- This script is of overriding importance whenever runlevels are changed.
- It calls the appropriate stop scripts of the current runlevel and the start
- scripts of the newly selected runlevel.
-
- You may add your own scripts to this skeleton very easily. A template may Creating
- be found in /sbin/init.d/skeleton. To enable a script via /etc/ scripts
- rc.config, it is recommended that you create a <START > variable in
- this file. Additional parameters should only be added if really needed (refer
- to the /sbin/init.d/gpm script for reference).
- Now you need to create the links in the corresponding rc?.d to your
- script to make sure it is launched when you change runlevels (see above
- Section 17.3 page 397 for script names, etc.). The manpage for init.d
- (man 7 init.d) gives you all the necessary technical background.
-
- Please handle these scripts with the utmost care! A faulty script may hang
- your machine! See Section 17.2 page 396 if all else fails. . .
-
- 17.5 /etc/rc.config and /sbin/SuSEconfig
- Practically the entire configuration of SuSE Linux can be done via a central
- configuration file called /etc/rc.config. Here, a couple of environment
- variables are set which are (amongst others) checked by the init scripts. Each
- of the scripts in /sbin/init.d executes /etc/rc.config as a first
- step, in order to read the values of those variables which apply to it.
-
- From SuSE Linux 6.0 packages with extensive adjustment options store
- their variables in individual files in the directory /etc/rc.config.d;
- this is the case, for example, with the package sendmail or package i4l
- (ISDN) packages.
- To simplify things, however, we will usually just mention /etc/rc.
- config, even if the file has been moved somewhere else!
-
- Moreover, a large number of configuration files can be generated from /etc/
- rc.config. This is the task of /sbin/SuSEconfig. If you change the net-
- work configuration, for example, the file /etc/resolv.conf will be re-
- generated, as it is dependent on the configuration you have made.
- So, if you change /etc/rc.config manually, you should invoke
- /sbin/SuSEconfig afterwards to make sure all changes to the appropriate con-
- figuration files are made at the correct places. If you change the configu-
- ration with YaST, you don't have to bother. YaST automatically executes
- /sbin/SuSEconfig and updates your configuration files.
- This concept enables you to make basic changes to your configuration with-
- out having to reboot the system. Since some changes are rather complex,
- some programs probably have to be restarted in order for the changes to take
- effect. This procedure is explained more fully in network configuration (see
- Section 5.2 page 137), where these programs are forced to be restarted using
- the command:
-
- 399
-
-
-
- 17. The SuSE Linux Boot Concept
-
- root@earth:/ > /sbin/init.d/network stop
- root@earth:/ > /sbin/init.d/network start
- As you can see, you can easily start and stop init scripts by hand.
- Generally, we recommend the following steps for configuring your system:
-
- * Bring the system into single user mode:
-
- root@earth:/ > init S
-
- As an alternative, you can select runlevel 1. Here, you have the possibility
- of logging in on several consoles:
- root@earth:/ > init 1
-
- * Change the configuration file /etc/rc.config as needed. This can
- be done using an editor of your choice or with YaST in `Changing
- configuration file' (see Section 17.6).
- * Execute /sbin/SuSEconfig to make the changes take effect. If you have
- changed /etc/rc.config via YaST, this is done automatically.
- * Bring your system back to the previous runlevel:
- root@earth:/ > init 2
-
- This procedure is mainly relevant if you have changed system-wide settings
- (such as network configuration). It is not necessary to go into single user
- mode for small changes, but it ensures that all relevant programs are correctly
- restarted.
-
- To categorically disable the automatic configuration of SuSEconfig you
- need to set the variable <ENABLE SUSECONFIG> in /etc/rc.
- config (please note Section 17.6). By using selected rc.config vari-
- ables you may partially disable the auto configuration
-
- 17.6 The Variables in /etc/rc.config
- In this section, we describe all the parameters of the system, including their
- default settings. If you don't use YaST to change /etc/rc.config,
- make sure you set "empty" parameters as two quotation marks (e. g.,
- KEYTABLE="") and that you surround parameters that contain a blank
- with quotation marks (parameters consisting of only one word do not have
- to be quoted). In our description, each parameter is given a value in order to
- make its settings as clear as possible:
-
- * ENABLE SUSECONFIG=yes
- With this entry you can disable SuSEconfig completely. Please don't con-
- tact our Installation Support if you have trouble configuring your system
- after disabling SuSEconfig ;-)
- * MAIL REPORTS TO=newbie
- SuSEconfig can mail reports (created by YaST or included in packages)
- to you. Here you can set the address. If you don't want this feature,
- simply set it to "".
-
- 400
-
-
-
- 17.6. The Variables in /etc/rc.config ¡ System Configuration
-
- * GMT=-u
- If your hardware is set to GMT (Greenwich Mean Time), you should set
- this variable to -u.3 Otherwise, leave it empty. This setting is relevant for
- automatic switching to summer or winter time.
- * TIMEZONE=Europe/Berlin
- Your time zone. Important for automatic switching to summer or winter
- time.
- * LANGUAGE="german" This is set by YaST if changes are made with
- the menu item `Select language' (see Section 3.3.1 page 72). This
- value also serves as a fallback if the variables LANG or LC * are not set;
- in that case the value written here is resolved via the file /usr/share/
- locale/locale.alias.
- * RC LANG="de DE"
- Sets LANG for locale; with this a default can be assigned for local users.
- This value is valid so long as no special RC LC * variables are used.
- The standard rc.config variables are: RC LC ALL (with this the
- variables LC * and LANG can be overwritten!), RC LC MESSAGES,
- RC LC CTYPE, RC LC MONETARY, RC LC NUMERIC, RC LC TIME
- und RC LC COLLATE.
- See manpage for locale (man 5 locale).
- * ROOT USES LANG="no"
- Should local settings also be used for `root'?
- * Use INIT SCRIPT USE LANG="no"
- locale in init scripts? Prefereably not ;-)
-
- Initializing Local Hardware (keyboard, modem, mouse,PCMCIA, etc.)
- *
- * KEYTABLE=de-latin1-nodeadkeys
- Defines keymaps.
- * KBD NUMLOCK=no
-
- NumLock on/off.
- * KBD CAPSLOCK=no
-
- CapsLock on/off.
- * KBD TTY="tty1 tty2 tty3 tty4 tty5 tty6"
-
- NumLock and CapsLock can be limited to certain TTYs;
- gequoted stands for all TTYs.
- * KBD RATE=30
- Sets the automatic keyboard frequency. Possible values are from twice to
- 30 times per second. For this change to take effect, keyboard delay has to
- be set as well.
- * KBD DELAY=250
- This is the delay whereafter automatic repetition of the pressed key com-
- mences. This value is in milliseconds but isn't very accurate. You have to
- assign KBD RATE as well.
-
- 3 -u is an abbreviation for universal time.
-
- 401
-
-
-
- 17. The SuSE Linux Boot Concept
-
- * CONSOLE FONT=mr.fnt
- This is the console font. Not all fonts support German umlauts. YaST
- provides a little window where you can test all fonts and choose the
- one you like best. Additional settings are: CONSOLE SCREENMAP,
- CONSOLE UNICODEMAP and CONSOLE MAGIC.
- * MODEM=/dev/ttyS1
- Interface to which the modem is connected. YaST and SuSEconfig, in
- turn, create a link from /dev/modem to the device specified.
- * MOUSE=/dev/ttyS2
- Interface to which the mouse is connected. YaST and SuSEconfig, in
- turn, create a link from /dev/mouse to the device specified.
- * START GPM=yes
- Set to yes to start mouse console support. This enables you to exchange
- text between consoles using the mouse. gpm can cause problems in con-
- nection with certain bus mice. If you encounter problems while starting
- X, you should disable gpm. The other alternative is to start xdm, since
- gpm is not started in runlevel 3.
- * GPM PARAM=" -t logi -m /dev/mouse"
- Initialization parameters for gpm. These are normally set via YaST.
- * PCMCIA=i82365
- This is for assigning the chipset: valid entries are: i82365 and tcic.
- If the variable is set to "" the PCMCIA sub-system is not launched. Fine
- tuning is achieved via PCMCIA PCIC OPTS and PCMCIA CORE OPTS
- * START ISAPNP=yes
- Initialize ISA P'n'P at boot time.
- * INITRD MODULES="aic7xxx"
- The names of the modules which need to be loaded when the kernel is
- being booted, for example, to access the hard drive. Useful, or necessary
- entries can be made during the installation or the update; see Section 16.2
- page 377.
- * START KERNELD=yes
- This variable determines whether the kernel daemon should be started
- automatically at boot time. This daemon is responsible for automatically
- loading kernel modules on demand. For the current standard kernel 2.2.xx
- kerneld is no longer required. ¡ A short description of the module
- concept and functions of kerneld can be found in chapter Section 13.2
- page 319.
-
- Starting and Configuring Local Network and Other Services
- * START LOOPBACK=yes
- Sets up a sort of "mini" network created by configuring the Loopback
- device. Since many programs rely on this functionality, it should be set.4
- * CHECK ETC HOSTS=yes
- SuSEconfig can do some checks and modifications to /etc/hosts.
- * BEAUTIFY ETC HOSTS=no
- If /etc/hosts is to be sorted.
- 4 Your kernel needs to have been compiled with network support for this to work.
-
- 402
-
-
-
- 17.6. The Variables in /etc/rc.config ¡ System Configuration
-
- * SETUPDUMMYDEV=no
- Determines whether the dummy network device should be set up: this
- is useful for non-permanent network connections (e. g., SLIP or PPP). If
- you have an ethernet card it can be troublesome at times.
- * CREATE HOSTCONF=yes
- SuSEconfig can create and check /etc/host.conf.
- * CREATE RESOLVCONF=yes
- SuSEconfig can maintain /etc/resolv.conf. If set to yes and one
- of SEARCHLIST and NAMESERVER is empty, it is assumed that no DNS
- is wanted and /etc/resolv.conf will be deleted. no simply leaves
- /etc/resolv.conf untouched.
- * NETCONFIG= 0
- Specifies how many network cards (or other net devices) are in-
- stalled. The text shows an example for one network card (they start
- with 0). For a system with two cards installed, it should resemble
- NETCONFIG=" 0 1". For a system without networking, it should not
- be set.
- * IPADDR 0=193.141.17.202
- IP address of the first networking card.
- * NETDEV 0=eth0
- Name of the first network device (normally an Ethernet card, therefore,
- the example, eth0). Other possible settings are str1 or plip1. If
- there is more than one card installed, additional cards are supplied with
- the variables NETDEV 1 to NETDEV 3.
- * IFCONFIG 0="193.141.17.205 broadcast 193.141.17.255
- netmask 255.255.255.192"
- Configuration command for the first networking device installed. These
- settings can easily be assigned using YaST. If you have more than one
- card installed, just enter the corresponding values in the appropriate
- variables.
- * CLOSE CONNECTIONS=false
- If this variable is set to true and the system runs in "runlevel" 0 or 6,
- /sbin/init.d/route sends a SIGTERM to all processes that own
- an open "remote tcp" or "udp" connection.
- * IP DYNIP=no
- Switch on the "dynamic IP patch" when booting; if yes, the script
- /sbin/init.d/boot enables this patch via an entry in the /proc
- filesystem.
- * IP TCP SYNCOOKIES=yes
- Activate "syn flood protection".
- * IP FORWARD=no
- If the machine should perform forwarding with two network cards,
- IP FORWARD should be set to yes; normally this is preferable, or re-
- quired, for a "router" or for "masquerading". The script /sbin/init.
- d/boot enables "IP forwarding" by means of an entry in the /proc
- filesystem.
-
- 403
-
-
-
- 17. The SuSE Linux Boot Concept
-
- * FQHOSTNAME=earth.cosmos.com
- Fully qualified hostname of your machine; fully qualified means the com-
- plete name, consisting of computer name and domain name.
- * SEARCHLIST=cosmos.com
- This entry is used for completing a not fully qualified hostname.
- If, for example, you enter venus, a check is made on whether
- venus.cosmos.com is a valid address. This variable has to be set
- if you plan to use DNS! You should at least enter your domain name here.
- You can make up to three entries, which should be separated by blanks.
- * NAMESERVER=193.141.17.193
- Address of the nameserver which is to be interrogated if a hostname has
- to be transposed to an IP address. You can enter up to three nameservers
- which should be separated by blanks. If you plan to use a nameserver,
- SEARCHLIST has to be set!
- * ORGANIZATION="Gladstone Ganter Inc."
- This text appears in every newsposting you send.
- * NNTPSERVER=helios
- Address of your news server. If you receive your news via UUCP and it
- is saved locally, you should enter localhost.
- * IRCSERVER=helios
- This is the place for your IRC server (Internet Relay Chat). Names of the
- servers should be separated by blanks.
- * START INETD=yes
- Controls whether the inetd super daemon should be activated. This dae-
- mon reacts to calls from other hosts and starts (depending on the port) the
- appropriate service. You need it if you want to log in via telnet or rlogin.
- If you plan to use xinetd (see Section 89) you should set this to no.
- * START XINETD=no
- Controls whether the xinetd super daemon should be activated (this is
- an enhanced inetd, see Section 89). If you plan to use this daemon,
- START INETD should be set to no.
- * SENDMAIL xxxx=
- The sendmail variables are described in Section 37 page 177
- * START POSTFIX=no
- Activates the mail server postfix. The relevant variables are
- POSTFIX CREATECF, POSTFIX RELAYHOST,
- POSTFIX MASQUERADE DOMAIN and POSTFIX LOCALDOMAINS.
- * SMTP=no
- Set to yes if a sendmail daemon should be activated. If you receive
- your e-mail exclusively via UUCP, you don't need it, provided you call
- sendmail -q after each polling. (rmail, started by UUCP, just puts mail
- into a queue but doesn't deliver it). If mail spool directories are mounted
- via NFS (on a network, for example) and the single host has got only
- outgoing mail, this could be set to no as well. The same applies with the
- use of relay hosts.
- * START PORTMAP=no
- Determines whether to start the portmapper or not. You need the portmap-
-
- 404
-
-
-
- 17.6. The Variables in /etc/rc.config ¡ System Configuration
-
- per if you plan to use your host as an NFS server (see Section 5.5
- page 145). Without this daemon, rpc.mountd and rpc.nfsd can't run;
- this is why the portmapper is started when the variable is set to no, but
- NFS SERVER is switched on! It is also necessary for NIS (see Section 5.5
- page 145).
- * NFS SERVER=no
- If the host is going to be used as an NFS server, this variable has to be set
- to yes. This initializes the start of rpc.nfsd and rpc.mountd. More on
- setting up an NFS server can be found in chapter Section 5.5 page 145.
- * REEXPORT NFS=no
- Set this variable to yes in order to re-export mounted NFS directories or
- NetWare volumes.
- * NFS SERVER UGID=yes
- If the daemon (rcp.ugidd) for the conversion of user and group ID's is
- to be started; this variable only takes effect if <NFS SERVER> is set to
- yes.
- * USE KERNEL NFSD="no"
- If the package package knfsd is installed, the kernel-based NFS dae-
- mon can be used. With this NFS daemon, locking is possible. See the
- corresponding variable, USE KERNEL NFSD NUMBER.
- * START AMD=no
- Start the automounter. If this is not needed you should prefer the autofs
- kernel module. If so, you need to set the next variable (START AUTOFS)
- to yes.
- * START AUTOFS=no
- This daemon enables you to automatically mount directories, via NFS as
- well as local directories, CD-ROM drives, floppy disks and more). The
- package autofs, series n must be installed and configured.
- * START RWHOD=no
- Controls whether rwhod is started. Caution: the rwhod regularly sends
- "Broadcasts". If you use "on-demand" connection (ISDN and/or diald)
- this may cause connections to be made, resulting in extra traffic and costs!
- * START ROUTED=no
- The route daemon is only necessary for dynamic routes (see the manpage
- for routed (man routed)). Caution, this service establishes a con-
- nection every 30 seconds. If the machine us connected to the Internet via
- dialup (for example, ISDN), then it makes no sense to set this variable to
- yes.
- * START NSCD=yes
- NSCD Initializing "Name Service Caching Daemon" at boot time.
- * START NAMED=no
- This controls whether the name daemon should be activated.
- * CREATE YP CONF=yes
- Set to yes if SuSEconfig should create the necessary files for YP. This
- depends on the next two entries as well (see Section 5.4 page 144).
- SuSEconfig also makes the appropriate changes to /etc/passwd and
- /etc/group.
-
- 405
-
-
-
- 17. The SuSE Linux Boot Concept
-
- * YP DOMAINNAME=cosmos.com
- YP domain name of hosts. For detailed information please refer to Sec-
- tion 5.4 page 144.
- * YP SERVER=helios.cosmos.com
- Name of the NIS server.
- * USE NIS FOR RESOLVING=no
- Use NIS for resolving host names.
- * START CIPED=no
- Start CIPE daemon for an IPIP tunnel.
- * START DHCPD=no
- Start server for DHCP Dynamic Host Configuration Protocol. For this the
- variables DHCPD INTERFACE, START DHCRELAY and DHCRELAY SERVERS
- are used.
- * START LDAP=no
- Start LDAP server.
- * START RADIUSD=yes
- Start radius accounting and authentication service. This service is used
- by some ISPs for authentication of their users. See documentation in
- /usr/doc/packages/radiusd.
- * START LPD=yes
- Start the lpd ("line printer"). Normally needed for printing.
- * START NNTPD=yes
- Start nntpd if you want to access news via an NNTP site.
- * START INN=no
- Start the INN news server.
- * START ATD=yes
- Controls whether the AT daemon is activated. This daemon enables you
- to perform tasks periodically. In contrast to the cron daemon, this action
- is only performed once.
- * START HTTPD=yes
- Controls whether the Apache http daemon should be activated.
- * START HTTPSD=yes
- Specifies whether the Apache httpsd ("secure" webserver) with SSL and
- PHP3 should be started.
- * START SQUID=no
- Controls whether the proxy server squid should be activated.
- * DOC HOST=""
- If you want to use the central documentation server which contains
- the SuSE help system, you should enter the name of the host, e. g.
- "helios.cosmos.com".
- * DOC SERVER=no
- You should set this variable to yes on the documentation server.
- In DOC ALLOW (see below) access to http-rman is set. Further-
- more the index files for the http server have been rearranged:http:
- //`hostname-f` instead of http://localhost.
-
- 406
-
-
-
- 17.6. The Variables in /etc/rc.config ¡ System Configuration
-
- * DOC ALLOW="LOCAL"
- List of machines (as patterns for /etc/hosts.allow) that are al-
- lowed to access the documentation server. This variable is read only if
- DOC SERVER is set to yes. You could also enter a subdomain here (e. g.
- with ".cosmos.com").
- * HTTP PROXY=""
- A couple of programs (e. g. lynx, arena, or wget) are capable of using
- proxy sites if this environment variable has been set.
- SuSEconfig may set this in /etc/SuSEconfig/* (see SDB http:
- //www.suse.de/sdb/en/html/lynx_proxy.html). Exam-
- ple:
- "http://proxy.provider.de:3128/".
- * FTP PROXY=""
- FTP proxy. Example: "http://proxy.provider.de:3128/".
- * GOPHER PROXY=""
- Gopher proxy. Example: "http://proxy.provider.de:3128/".
- * NO PROXY=""
- This enables you to exclude (sub) domains from the proxy. Example:
- "www.me.de, do.main, localhost".
- * START HYLAFAX=no
- Activates Hylafax. You will have to invoke faxsetup before setting this
- variable to yes.
- * START SMB=no
- Start the samba server; a file and printer server for MS-Windows.
- * START MARSNWE=no
- Activates the Novell server emulation.
- * START SSHD=yes
- Start the "Secure Shell Daemon"; ensure before starting that a "host key"
- exists ¡ see also the documentation in /usr/doc/packages/ssh as
- well as the manpages.
- * START XNTPD=yes
- Controls whether the "Network Time Protocol (NTP) daemon" is acti-
- vated (package xntp). It is configured via /etc/ntp.conf. Ra-
- dio Controlled Clocks have addresses in the form 127.127.T.U; in
- which T is the type of clock and U is the "unit number" which has
- a range from 0 to 3. ¡ Most clocks use a serial port or a special
- bus. The device file (Device) is normally only to the symbolic link
- /dev/device-U which refers to the actual hardware, where U has the
- value of the "unit number". See also /usr/doc/packages/xntp/
- html/refclock.htm. Example: You have a radio controlled clock
- attached to a serial port, you'll also need the necessary Symlink. For this
- see refclock.htm. ¡ for the typical DCF77 receiver the "PARSE"
- driver is required:
- ## Type 8 Generic Reference Driver (PARSE)
- ## Address: 127.127.8.u
- ## Serial Port: /dev/refclock-u
-
- 407
-
-
-
- 17. The SuSE Linux Boot Concept
-
- So, if you choose, by an entry in ntp.conf, the value server 127.127.8.0
- you'll also need the Symlink /dev/refclock-0 to refer to ttySx ¡
- where x represents the serial port on which the Radio controlled clock is
- attached.
- * XNTPD INITIAL NTPDATE=""
- List of the NTP servers from which the time can be obtained before the
- local server is started; e. g."helios.cosmos.com". If a number of
- servers are entered, they must be separated by a space. (package xntp).
- It is configured via /etc/ntp.conf.
- * DISPLAYMANAGER=""
- Sets up the login of the machine. This may either be a text console or
- the X Window System. Possible entries are: xdm (The standard display
- manager of the X Window System), kdm (KDE's display manager) or "".
- The latter sets the login to text console (runlevel 2). This is the default.
- * KDM SHUTDOWN=root
- Controls which user is allowed to shutdown the machine via kdm (reboot
- or shutdown). Possible values are: root (`root'), all (every user),
- none, and local (it may only be shutdown by users that logged in
- locally). If this is set to "", root is the default.
- * CONSOLE SHUTDOWN=reboot
- Controls how init should react to Ctrl + Alt + Del . Possible
- values: reboot (the machine reboots), halt (the machine shuts down)
- and ignore (nothing happens). Default is reboot.
- * START AXNET=no
- Applixware server.
- * START MYSQL=no
- Server for MySQL.
- * START ADABAS=no
- Adabas server. The following variables belong to Adabas: DBROOT,
- DBNAME, DBUSER and DBCONTROL ¡ see the respective comments in
- rc.config.
- * START DB2=no
- Server for DB2.
- * START ARKEIA=no
- Arkeia backup server.
- * START ARGUS=no
- Argus server (network monitor).
- * ARGUS INTERFACE=eth0 The interface Argus should listen to.
- * ARGUS LOGFILE="/var/log/argus.log"
- The Argus logfile. This file might become quite large!
- * CRON=yes
- Sets the start and stop of the cron daemon. This daemon lets you start
- certain programs at a given time. It is only started in runlevels 2 and 3. It
- is highly recommended that you activate this daemon, especially if your
- computer is running all the time. An alternative or replacement is the AT
- daemon (see Section 89 page 406).
-
- 408
-
-
-
- 17.6. The Variables in /etc/rc.config ¡ System Configuration
-
- There are a lot of options which require you to regularly run certain com-
- mands and programs. Therefore, the cron daemon should be activated on
- every system.
-
- Local Maintenance
- * RUN UPDATEDB=yes
- Set this to yes to have the locate database updated once per day via cron.
- locate is useful for quickly finding files. This tool may be fine tuned
- by a set of variables: RUN UPDATEDB AS, UPDATEDB NETPATHS,
- UPDATEDB NETUSER, and UPDATEDB PRUNEPATHS (see comments
- in rc.config). ¡ This updating may be carried out shortly after you
- have booted, if the computer is not switched on all the time; see Sec-
- tion 16.6.1 page 392.
- * REINIT MANDB=yes
- If the manpage data base should be renewed once a day by cron.daily.
- * CREATE INFO DIR=yes
- Set this to yes to have /usr/info/dir created, which serves as a
- general index of all info pages. This is useful after installing a package
- which contains info pages. Keep in mind that perl needs to be installed
- for this to work.
- * CHECK PERMISSIONS=set
- Controls check of file permissions according to /etc/permissions.
- set corrects wrong entries, warn warns you, and no deactivates this
- feature.
- * PERMISSION SECURITY="easy local"
- There are three levels of security: /etc/permissions.paranoid,
- /etc/permissions.secure and /etc/permissions.easy.
- You may enter either easy, secure or paranoid. You can also create
- your own security levels; e. g. in /etc/permissions.local. Then
- you may use local to activate your level.
- * RPMDB BACKUP DIR=/var/adm/backup/rpmdb
- Controls where cron.daily should install its RPM database backup. If you
- want to disable this feature, set this variable to "".
- * MAX RPMDB BACKUPS=5
- Maximum number of backup files for the RPM database.
- * DELETE OLD CORE=yes
- Core files are memory images of programs which have been killed due
- to a segmentation fault. These images are very useful for debugging
- purposes. If this is enabled, a regular search and deletion of old core
- files is launched.
- * MAX DAYS FOR CORE=7
- Assigns how old core files should be before they are deleted.
- * MAX DAYS FOR LOG FILES=365
- If a log file (mainly in /var/log) reaches a certain size, it will be
- automatically compressed and archived. `root' is informed via e-mail.
- This parameter sets how long these files are to be kept on disk before
-
- 409
-
-
-
- 17. The SuSE Linux Boot Concept
-
- being deleted automatically. If you set this value to 0, no compressing
- and no archiving will be done. Log files are written continuously and can
- grow to a considerable size! Compressed log files can be viewed anytime
- using less.
- * MAX DAYS IN TMP=30
- Selected directories (see TMP DIRS TO CLEAR below) are checked
- daily to see whether they have been accessed during the selected time
- interval (set in days). Files which have not been modified will be deleted
- automatically.
- * TMP DIRS TO CLEAR="/tmp /var/tmp"
- Enter here all directories which are to be searched for old files (see
- MAX DAYS IN TMP=30 above). item OWNER TO KEEP IN TMP="root bs"
- Files of system users given here should not be deleted, even if they have
- not been modified during the time specified.
- * CWD IN ROOT PATH=no
- The current working current working directory in the path of user
- `root'.
- * ROOT LOGIN REMOTE=no
- If a login for `root' is to be allowed by telnet or rlogin, this variable
- should be set to yes. For security aspects concerning this variable, please
- refer to page 421.
- * SUSEWM UPDATE=yes
- Controls whether SuSEconfig should adapt the system-wide configura-
- tion files according to the installed packages. You may fine tune this fea-
- ture by means of the following variables: SUSEWM WM, SUSEWM MWM,
- SUSEWM XPM, SUSEWM ADD and SUSEWM COMPAT.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 410
-
-
-
-