Configuración de servicios en Fedora (runlevel)

desarrollo de software a medida - Evos Consulting

Control de la ejecución de servicios en Linux

Configuración de servicios en Linux Fedora

3.02.2008

¿Qué es un servicio en Linux?

Un servicio es una aplicación que se ejecuta en background y que por lo general no es interactiva. En Linux como en otros Sistemas Operativos se usan para automatizar tareas.

Runlevels

(Nivel de ejecución) Se entiende por Runlevel al modo de operación de linux que agrupa la ejecución de un determinado conjunto de servicios, en Fedora Linux los runlevels primarios son:

Para determinar que runlevel está activo debemos ejecutar:

# /sbin/runlevel

Podemos modificar el runlevel del siguiente reinicio editando el archivo /etc/inittab y cambiar el valor de initdefault

Para cambiar entre runlevels debemos ejecutar el siguiente comando cambiando X por el runlevel deseado

# /sbin/init X

Es recomendable hacer el cambio de runlevel desde modo consola (CTRL-ALT F1 o F2 o F3 o F4)

Habilitando y desabilitando Servicios en Linux

Los servicios tiene dos estados posibles, On y Off en cada Runlevel, para ver que servicios están habilitados en todos los Runlevels ejecutar:

# /sbin/chkconfig --list

para controlar los servicios que se van a ejecutar automaticamente en el siguiente reinicio de sistema ejecutar (desde una consola)

# ntsysv

se verá una pantalla parecida a la que se muestra a continuación:

Utilizando los cursores y eligiendo los servicios adecuados podremos configurar nuestro sistema.

Tambien es posible realizar la tarea manualmente con la utilidad chkconfig, el siguiente comando habilita mysqld para los runlevels 3 y 5

# /sbin/chkconfig --level 35 mysqld on

--level puede ser 1,2,3,4,5 o cualquier combinación de estos las opciones son on y off.

Gestión de servicios con el servidor en funcionamiento

Independientemente de como este configurado el sistema es posible arrancar y parar servicios en tiempo de ejecución, esto es útil cuando se realizan modificaciones en los servidores instalados. Por ejemplo cuando se actualiza el archivo httpd.conf para cambiar alguna característica del servidor Apache.

Para ver que servicios están ejecutandose

# /sbin/service --status-all

Para controlar un servicio (crond en este ejemplo) ejecutar

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

la opción status puede cambiarse por start, stop, restart y algunas otras dependiendo del servicio, para saber que opciones tenemos disponible ejecutar service con el nombre del servicio y sin ninguna opción.

 

K.A.G.S. abril-2007