4. Daemons

Many Linux distributions run daemons most of us will never use. Most of these daemons are loaded by scripts. Where these scripts are and what they are called depends on your Linux distribution. Slackware set-up scripts are buried in /etc/rc.d/rc.*.

Before you proceed, a knowledge of Unix shell script programming would be a definite asset. However, if you have no experience writing Unix shell scripts, what follows is probably the quickest introduction to shell script programming ever written.

Take the following shell script:

#!/bin/sh echo "hello world" 
                        #echo "good bye cruel world"

The previous code will echo the string "hello world". Shell scripts must contain the the line

"#!/bin/sh"
at the very top line. After that every line is executed as if you had typed it at the keyboard (think of shell scripts as nothing more then glorified keyboard macros).

Lines which begin with a '#' are said to be commented out because they do not get executed by the shell. Most start-up scripts when they load daemons look like:

if somecondition 
                        do something 
                                  fi

What you want to do is comment out every line starting with the

if
statement and ending with the
fi
statement.

If you want to find where a daemon is loaded, search the start-up scripts for the name of the daemon. If I wanted to find where inetd is loaded in Slackware I would do the following:

$ cd /edt/rc/d $grep -n inetd rd.*

4.1. inetd

inetd allows people to do things like telnet, ftp, and send talk requests to your machine. If you never use your system as a server or need to access any of its services remotely you can remove inetd.

4.2. lpd

lpd is used to print files on your printer using the lpr command. If you never print on your Linux box you can remove lpd. If, however, you own a HP Deskjet ™ printer and would like to print, I highly recommend the package I put together called dj-printcap which is available at:

ftp://sunsite.unc.edu/pub/Linux/system/Printing/dj-printcap.tar.gz

4.3. nfsd and mountd

These two daemons are used to run an NFS server. If you never use your Linux system as an NFS server you can safely remove these two daemons.

4.4. portmap

The portmap daemon is used to handle RPC services. If you do not run an NFS server or any other RPC programs you can remove portmap.

4.5. sendmail

sendmail is another daemon which requires a fair bit of memory. If you never use your Linux box as a relay for sending e-mail or you never receive mail on your Linux box, you can probably remove sendmail. If you do send e-mail from your Linux box most e-mail clients can be set-up to send e-mail from another mail server.

4.6. others

There may be other daemons your system starts up which you do not need. Remove what you feel you have to. Two daemons which you must run are syslogd and klogd.