Inicio > Linux > Aprendiendo un poco sobre Linux: Servicios

Aprendiendo un poco sobre Linux: Servicios


Linux ofrece multitud de servicios o servidores, estos pueden iniciar o arrancar junto con la carga del sistema o pueden después ser puestos a funcionar cuando se requieran. Parte esencial de la administración de sistemas Linux es continuamente trabajar con los servicios que este proporciona. En este pequeño tutorial aprenderás todo lo necesario sobre como inicar/detener/reinicar etc. los servicios de tu equipo GNU/Linux.

Hay que tomar en cuenta primero, la forma de como trabajar con los servicios difiere entre una distro u otra, por ejemplo, vamos a tratar con los servicios en distros basados en DEBIAN (Ubuntu, Mint, KUBUNTU, etc) y basadas en RED HAT (Fedora, Centos, etc).

En las distros basadas en DEBIAN (Ubuntu por ejemplo):

Iniciando servicios manualmente, directorio init.d

Dentro de esta carpeta ubicada en /etc o en /etc/rc.d dependiendo de la distribucción, se encuntran una serie de scripts que permiten inicar/detener la gran mayoría de los servicios/servidores que estén instalados en el equipo. Estos scripts están programados de tal manera que la mayoría reconoce los siguientes argumentos:

  • start
  • stop
  • restart
  • status

Los argumentos son autodescriptivos, y tienen permisos de ejecucción, entonces siendo root es posible iniciar un servicio de la siguiente manera, por ejemplo samba:

Solo que hay que cambiar start por stop | restart | status para detenerlo, reiniciarlo (releer archivos de configuración) o verificar su status. Ahora bien si estás parado dentro del directorio puedes hacerlo asi.

Se trata de tan solo un script asi que con el permiso de ejecucción (x) puedes ejecutarlo con ./ seguido del nombre del servicio, sin espacios y después el argumento que necesites, inicarlo, detenerlo etc.

En las distros basadas en RED HAT (Fedora por ejemplo):

El comando service

En varias distros, como Fedora o RedHat, existe el comando service, este comando permite también iniciar y/o detener servicios, de hecho funciona exactamente igual a como si escribieramos la ruta completa hacía el directorio init.d, con service se indica de la siguiente manera:

Si se desea iniciar el servicio:

Iniciando servicios desde el arranque del sistema:

En muchos casos es conveniente que un servidor o servicio inicien junto con el arranque del equipo en si, por ejemplo el servidor web Apache o alguna base de datos, esto es para que estén disponibles todo el tiempo y no se requiera de intervención del administrador para iniciarlos.

En Linux, a diferencia de otros sistemas operativos, es posible configurarlo en base a niveles de ejecucción (run levels), cada nivel de ejecucción (en la mayoría de las distros son 7), inicia o detiene (Start o Kill) ciertos servicios. Estos niveles son los siguientes:

  • 0 Detener o apagar el sistema
  • 1 Modo monousuario, generalmente utilizado para mantenimiento del sistema
  • 2 Modo multiusuario, pero sin soporte de red
  • 3 Modo multiusuario completo, con servicios de red
  • 4 No se usa, puede usarse para un inicio personalizado
  • 5 Modo multiusuario completo con inicio gráfico ( X Window)
  • 6 Modo de reinicio (reset)

Por ejemplo el nivel 0, que apaga el equipo, mata o detiene a todos los procesos del sistema, todos los servicios, lo mismo hace el 6 con la diferencia que después inicia un script que permite reiniciar el sistema. El nivel por omisión o por default del sistema esta definifo en /etc/inittab, en la línea initdefault:

En distros como Red Hat o Fedora, puedes saber de una manera muy fácil cual o cuales servicios se están iniciando con el sistema y en que nivel (runlevel) usando el comando chkconfig –list. Aclaración: chkconfig no inicia ni detiene servicios al momento (excepto aquellos bajo xinetd), tan solo crea o elimina precisamente los enlaces de los que se habló en el punto anterior de una manera mas amigable. Si lo que se quiere es iniciar o detener el servicio en tiempo real o manualmente hay que usar service o directamente el script con su argumento conveniente tal como se explicó anteriormente.
Veamos ejemplos que muestran como trabajar con chkconfig.

Si se indica como argumento el nombre de algún servicio nos regresará su status:

Sin ningún argumento nos dará una lista con el status de todos los servicios:

Se desea que el servidor web apache (httpd) inicie cuando se entra en el nivel 5, entonces usamos la opción –level:

La base de datos MySQL no se desea que inicie en los niveles 3 y 5, solo hasta que el administrador decida arrancarla:

AMBIENTES GRAFICOS

En todas las distribucciones actuales en sus ambientes gráficos X Window incluyen herramientas de configuración se servicios que facilitan mucho la administración de servidores. En una misma pantalla podemos cambiar niveles de ejecucción, con un click indicar si el servicio arranca o se detiene, incluso iniciarlos o detenerlos en ese momento, todo vía gráfica. Lo mejor es aprenderlo a realizarlo desde la línea de comandos ya que esta será muy similar en casi todas las distros o puede ser que el linux que se esté utilizando no tenga servicios gráficos, aun asi, ya familiarizados con una distribucción es muy sencillo e intuitivo utilizar estas herramientas gráficas por lo que no entraremos en detalles, solo diremos que por ejemplo en SuSE con yast o yast2 es posible no solo controlar servicios sino multitud de cosas mas, en redhat tenemos redhat-config-services y en fedora e incluso versiones enterprise de redhat es system-config-services, mandrake, ubuntu, etc. Todas tienen una interfaz gráfica, es solo cuestión de buscarla.

Por otro lado tenemos interfaces web como la excelente herramienta webmin, que también permite un control total sobre el manejo de servidores, sumamente eficaz cuando se controlan servidores via remota por la web.

Anuncios
Categorías:Linux
  1. Aún no hay comentarios.
  1. septiembre 15, 2010 en 6:46 PM

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: