Revision / Modified: Jan. 04, 2001
Author: Tom Berger
Original documents:
http://www.mandrakeuser.org/docs/admin/aservice.html
http://www.mandrakeuser.org/docs/admin/aservice2.html
http://www.mandrakeuser.org/docs/admin/aservice3.html
http://www.mandrakeuser.org/docs/admin/aservice4.html
If you happen to open 'System' - 'Services' in the Mandrake Control Center, you see a lot of columns, starting with a more or less cryptic name for the service. The second column reads either 'stopped' or 'running', the third is a button which reveals some basic information. Then there's a check box labelled 'On boot' followed by two buttons: 'Start' and 'Stop'.
This layout describes in essence what you can do with a service: you can start or stop it and you can configure it to be 'started' automatically at boot time.
But what is a service? In contrast to a program, services
do not require user input (they 'run in the background') apart from starting or
stopping them, and even this can be automated.
There are two kinds of services:
Services which are started and keep running for the duration of a session (i.e. until the system gets shut down). In Unix slang these are also called daemons ('helpful spirit'). These are usually servers of some kind which are started and then wait for incoming requests, like a web server, a mail server, the printer service or a font server.
Services which are started, run and terminated when finished. These are usually scripts for system maintenance or for enabling certain features, like the 'numlock' script whose sole purpose is to turn on the numlock feature - i.e. being able to use the right-hand number pad on most keyboards for number input - during boot.
Apart from the Mandrake Control Center, there's a slew of other
graphical configuration utilities you can use to configure services. Webmin and
Linuxconf both come with modules to do that. KDE and GNOME each offer
there own brand of service configuration utility. Furthermore there's 'tksysv' and its
console based parent 'ntsysv'.
But the MCC module does what needs to be done, but maybe
you like one of the other applications better. You don't need to be afraid
of causing inconsistencies when using different utilities since they all use
the same (command line) commands, 'service' and 'chkconfig'.
The 'service' command, a simple shell script in '/sbin', is used to display the status of a service, to start, stop or restart it. This command takes two arguments, the name of the service (i.e. the name of the file in '/etc/init.d') and what should be done in regard to this service:
'restart' and 'status' are not supported by all service scripts.
'chkconfig' lists, adds, removes and configures services permanently. To have a service started automatically at boot time, you would use:
# chkconfig service_name on
To have it not started automatically:
# chkconfig service_name off
To list all available services and their current configuration:
# chkconfig --list
The output of this last command will become clearer to you when you've read the next section. More on this command can be found in man chkconfig.
Like their graphical counterparts, these commands require you to be 'root'. Nothing forces you to use them instead of MCC or the other utilities, I prefer them because I'm faster at typing a command than at clicking through a graphical interface ;-).
Being able to control services has several advantages:
Reducing system load:
Although daemons are 'sleeping' most of time they nevertheless use up a
certain amount of system memory. The 'service' interface allows you to start
services on demand, for example you can start the printer daemon right before
printing and stop it when finished.
Increasing system security:
Daemons are listening on certain ports for events. More daemons running mean more open ports
which in turn provide more possible points of attack. On the other hand there are
services which actively increase system security, like the 'bastille-firewall' service.
Avoiding reboots:
If you change the configuration of a daemon, the daemon usually has to
be started to let the change take effect. If you install a package which contains
a service, the service usually won't start right away but will be configured to
be started automatically at boot time.
By controlling services you can fulfill these tasks during runtime.
Shortening boot time:
A good chunk of the time your Linux system needs to boot is taken up by
starting or running daemons and other services. If you configure
your system to start only those services on boot you need immediately
or all the time, you can reduce the boot up time considerably.
This section is intended for people who not only want to know what to do but also why things are done this way. You can live on Linux without this, but in my opinion it's more fun when you get a grasp of the concept behind the scenes.
If you are curious, you might want to know now how the system knows
which services are available. The service scripts are located in '/etc/init.d'
('/etc/rc.d/init.d' on older releases).
Graphical utilities like the Mandrake
Control Center just assume that every script in this directory controls a service, so
if you put a script there, it will appear on the Services module of the Mandrake
Control Center and in similar utilities, too, and can also be handled directly via the commands
'service' and 'chkconfig'.
A service script contains the commands to at least start or stop a service. Have a look at a basic template for a service script:
#!/bin/sh
# chkconfig: runlevels order_number_start_link order_number_stop_link
# description: short description of service
. /etc/rc.d/init.d/functions
case "$1" in
start)
echo -n "Starting service: "
command(s) to start service
echo
;;
stop)
echo -n "Shutting down service: "
command(s) to stop service
echo
;;
status)
status service_name
;;
*)
echo "*** Usage: service_name {start|stop|status}"
exit 1
esac
exit 0
If you've already seen a shell script, it's pretty simple. 'chkconfig' and 'description' are explained in the next subsection.
The 'functions' line
is only needed here to have the 'status' command available. Then there's a 'case' fork which tells
the script which commands to execute if the last argument to the 'service' command is either 'stop',
'start' or 'status'. The 'echo' lines provide some feedback, '*)' matches
all cases in which the last argument isn't one of 'start', 'stop' or 'status' and thus invalid (prints a usage message and
exits).
Of course you have to make sure that service_name really is the name of the script and that the script
has the executable bit set.
Some services depend on other services. The 'httpd' service (Apache web server) for example won't start correctly if the 'network' script hasn't already set up the network interfaces. How is the order in which services are started on boot determined?
Have a look at the '/etc/rc.d' directory:
$ ls /etc/rc.d
init.d/ rc0.d/ rc2.d/ rc4.d/ rc6.d/ rc.local* rc.sysinit* rc* rc1.d/ rc3.d/ rc5.d/ rc.firewall rc.modules*
You see the 'init.d' from '/etc' here again (in fact it's the same) and then
several directories and files starting with 'rc' ('rc' is short for
'runcom[mand]').
In Mandrake Linux releases 8.0 and later, these files and directories are
also accessible directly from the '/etc' directory.
If you now look into one of those 'rcnumber' subdirectories, you will find a bunch of files, some
of them starting with 'S' and some of them with 'K' followed by a two-digit
number. 'S' is short for 'start' and 'K' stands for 'kill'. The numbers imply
the order in which starting and killing services takes place. In fact all those files
are just links to their appropriate counterparts in '/etc/init.d'.
'S12syslog' for example is a link to '/etc/init.d/syslog' and gets started after 'S10network' which
links to '/etc/init.d/internet' but before 'S20random'.
You don't have to create these links yourself when configuring a standard service with 'chkconfig' because most scripts already contain a 'chkconfig' line, like for example the 'network' service script:
#! /bin/bash
#
# network Bring up/down networking
#
# chkconfig: 2345 10 90
# description: Activates/Deactivates all network interfaces configured to \
# start at boot time.
The standard configuration for this script is to have it started in the runlevels 2, 3, 4 and 5 with a 'S10network' link in the directories '/etc/rc.d/rc.2' to '/etc/rc.d/rc.5' and stopped in runlevels 0, 1 and 6 with a 'K90network' in the directories '/etc/rc.d/rc.[0,1,6]'. This standard configuration is applied when using the 'reset' option:
# chkconfig network reset
will create exactly these links, whereas
# chkconfig service_name on
always defaults to starts on runlevels 3, 4 and 5 only.What are runlevels then? Runlevels are listed in '/etc/inittab':
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
During operation, the system always is in one of these runlevels, most of the time either
in runlevel 3 (console) or runlevel 5 (X, i.e. the graphical interface).
Upon switching runlevels, e.g. by starting the graphical interface or stopping it, by booting the machine or
rebooting it etc, the script '/etc/rc.d/rc' is executed. This script in turn looks up the start and kill
links in the appropriate 'rcnumber' directory (where number matches the number of the runlevel the
system is switching to) and executes them, i.e. starts or stops the services as
configured for the runlevel the system is switching to. This explains why '/etc/rc.d/rc.0' and
'/etc/rc.d/rc6' almost only contain 'kill' links since all services are stopped when halting or
rebooting the machine.
This elaborate system is called the System V Init Process, because it has been introduced with version five of UNIX®. Apart from Slackware, all major Linux distributions use it. Slackware and *BSD operating systems use the BSD-style Init Process which more or less packs the whole initialization and service maintenance work into one file.
The 'chkconfig' program allows you a finely grained control on what services are started or stopped
on which runlevels. Under certain circumstances it can be useful to reconfigure services.
Take the GPM service, for example. GPM is the 'General Purpose Mouse Daemon'. You will need to have it
running when you want to use a mouse on runlevel 3 (console). On runlevel 5 (graphical interface), it is
next to useless, it can even cause incompatibilities to occur. Using 'chkconfig' you
can configure the gpm service only to be run on runlevel 3:
# chkconfig --level 3 gpm on
# chkconfig --level 5 gpm off
This will create a start link in 'rc3' and a kill link in 'rc5'.
The next pages of this article will provide you with an overview of all service scripts available in Mandrake Linux 8.1.
This list tries to cover all the scripts in '/etc/init.d'.
It depends on your scale of installation how many of these services are
available on your system.
In this list services are either 'optional', 'common' or 'essential'. 'Optional' means you can turn this service safely off without loosing vital functionality, 'common' means that this service isn't vital but usually enabled, and 'essential' means you should not turn it off, unless you know exactly what you are doing and why you are doing it.
Needed for arabic languages to be displayed correctly.
Pertinence: Optional. Package: acon. Doc: Files in
'/usr/share/doc/acon-[...]'
ACPI (Advanced Configuration Power Interface) is the successor to APM
(Advanced Power Management). 'acpid' is maintained by the ACPI4Linux project. Since essential
functions like 'suspend' and 'resume' haven't been implemented yet, 'apmd' is
still used as the default power management service in Mandrake.
Pertinence: Optional. Package: acpid. Doc: Linux ACPI
HOWTO
Control script for ADSL (Asyncronous Digital Subscriber Line) connections
via PPPoE (Point-to-Point Protocol over Ethernet).
Pertinence: Optional. Package: rp-pppoe. Doc: man pppoe
,
man pppoe.conf
This starts and stops the ALSA (Advanced Linux Sound Architecture) sound
driver. If you don't want sound (or your card uses an OSS driver), turn it
off.
Pertinence: Optional. Package: initscripts. Doc: http://www.alsa-project.org/documentation.php3
The Automounter Daemon. Useful for automatically mounting (hey!) network
file systems or removable media. Since removable media are handled by
'supermount' in Mandrake and 'amd' does have its handling quirks, you will
possibly only need it for mounting network shares (NFS and the like). Do not
run this if you don't need it as it poses a potential security hole.
Pertinence: Optional. Package: am-utils. Doc: MU on 'automount', man pages.
The cousin of the 'cron'-daemon. 'cron' runs tasks like system maintenance
at certain times, but skips them if the system isn't running at that time.
That's where 'anacron' comes in: it checks delayed 'cron'-tasks at boot-time
and executes them. If your machine doesn't run all the time, you should leave
it enabled.
Pertinence: Optional. Package: anacron. Doc: man anacron
, MUO on using anacron
apcupsd manages UPS (Uninterruptable
Power Supply) hardware manufactured by APC
(American Power Conversion).
Pertinence: Optional. Package: apcupsd. Doc: The APCUPSD Users
Manual
The Advanced Power
Management BIOS Daemon. Usually you will only need it if your computer
runs on battery, i.e. a laptop. Some laptop BIOSes do not take kindly to apmd,
causing massive installation problems.
Pertinence: Optional. Package: apmd. Doc: man apmd
Keeps track of Ethernet/IP address pairings (no, I don't know what's that
good for either).
Pertinence: Optional. Package: arpwatch. Doc: man arpsnmp
.
The At Daemon. Manages scheduled ('at a certain time') jobs. Related to
'crond'.
Pertinence: Optional. Package: at. Doc: man atd
, man
at
, MUO article on 'at'.
These scripts are parts of the server package for the Coda File System, a distributed file
system for networks, except for 'venus.init', which belongs to the client
package.
Pertinence: Optional. Package: coda-debug-server (venus.init:
coda-debug-client). Doc: The Coda
HOWTO
Controls the automount daemon (amd). Usually not enabled. You might need it
if you want to mount network-shares automatically.
Pertinence: Optional. Doc: man autofs
, man
automount
.
Bayonne provides a
telephony application server.
Pertinence: Optional. Package: bayonne. Doc: Bayonne User
Manual.
Control script for the Boa Webserver, a
lightweight alternative to Apache.
Pertinence: Optional. Package: boa. Doc: on home page.
Needed to provide boot-information to disk-less clients. Usually not
enabled.
Pertinence: Optional. Package: bootparamd. Doc: man
bootparamd
.
Control file for the cddb-proxy
(CD-Database). Useful to allow clients behind a firewall making CDDB
queries.
Pertinence: Optional. Package: cddb-proxy. Doc: 'readme' in
'/usr/share/doc/cddb-proxy-[...]'.
The Configuration Engine
provides software agents and a language for central configuration and
administration of large scale networks.
Pertinence: Optional. Package: cfengine. Doc: Example scripts in
'/usr/share/doc/cfengine-[...]', info cfengine-Reference
,
info cfengine-Tutorial
.
chronyd can keep
your system's time in step with the true time or keep a network of computers
in time sync with each other.
Pertinence: Optional. Package: chrony. Doc: FAQ, info
chrony
The Cron Daemon. Manages repeated tasks ('chronological'). Related to
'atd'.
Pertinence: Essential. Package: vixie-cron. Doc: man crond
,
man cron
, MUO article on 'cron'
CUPS is the standard printing service on Mandrake Linux.
Pertinence: Optional. Package: cups. Doc:
/usr/share/doc/cups/documentation.html, MUO on using
CUPS
You will need if your DHCP (Dynamic Host Configuration Protocol) server is
located in another subnet than its clients.
Pertinence: Optional. Package: dhcp-relay. Doc: man dhcrelay
Needed on a machine which has to provide IP adresses to other
machines.
Pertinence: Optional. Package: dhcp-server. Doc: man dhcpd.conf
,
man dhcpd
DHSD is an
IP updater for the free DHS.ORG dynamic DNS
service.
Pertinence: Optional. Package: dhsd. Doc: Files in
'/usr/share/doc/dhsd-[...]'
Control script for the gpppwrap
multi-number/provider dialer.
Pertinence: Optional. Package: gpppwrap. Doc: man gpppwrap
Fcron is a replacement for 'cron' as
well as 'anacron'. Notice that ML 8.1 comes with an outdated version which has
security issues. Get 2.0 from the Fcron website.
Pertinence: Optional. Package: fcron. Doc: man fcron
, man
fcrontab
Daemon for the Fetchmail mail
retriever.
Pertinence: Optional. Package: fetchmail-daemon. Doc: MUO on configuring fetchmail, man
fetchmail
Contains code blocks to be used by other service scripts.
Pertinence: Essential. Package: initscripts. Doc: Read the script ;-)
GateD is a network routing
daemon.
Pertinence: Optional. Package: gated. Doc: man gated
GnuDIP can be used by an
Internet provider to assign static DNS names to its clients even if those
clients have their IPs dynamically assigned.
Pertinence: Optional. Package: gnudip-server. Doc: Files in
/usr/share/doc/gnudip-server-[...]
General Purpose Mouse Daemon. Necessary only if you want to use your mouse
on the console (not xterms). If you only work within X, it's better
to turn it off, since incompatibilities with X are known.
Pertinence: Common. Package: gpm. Doc: man gpm
The script executed when the system gets halted or rebooted. This script is
not meant to be executed directly from the commandline.
Pertinence: Essential. Package: initscripts. Doc: Read script.
HardDrake is the standard hardware configuration recognition and
configuration program. This script performs a hardware check on each boot
('kudzu mode'). You might want to turn this off if your hardware configuration
does not change on a regular basis. This will save you some seconds on boot
time.
Pertinence: Common. Package: harddrake. Doc: ML user manual.
heartbeat is part of the High-Availability
Linux Project, used for clusters.
Pertinence: Optional. Package: heartbeat. Doc: In
'/usr/share/doc/heartbeat-[...]/doc'
Script for the CUPS HP OfficeJet printer / scanner driver.
Pertinence: optional. Package: hpoj. Doc: hpoj documentation
index
The daemon necessary to run the Apache web-server. In ML, it runs as a
standalone service and not via '(x)inetd'. If you do not intend to run a
web-server, turn it off: it uses a considerable amount of system resources
(more than 15 MB of system memory) and makes your box vulnerable to outside
attacks if not configured properly (via '/etc/httpd/conf/httpd.conf').
Pertinence: Optional. Package: apache-conf. Doc: man httpd
.
Control script for the HylaFAX fax
server.
Pertinence: Optional. Package: hylafax-server. Doc: The HylaFAX HOW-TO
IBOD is the 'ISDN Bandwidth
On Demand Daemon'. It supports opening or closing a second B-channel
automatically upon a certain amount of traffic.
Pertinence: Optional. Package: ibod. Doc: man ibod
Provides identification information about the host it is running on.
Necessary to access some braindead IRC networks.
Pertinence: Optional. Package: pidentd. Doc: man identd
Daemon script for InterfaceLED. This program
allows you to use the keyboard LEDs for displaying network traffic and
more.
Pertinence: Optional. Package: ifled. Doc:
'/usr/share/doc/ifled-0.6/README.init-script'
Obsolete since ML 7.2, replaced by xinetd.
The Internet 'Super-Server'. Handles dial-in services like ftp, pop3
and telnet (these three are enabled by default). If you only dial out (e.g.
for connecting to the Internet), or just have Apache running, you can turn it
off and thus close another potential security hole.
If you want to use it however, have a close look at '/etc/inetd.conf',
'/etc/hosts.allow', '/etc/hosts.deny' and install the tcp-wrappers.rpm (which
is usually installed by default).
Pertinence: Optional. Package: inetd. Doc: man inetd
, man
hosts_access
and man tcpd
.
Control script for the InterNetNews Usenet server.
Pertinence: Optional. Package: inn. Doc: lots ;-) Some 30 man pages and an FAQ
in '/usr/share/doc/inn-[...]/faq'
'ipchains' is the standard firewalling method in Linux kernel 2.2 based
systems, Linux kernel 2.4 (Mandrake Linux 8.x) uses 'iptables' instead. You'll
need this if you want to keep on using your old (2.2) firewall rules and
software.
Pertinence: Optional. Package: ipchains. Doc: man ipchains
, IPCHAINS-HOWTO
iplog logs network traffic
(who'da thunk it?).
Pertinence: Optional. Package: iplog. Doc: man iplog
ippl (IP Protocols Logger) logs
incoming network traffic.
Pertinence: Optional. Package: ippl. Doc: man ippl
Part of Linux FreeS/WAN, an
implementation of the IPSEC (Internet Protocol SECurity) protocol. IPSEC
allows you to connect trusted networks via untrusted ones using a technique
called 'tunneling' (in short: all the traffic between the trusted networks
gets encrypted and decrypted automatically).
Pertinence: Optional. Package: freeswan. Doc: lots
Part of the iptables/netfilter
duo, which does the firewalling and IP masquerading on Linux kernel 2.4.x
systems (successor to 'ipchains').
Pertinence: Common. Package: iptables. Doc: HOWTOs, man
iptables
Same as above, but for the future IPv6 network protocol.
Pertinence: Optional. Package: iptables-ipv6. Doc: See above
"iptoip is a program to
maintain an ipvsadm [see next entry] table coherent."
Pertinence: Optional. Package: iptoip. Doc: man pages in newer version or CVS
Used to administer a Linux
Virtual Server. In short: cluster stuff.
Pertinence: Optional. Package: ipvsadm. Doc: man ipvsadm
ircd (Internet Relay Chat Daemon) is the
original IRC server software.
Pertinence: Optional. Package: ircd. Doc: man ircd
, files in
/usr/share/doc/ircd-[...]
Control script for IR (Infra-Red) connected devices, maintained by the Linux-IrDA Project.
Pertinence: Optional. Package: irda-utils. Doc: On project's documentation
page
For users of ISDN-cards (terminal-adapters are handled like
modems). Notice that you might still have to configure this service, read
'/usr/doc/isdn4net-[...]/doc/INSTALL.quick' for more. In ML 7.2 and later, use
the 'draknet' utility.
Pertinence: Optional. Package: isdn4net. Doc: Files in
'/usr/share/doc/isdn4net-[...]/', MUO on
configuring ISDN
Control scripts for the Open Source Instant Messaging server Jabber. You'll need jabber-icq if you want
to allow clients to use the ICQ service.
Pertinence: Optional. Package: jabber, jabber-icq. Doc: docs.jabber.org
jail is Just Another IP Logger.
'nuff said.
Pertinence: Optional. Package: jail. Doc: man icmplog
, man
tcplog
FreeWnn is needed to display Japanese
characters correctly.
Pertinence: Optional. Package: FreeWnn. Doc: man jserver
Junkbuster is an ad-, cookie- and
contentblocking proxy. The version included has been slightly modified by Stefan Waldherr. Notice that
the included blocklist is really, really old.
Pertinence: Optional. Package: junkbuster. Doc: 'ijbfaq.html' and
'ijbman.html' in '/usr/share/doc/junkbuster-[...]'
Control scripts for a Kerberos
5 server. Kerberos is a network authentication protocol. In order for
clients to access a Kerberos server, they need special client software (like
'ftp-client-krb5').
Pertinence: Optional. Package: krb5-server. Doc: info
krb5-admin
Not a service in the strict sense of the word. The 'keytable' script loads
the selected console keyboard map as set in '/etc/sysconfig/keyboard'
(variable KEYTABLE).
Pertinence: Common. Package: console-tools. Doc: man loadkeys
Not a service, but a startup script which generates the file
'/boot/kernel.h' on each boot. This generated file is used during compiling
source code.
Pertinence: Common. Package: initscripts. Doc: None
Not a service, but a mere short helper script to stop renitent
services.
Pertinence: Common. Package: initscripts. Doc: None
Detects and configures new or changed hardware during boot. You can turn it
off and your box will boot faster. You can also start kudzu during normal
system operation to configure new hardware.
Pertinence: Common. Package: kudzu. Doc: man kudzu
LDAP is short for Lightweight Directory Access Protocol, a central network
service for information stored in databases ('directories'). This script is
part of the packages openldap1 and openldap-servers, which are maintained by
the OpenLDAP project.
Pertinence: Optional. Package: openldap1, openldap-servers. Doc: man
ldapd
and lots of others
Startscript for the Linuxconf central
administration system.
Pertinence: Common. Package: linuxconf. Doc:
'/usr/lib/linuxconf/help.[language-code]', online help system.
Either part of the old 'lpr' printer spooler software or its
(self-acclaimed) successor, LPRng (ng = next
generation).
Pertinence: Optional. Package: lpr, LPRng. Doc: man lpd
Not a service, but a helper script to set the correct console keymap.
Pertinence: Common. Package: initscripts. Doc: None
Mandrake's version of an 'autoexec.bat' (no doubt I'll get myself killed
with this comparison ;-)).
Pertinence: Common. Package: initscripts. Doc: Read comments in the script
Not a service. Determines which commands should be run the first time the
system is booted.
Pertinence: Common. Package: initscripts. Doc: Read comments in the script
'mc' (Midnight Commander) is a popular Linux console file manager. 'mc' can
access machines running 'mcserv' just like the machine it is running on.
Mandrake Linux comes with the 'secure-mcserv' version which offers more access
control.
Pertinence: Optional. Package: mcserv. Doc: man secure-mcserv
Medusa is the search/indexing software for the GNOME desktop.
Pertinence: Optional. Package: medusa. Doc: man medusa-config
mon is a resource monitor
(from networking to room temperature).
Pertinence: Optional. Package: mon. Doc: Files in
'/usr/share/doc/mon-[...]'
MOSIX extends the Linux kernel by
support for scalable cluster computing.
Pertinence: Optional. Package: mosix-utils. Doc: man mosix
MySQL (SQL = Structured Query Language)
provides a database.
Pertinence: Optional. Package: MySQL. Doc: 'manual.html' in
'/usr/share/doc/MySQL-[...]'
Part of BIND (Berkeley
Internet Name Domain), the standard Domain Name Server (DNS) software on
Linux. A name server maps IP addresses to machine names.
Pertinence: Optional. Package: bind. Doc: Files in '/usr/share/doc/bind-[...],
man named.conf
and others
Nessus provides software to remotely
scan a network for security holes.
Pertinence: Optional. Package: nessus. Doc: Nessus documentation page,
man nessusd
Not a service. Calling this script tries to mount all available network
shares (NFS, NCP, SMB).
Pertinence: Common. Package: initscripts. Doc: man mount
Not a service. Activates all network interfaces at boot time (or whenever
invoked by the 'service' command) by calling the scripts in
'/etc/sysconfig/network-scripts'.
Pertinence: Common. Package: initscripts. Doc: man ifconfig
and
the appropriate documentation for the initiated interfaces
Control script for the Linux NFS
server (Network File System), the standard file sharing protocol in
Linux/Unix.
Pertinence: Optional. Package: nfs-utils. Doc: man nfsd
, MUO article on NFS.
Starts and stops the NFS file locking service. You will need this on NFS
servers as well as clients.
Pertinence: Optional. Package: nfs-utils-clients. Doc: man nfsd
,
MUO article on NFS.
The Linux write cache usually prevents disks from spinning down when not in
use. noflushd works around this
issue.
Pertinence: Optional. Package: noflushd. Doc: man noflushd
'nscd' is a Name Service Caching Daemon, usually used in combination with
NIS+ (Network Information Service) or LDAP (Lightweight Directory Access
Protocol).
Pertinence: Optional. Package: nscd. Doc:
LDAP Implementation HOWTO
Control script for a Time
Synchronization Server using the Network Time Protocol. Useful if you have
to keep machines in a network in sync.
Pertinence: Optional. Package: ntp. Doc: Files in
'/usr/share/doc/ntp-[...]'
No service. 'Locks' the NumLock key at boot, thus making it possible to use
the number block on most keyboards to type in numbers. This can get pretty
funny when enabled on laptops ...
Pertinence: Common. Package: numlock. Doc: man
enable_X11_numlock
Needed to support printing from the OKI 4w and similar Windows only
printers.
Pertinence: Optional. Package: printer-filters. Doc: Read comment in
script
Olympus allows you to administer a
large network of machines from one place.
Pertinence: Optional. Package: olympus-server. Doc: See project hompage.
Control script for an OpenNap
server using the Napster file sharing protocol. Presumably one of the best
ways to get in trouble these days ;-). Notice that there's an administrator
account with a default password you should change.
Pertinence: Optional. Package: opennap. Doc: 'manual.html' in
'/usr/share/doc/opennap-[...]'
Part of the Card Services for
Linux Project software which supports PCMCIA (PC-Memory Card International
Association) cards frequently used in laptops.
Pertinence: Optional. Package: kernel-pcmcia-cs. Doc: man pcmcia
,
Linux
PCMCIA HOWTO
Security tool needed for Remote Procedure Calls, especially in NIS and NFS
connections.
Pertinence: Optional. Package: portmap. Doc: man portmap
Starts or stops the Psionic PortSentry 'Port
Scan Detection and Active Defense System' which monitors ports for scans and
blocks scanning hosts immediately.
Pertinence: Optional. Package: portsentry. Doc: Files in
'/usr/share/doc/portsentry-[...]'
The standard mail server software in Mandrake Linux, a replacement for
sendmail. You will need it when your mail reader can't get or send its mail on
its own or if you want to provide mail services for a network.
Pertinence: Optional. Package: postfix. Doc: man postfix
,
'/usr/doc/postfix-[version]/html/' MUO on
configuring PostFix
PostgreSQL provides a database
server similar to MySQL.
Pertinence: Optional. Package: postgresql-server. Doc: In package
postgresql-docs
Powertweak is a
program to tune your kernel and hardware settings for optimal
performance.
Pertinence: Optional. Package: powertweak. Doc: Files in
'/usr/share/doc/powertweak-[...]/Documentation'
PoPToP is a free
implementation of a PPTP (Point-to-Point Tunneling Protocol) server, needed to
connect Virtual Private Networks (VPN).
Pertinence: Optional. Package: pptpd-server. Doc: man pptpd
Prelude is a sophisticated
Intrusion Detection System (IDS).
Pertinence: Optional. Package: prelude. Doc: In package 'prelude-doc'
Control script for the standard Mandrake Linux FTP server, ProFTPd.
Pertinence: Optional. Package: proftpd. Doc: on project home page
Allows monitoring process activities.
Pertinence: Optional. Package: psacct. Doc: info accounting
PureFTPd (cl)aims to be a
compliant, secure, easy and then some FTP server.
Pertinence: Optional. Package: pure-ftpd. Doc: man pureftpd
PVM (Parallel
Virtual Machine) allows you to use a network of Unix and NT computers as a
single virtual parallel machine.
Pertinence: Optional. Package: pvm. Doc: man pvm
Control script for the Linux IPv6
Router Advertisement Daemon. You'll need this to take advantage of the
IPv6 stateless autoconfiguration feature (don't ask ...).
Pertinence: Optional. Package: radvd. Doc: man radvd
No service. Improves the generation of random numbers (needed for
security).
Pertinence: Common. Package: initscripts. Doc: man 4 random
No service. "This scripts assigns raw devices to block devices (such as
hard drive partitions)." Useful for databases (or so I'm told).
Pertinence: Common. Package: initscripts. Doc: Example in
'/etc/sysconfig/rawdevices'
'routed' is the Network Routing Daemon. You will need this if your machine
acts as a router (obviously) for other machines in your network (e.g. as a
gateway into another network like the Internet).
Pertinence: Optional. Package: routed. Doc: man routed
Provide access to information (status, users) or services (send messages)
useful when maintaining a multiuser network.
Pertinence: Optional. Package: rusers, rwall, rwho. Doc: respective man
pages
The standard Internet mail server. In Mandrake Linux now replaced by
PostFix (but still part of the distribution). If your mail client is capable
of sending and receiving mail itself (e.g. Netscape Mail, kmail, Pine), you
don't need it.
Pertinence: Optional. Package: sendmail. Doc: man sendmail
This skript starts or stops 'sensord', a hardware monitoring daemon and
part of the lm_sensors hardware
monitoring software.
Pertinence: Optional. Package: lm_utils. Doc: man sensors
Shorewall is a firewall /
masquerader to be used on single systems (i.e. a desktop firewall).
Pertinence: Optional. Package: shorewall. Doc: Files in
'/usr/share/doc/shorewall-[...]/documentation'
No service. Executed when putting the system into runlevel 1 ('single user'
or 'rescue' mode).
Pertinence: Common. Package: initscripts. Doc: None
Needed for running SAMBA, the Server Message Block Protocol Server. It
allows you to provide file and printer sharing services to MS-Windows clients
and to access shares on those machines from your Linux box.
Pertinence: Optional. Package: samba. Doc: man samba
, MUO article on SAMBA.
Control script for the Snort Intrusion
Detection System.
Pertinence: Optional. Package: snort. Doc: Files in
'/usr/share/doc/snort-[...]'
No service. Starts / stops sound device and loads / saves mixer
settings.
Pertinence: Common. Package: initscripts. Doc: None
Squid is a web proxy caching
server (and much more). Although configuration isn't trivial, it can speed up
net access for clients considerably.
Pertinence: Optional. Package: squid. Doc: vast amount of files in
'/usr/share/doc/squid-[...]'
Control script for an OpenSSH server,
a terminal services server using strong encryption, bound to replace
inherently insecure services such as telnet or ftp.
Pertinence: Optional. Package: openssh-server. Doc: MUO article on SSH
Control script for the Sympa
mailing list management software (server end, not client end).
Pertinence: Optional. Package: sympa. Doc: man sympa
, files in
'/usr/share/doc/sympa-[...]'
System Message Logger, i.e. it writes system or service messages to so
called log files ('/var/log/*').
Pertinence: Essential. Package: sysklogd. Doc: man sysklogd
syslog-ng (ng =
next generation) intends to replace sysklogd. It adds the possibility to
filter based on message contents using regular expressions.
Pertinence: Optional. Package: syslog-ng. Doc: man syslog-ng
Control script for the kernel based TUX web server.
Pertinence: Optional. Package: tux. Doc: 'tux.README' in
'/usr/share/doc/tux-[...]'
Control script for the project formerly known as 'ucd-snmp', now as NET-SNMP. It is an implementation
of the Simple Network Management Protocol (nomen est omen). If you know more,
you know more than me.
Pertinence: Optional. Package: ucd-snmp. Doc: man snmpd
and lost
more. Also check out the project homepage
Part of the former 'smartupstools', now called NUT (Network UPS Tools). This package
allows the control of Uninterruptable Power Supplies over a network (you might
have guessed that).
Pertinence: Optional. Package: smartupstools. Doc: Files in
'/usr/share/doc/smartupstools-[...]'
No service. When called (usually during boot) this script starts or stops
USB (Universal Serial Bus) devices by loading or unloading the appropriate
drivers (kernel modules). You are advised not to run this script
during system operation.
Pertinence: Common. Package: initscripts. Doc: Comments in script, also have a
look at '/etc/sysconfig/usb'
Part of the Virtual Network
Computing software. VNC allows you to remotely display / view / manage the
desktop of another machine. It is platform-independent.
Pertinence: Optional. Package: vnc-server. Doc: in package 'vnc-doc'
Control script for the Virtual Router
Redundancy Protocol Daemon, used to elect a master server on a local
network and provide fallback in case the master fails.
Pertinence: Optional. Package: vrrpd. Doc: man vrrpd
'watchdog' monitors a machine and reboots it if a system freeze is detected
(sounds funny, but works).
Pertinence: Optional. Package: watchdog. Doc: man watchdog
Webmin is a web based system
administration suite (an alternative to Linuxconf).
Pertinence: Optional. Package: webmin. Doc: on project home page and
inline
WINE tries to build a Windows
compatibility layer software (i.e. it intends to enable you to run Windows
programs on Linux). This script enables users to run Windows applications by
just clicking on them (well, in theory at least ...)
Pertinence: Optional. Package: wine. Doc: Files in
'/usr/share/doc/wine-[...]/wine-doc'
X Font Server. In the standard X configuration of Mandrake Linux, X won't
run without a working font server.
Pertinence: Common. Package: XFree86-xfs. Doc: man xfs
xinetd controls, logs or redirects
accesses to other servers running on the same machine. It replaces
inetd.
Pertinence: Optional. Package: xinetd. Doc: MUO article on xinetd, man
xinetd
NIS Binder. Only needed if your computer is part of a NIS (Network
Information Service) domain (yp for its old name 'yellow pages').
Pertinence: Optional. Package: ypbind. Doc: man ypbind
Scripts to control an NIS server.
Pertinence: Optional. Package: ypserv. Doc: man ypserv