Managing Services in Fedora

Mauriat Miranda (http://www.mjmwired.net/contact/)

Other Guides/Resources

Published: 28 February 2006 (updated: 28 February 2006)

Post To: del.icio.us, furl, digg, spurl, gmail this, Blog this
Tweet
Show-Hide Menu

Introduction

This guide is to show how to control services in Fedora Core linux. Explanations included are services, runlevels, setting services, and controlling services.


Service

A service (often called a daemon) is a specific application that runs in the background and is usually non-interactive. They can be used for anything, including hardware, network access, monitoring, logging, etc. All operating systems use some set of services to automate actions.


Runlevel

A runlevel is a mode of operation that is used to group certain sets of daemons based on some purpose or restricted use. For the Fedora/Redhat based Linux systems, the primary runlevels in Fedora are:

Typically most users run with the X-server in runlevel 5, and many servers without X-servers run in runlevel 3. Usually runlevel 1 has no services running.

To determine what runlevel you are using, run:

# /sbin/runlevel

To determing what runlevel your system will start at the next boot, run:

# cat /etc/inittab | grep :initdefault:
id:5:initdefault:

Similarily you can edit the file /etc/inittab and change the initdefault value at line ~18.

To switch runlevels, you can run the following, replace RUNLEVEL with the appropriate number (3, 5, etc.):

# /sbin/init RUNLEVEL

Note: When switching FROM runlevel 5 to another runlevel, you might accidentally kill your X-server and entire GUI. Always make sure you are at a text console (CTRL-ALT-F1,F2,F3,F4) before switching runlevels.

To force a runlevel at boot without modifying /etc/inittab, you pass a number to end of the kernel from the Grub menu. At boot, higlight the option you wish to boot and before hitting <Enter>, hit <E>. Go to the end of the kernel line and add a 3 or 5. Then hit <Enter> and boot (<B> to boot).


Enable/Disabling Services

Every service must be set to either be "On" (enabled) or "Off" (disabled) for every runlevel.

To see what services are enabled for each runlevel, run:

# /sbin/chkconfig --list

To control which services are enabled for a runlevel, run system-config-services in the GUI or ntsysv at the command line. (Previous Fedora releases may have serviceconf instead of system-config-services).

To manually enable a specific service use chkconfig. The following command turns crond daemon for both runlevel 3 *AND* 5.

# /sbin/chkconfig --level 35 crond on

The --level could be 1, 2, 3, 4, 5 or any combination of the numbers. The on option can also be off. Running man chkconfig is useful.


Controlling Services

Regardless of how a service is enabled a runlevel or if it is defaulted to "On" or "Off", every service can be started or stopped and managed at runtime.

To see what services you have running run:

# /sbin/service --status-all

To individually control a single service, use service. For example:

# /sbin/service crond status
crond (pid 1604) is running...

The status option can be replace with start, stop, status, reload, restart and sometimes other options also. For example:

[root@charon ~]# service crond
Usage: /etc/init.d/crond {start|stop|status|reload|restart|condrestart}
[root@charon ~]# service crond stop
Stopping crond:                                            [  OK  ]
[root@charon ~]# service crond start
Starting crond:                                            [  OK  ]
[root@charon ~]# service crond restart
Stopping crond:                                            [  OK  ]
Starting crond:                                            [  OK  ]

All services located in the directory: /etc/init.d/ can be controlled this way. An alternate form of control would be:

# /etc/init.d/crond status

Virtually all of the above functionality. Is available through the GUI, using system-config-services. However there are times when problems with the GUI (X-server) may prevent you from controlling your services. Hence understanding the commands are very helpful.


Comments, suggestions, questions or any feedback welcome for this page or any of my Resources. Please use the contact link.

Help Out: If you found this guide or any Resource helpful, please consider supporting this site by recommending this page to others or linking to this page. I appreciate all the support I receive. Thank you in advance.

Disclaimer: The author makes no claim to the accuracy of the information provided. This information is provided in the hope that it will be useful, but WITHOUT ANY WARRANTY. There is no implied support from referencing this guide. Any help that is provided is at will. Use this information at your own risk. Always make proper backups and use caution when modifying critical system files.

PLEASE DO NOT mirror, translate or duplicate this page without contacting me.

Copyright © 2003-2013 by Mauriat Miranda (mjmwired.net).