Ir al contenido principal

Administración de Servicios en Linux


Un Servicio en un Sistema Operativo (en nuestro caso en Linux) no son más que pequeños programas o demonios que son iniciados junto con el equipo ya sea para brindarnos una funcionalidad, o para iniciar argumentos de algún programa específico.

La administración de éstos Servicios en Linux es bastante sencilla, solo debemos comprender su ubicación, cómo iniciarlos, detenerlos, habilitarlos o bien deshabilitarlos.

¿Dónde se encuentran físicamente los servicios en nuestro Linux?
Los servicios en nuestro Linux se ubican físicamente en el directorio /etc/init.d. Dentro de éste, está el listado completo de los servicios que disponemos para administrar. Para verlos, simplemente basta con tipear en consola:

[bachi@localhost ~]$ ls /etc/init.d/

De esta forma, nos devolverá el listado completo de servicios instalados en nuestro equipo. Recordemos que la cantidad y el tipo está directamente relacionado o bien a servicios propios del Sistema Operativo o bien a servicios que se instalan junto con programas que hemos agregado (por ejemplo, servicios como Nvidia, Wine o mysql).

¿Cómo se inicia un servicio en Linux?
Una forma manual de iniciar un servicio (en éste ejemplo CUPS, para impresión) mediante la consola como Root es:

[bachi@localhost ~]$ sudo /etc/init.d/cups start

Una vez ingresado el comando nos devolverá un pequeño detalle del inicio correcto o incorrecto del sistema solicitado, y así iniciaremos manualmente un servicio detenido.

¿Cómo detener un servicio en Linux?
Para detener un servicio en Linux, podemos tipear la misma sintaxis que al iniciarlo, pero seguido de un stop:

[bachi@localhost ~]$ sudo /etc/init.d/cups stop

También nos devolverá un pequeño detalle de la correcta o incorrecta detención del mismo.

El comando SERVICE
Existe otra forma de inicar o detener servicios, y es mediante el comando service, seguido del servicio y el típico start o stop. Basta con tipear en consola como Root:

[bachi@localhost ~]$ sudo service cups start

Ésta es otra forma de iniciar el servicio manualmente con el comando service.

Cómo Habilitar o deshabilitar servicios en Linux
Como bien les había contado en mi entrada anterior de los Runlevels, cada uno de ellos iniciará o no los servicios. En cualquier momento podemos decidir nosotros cual sí y cual no iniciar junto con el init de inicio.

En el caso de que nuestro equipo inicie con el runlevel 5 (init 5) por defecto, deberíamos editar los servicios que él inicie. Para ello, debemos entender que el listado de servicios que inicie tal o cual Runlevel se encuentran distribuidos en una serie de carpetas ubicadas dentro de /etc, las culaes son rc0.d, rc1.d, rc2.d, rc3.d, rc4.d, rc5.d y rc6.d. Cada una de ellas hace referencia a un runlevel, así, la carpeta /etc/rc5.d/ contendrá todos los servicios que iniciarán o no en el runlevel 5.

Cuando listemos el contenido de una de éstas carpetas, veremos los nombres de los servicios de una manera muy particular, como por ejemplo S25cups, o K92ip6tables. Éstos no son archivos cualquiera, si no enlaces simbólicos (entiendase accesos directos) a los servicios ubicados en /etc/init.d, donde realmente se encuentran los sevicios.

De acuerdo a su nombre, éstos enlaces iniciarán o detendran los servicios. Es lógico decir entonces que el enlace S25cups iniciará el servicio de impresion, debido a que le antecede la letra S (start). No lo hará de la misma forma K92ip6tables, debido a que tiene una K (kill = matar) que no le permitirá iniciar.

Podremos, una vez identificado en qué init inicia nuestro sistema (/etc/inittab), habilitar o deshabilitar los servicios cambiando sus nombres. Si queremos por ejemplo que CUPS no inicie, cambiaremos su nombre de S25cups a K75cups. Recalcamos aquí que el número "75" es la diferencia entre 25 y siempre 100. Siguiendo la misma tendencia, si queremos iniciar el servicio de IP tables para IPV6 (K92ip6tables), modificaremos su nombre a S08ip6tables.

Para modificar un nombre de uno de éstos enlaces, basta con moverlo a su nuevo archivo por consola como Root, por ejemplo modificaré el servicio CUPS del ejemplo anterior asi lo deshabilito:

[bachi@localhost ~]$ sudo mv /etc/rc5.d/S25cups /etc/rc5.d/K75cups

Así, habremos deshabilitado el servicio de Impresión UNIX en el runlevel 5 de nuestro sistema, y en cualquier momento podremos volverlo a renombrar por S25cups nuevamente.

Espero que este instructivo de administración de servicios en Linux les haya sido de importancia.
6 comentarios

Entradas populares de este blog

Botones capacitivos no vibran o encienden en Samsung S6

Si tienes el problema en que de la noche a la mañana por culpa de algún duende, tus botones capacitivos de tu Samsung S6 (botón Atrás y botón Aplicaciones recientes) funcionan pero no encienden ni vibran, aquí la solución paliativa.

El problema es un bug reconocido por la comunidad de Android, que aún (al día de la fecha) en Android 5.1.1 no ha sido resuelto. Se trata de un problema al activar el Ahorro de Energía, que de forma correcta deshabilita la vibración y luminosidad de las teclas capacitivas, pero aún desactivandolo siguen deshabilitadas.


Cuando tus botones capacitivos no respondan como deben (me resultan útiles que vibren o se enciendan), debemos:
Entra en el Ahorro de Energía.En "Iniciar ahorro de energía", selecciona "Inmediatamente".Apaga el Ahorro de energía.(Si quieres) Vuelve a encenderlo y configuralo con un porcentaje a gusto. Los botones capacitivos ahora funcionarán.Quizás, en una próxima actualización de Android Lollipop solucionen este pequeño bu…

PARTE I: Instalar OCS Inventory NG (Server) en Ubuntu Linux 14.04 LTS

Muchos conocerán los beneficios y funcionalidades que nos provee OCS Inventory. Es por eso que si has llegado hasta aquí, daré por sentado que ya conoces qué se puede hacer con este increíble Software.

Tomé la decisión de hacer un pequeño tutorial de instalación de OCS Inventory NG en su versión Server sobre Ubuntu Linux 14.04 LTS originado por varios motivos: mi exitosa experiencia utilizado e implementando ésta solución, la Wiki del proyecto no está actualizada "al día", y (lo más importante) porque existe mucha documentación fragmentada en la Web, en idioma francés, italiano, y con mucha información algo incompleta.

Nota 1: Asumo que dispones de conocimientos básicos de Ubuntu, Apache y Mysql. Ante una duda, deja un comentario, o bien indaga en la Web. No duele ;D

Nota 2: Este instructivo esta basado en la versión de OCS Inventory NG version 2.2 al día de la fecha de publicación.

Nota 3: configura tu Ubuntu con una IP estática/fija.

Requisitos de paquetería

Actualiza Ubuntu a …

Enviar mensaje masivo a PCs con Windows en un Dominio

En la oficina estábamos tratando de optimizar el proceso de reinicio de un Servicio indispensable para gran parte de los usuarios de la empresa, pero sin caer en el viejo y obsoleto método del correo o la llamada telefónica. La duda era, ¿cómo les notificamos de forma fácil que debíamos reiniciar el Servicio?

Era indispensable que los usuarios cerrasen sus Apps que se conectaban a dicho "demonio", para así tener la tranquilidad de que esos programas no quedasen "frizados" y evitar el maremoto de llamadas y reclamos para luego matar uno a uno dicho proceso de forma remota.

En Windows, el comando que debemos usar es msg.exe, no disponible en Windows XP, pero si para Windows Vista y posteriores.

Primero, necesitábamos listar aquellos equipos que tenían la App dependiente de dicho Servicio, armar un listado con ellas y así ejecutar el comando msg en función a ese listado. Para ello, acudimos a nuestro System Center Configuration Manager, y mediante un Reporte, listamos…