Cómo controlar los servicios de arranque de Linux y los demonios

Linux ejecuta muchas aplicaciones en segundo plano que quizás ni siquiera conozcas. Así es como tomar el control de ellos.

Linux ejecuta muchas aplicaciones en segundo plano que quizás ni siquiera conozcas.  Así es como tomar el control de ellos.
Anuncio

Acaba de arrancar, pero su sistema todavía se siente lento y lento? Linux ejecuta muchas aplicaciones "en segundo plano" de las que ni siquiera se daría cuenta. Así es como tomar el control de ellos.

Puesta en marcha de Linux

Todos conocemos el ejercicio: presionas el botón de encendido en tu computadora, esperas un poco y vuelves a un registro de aspecto agradable. Pero, ¿qué sucede durante ese tiempo? Los usuarios de Linux de la vieja escuela recordarán las páginas (y páginas, y PÁGINAS) de los mensajes de diagnóstico que se desplazarían. Estos mensajes contenían información sobre los controladores que se están cargando, los sistemas de archivos encontrados y los diferentes procesos que se están iniciando.

Echemos un vistazo rápido a lo que sucede entre "encender" y "iniciar sesión en el escritorio".

  1. Cuando enciendes tu computadora, se carga el BIOS. Este es un software proporcionado por el fabricante del hardware (separado del sistema operativo) y contiene configuraciones en el dispositivo desde el que desea iniciar su sesión.
  2. El BIOS, dependiendo de esas configuraciones, pasa el control a uno de los discos físicos de la computadora, específicamente a su gestor de arranque . Mientras que el gestor de arranque puede configurarse para incluir datos de configuración, su trabajo principal es pasar el control a un sistema operativo. Proporciona una interfaz Cómo cambiar tu pantalla de inicio en Linux Cómo cambiar tu pantalla de inicio en Linux Me encanta encender mi sistema Linux para ser recibido por mi impresionante pantalla de inicio antes de llegar a mi escritorio sin siquiera tener tiempo para un sorbo de café. No sientes la ... Leer más para seleccionar entre los sistemas operativos si tu computadora tiene más de uno. GRUB es el gestor de arranque estándar para la mayoría de las distribuciones Linux modernas.
  3. Cuando un gestor de arranque inicia un sistema operativo Linux, se carga el kernel (o el corazón del sistema operativo). Esto se vinculará a su hardware, y luego iniciará un único proceso que llamaremos un proceso de inicio .
  4. Este proceso de inicio es a su vez responsable de iniciar todos los otros procesos en el sistema. Esto incluye aplicaciones de servidor (incluido el proceso de Servidor X en el que inicia sesión en su escritorio bonito Cómo elegir y cambiar los administradores de pantalla de Linux Cómo elegir y cambiar los administradores de pantalla de Linux ¿Por qué alguien reemplazaría un administrador de pantalla? Bueno, en parte porque podría ser mejor para su PC, o para mejorar la productividad. La belleza de Linux es que puede cambiar los administradores de pantallas a voluntad. Aparecerán Read More), los llamados "daemons" (programas que esperan en segundo plano para eventos específicos, como los CUPS demonio de impresión) y otros (como el daemon cron que ejecuta los programas según un cronograma).

Es este último paso el que nos concierne. Al configurar las configuraciones de ajuste, puede controlar con precisión qué se inicia de manera predeterminada.

Daemons vs. Servicios

En este artículo, utilizaremos estos términos indistintamente. Hay diferencias técnicas entre los dos que están más allá del alcance de esta publicación. Pero para nuestro propósito aquí son los mismos, en el sentido de que pueden ser controlados por las herramientas que revisaremos.

¿Por qué Fiddle con estos ajustes?

¿Por qué deberías molestarte con algo de esto en absoluto? ¿No es mejor simplemente dejar los valores predeterminados?

Saber cómo configurar lo que comienza cuando la computadora arranca puede brindarle algunos beneficios:

  • En primer lugar, puede mejorar el rendimiento. ¿Recuerdas la vez que instalaste Apache para probar esa nueva aplicación web? ¿No? Bueno, supongo que, a menos que lo hayas desinstalado, ese servidor web se ejecuta en segundo plano, ocupando una valiosa RAM. El ajuste de la configuración de inicio significa que puede dejarlo instalado, pero solo inícielo cuando lo necesite. (Vea algunos otros consejos que mejoran el rendimiento aquí Linux In Overdrive: cómo obtener cada gota de rendimiento de su sistema Linux en Overdrive: cómo obtener cada gota de rendimiento de su sistema Esto no se trata de hacer que su instalación de Linux, incluso más delgado (aunque sí hace la diferencia). No, todo se trata de forzar a su hardware a funcionar a fondo. Lea más).
  • Además, algunos de estos programas pueden plantear problemas de seguridad. ¿Linux es tan seguro como crees? ¿Linux es tan seguro como crees? Linux a menudo se promociona como el sistema operativo más seguro al que se puede acceder, pero, ¿realmente es así? Echemos un vistazo a diferentes aspectos de la seguridad informática de Linux. Lee mas . Por ejemplo, el Apache antes mencionado estará abierto para contactar con el puerto 80 mientras se está ejecutando. Si hay un problema de seguridad con Apache, tener ese puerto abierto al mundo podría poner en riesgo su sistema. Es mejor iniciar el servidor cuando lo necesite y cerrarlo tan pronto como haya terminado.

Procesos de arranque actuales

Los sistemas Linux de hoy en día usan algunos de los principales sistemas de puesta en marcha, que se describen a continuación.

en eso

Durante mucho tiempo, el sistema de inicio estándar, init rastrea su historia a los sistemas Unix originales en los que se basó Linux (su nombre propio es SysVInit, se basa en System V Unix). El sistema init está basado en una colección de scripts de inicio, mantenidos en los directorios /etc/init.d o /etc/rc.d, y en el concepto de "niveles de ejecución". Por ejemplo, las distribuciones orientadas a computadoras de escritorio comenzarán en "nivel de ejecución 5", que se define como "modo multiusuario con redes + administrador de visualización X." Por esta razón, cuando inicie una de estas distribuciones, terminará de inmediato con un escritorio gráfico basado en el sistema X. iniciar sesión.

Cómo controlar los servicios de inicio de Linux y los archivos de directorios de inicio Daemons

El sistema init se adhiere a la filosofía de Unix, ya que hace una cosa y lo hace bien. Uno de los argumentos expresados ​​por los defensores del sistema es que no intenta hacer demasiado, a diferencia de algunas de las siguientes alternativas.

Advenedizo

El sistema Upstart fue el intento de Canonical de reemplazar el sistema init envejecido. Proporciona compatibilidad con el sistema init, pero también proporciona funciones adicionales. El soporte para "eventos" le permite reaccionar a los cambios en el sistema, como conectar un nuevo hardware. Además, Upstart puede funcionar junto con las configuraciones init más antiguas, brindando soporte retroactivo para paquetes y software más antiguos.

Sin embargo, una vez que Debian (la fuente original para los paquetes de Ubuntu) hizo el cambio a systemd, Canonical decidió hacer lo mismo. El lanzamiento de Ubuntu 15.04 (Vivid Vervet) Ubuntu 15.04: ¿Estaba Vivid Vervet digno de esperar, y debería actualizarse? Ubuntu 15.04: ¿Vivid Vervet merecía la pena y debería actualizarse? Read More fue el primero en presentar el nuevo sistema de inicio de manera predeterminada.

sistemad

Instigó una de las grandes guerras de llamas de nuestro tiempo Software de código abierto y bifurcaciones: lo bueno, lo grande y lo feo Software de código abierto y bifurcaciones: lo bueno, lo grande y lo feo A veces, el usuario final se beneficia enormemente de los tenedores. A veces, el tenedor se realiza bajo un velo de ira, odio y animosidad. Veamos algunos ejemplos. Lee mas . A la luz de las deficiencias percibidas de init (que se destacan aquí), systemd (o el daemon del sistema ) se desarrolló. Esto utiliza un sistema completamente nuevo con el objetivo de iniciar un servicio "cuando se cumplen todas sus condiciones". Sin embargo, al igual que Upstart, todavía puede admitir los scripts de estilo init proporcionados por muchos paquetes, con algunas excepciones notables.

Cómo controlar Linux Start-Up Services y Daemons systemd directories 670x313

Observe en la imagen de arriba cómo los directorios tienen nombres como "this.thing". quiere ". Esto demuestra el comportamiento" a pedido "de systemd : cuando algo" quiere "acceso por bluetooth y se cumplen las condiciones, systemd iniciará el servicio para ello.

Herramientas para administrar daemons / servicios

Aunque nunca está de más aprender cómo hacerlo desde la línea de comandos (consulte el comando de servicio para init / Upstart y sysctl para systemd ), a continuación encontrará algunas aplicaciones auxiliares para administrar sus servicios. Si bien es posible que deba ajustar su configuración, en general querrá habilitarlos o configurarlos para que se ejecuten automáticamente de forma predeterminada o deshabilitarlos . Tenga en cuenta que los servicios deshabilitados aún pueden iniciarse (y luego detenerse) cuando lo desee.

init.d

Para muchos usuarios, la herramienta rcconf (en combinación con el servicio antes mencionado) hará todo lo que necesite. Una interfaz de usuario de texto (TUI) enumera todos los servicios disponibles. Puede usar las teclas de flecha para desplazarse hacia arriba y hacia abajo en la lista, y la barra espaciadora para alternar si el servicio debe comenzar (con un asterisco) o no. Use la tecla Tab para moverse entre la lista y los botones OK / Cancel y la barra espaciadora también para seleccionarlos.

Instálalo en Ubuntu con lo siguiente:

sudo apt-get install rcconf 

Cómo controlar los servicios de inicio de Linux y los daemons rcconf ui 670x337

Red Hat desarrolló la herramienta de configuración del servicio, una aplicación gráfica que también aparece por defecto en sus derivados, como CentOS y Fedora. Proporciona una lista similar a rcconf anterior, y ofrece una lista similar con la capacidad de verificar y desmarcar servicios para configurarlos para que se ejecuten de manera predeterminada o no. También proporciona botones que le permiten iniciar / detener / reiniciar esos servicios.

Cómo controlar los servicios de inicio de Linux y los daemons redhat serviceconf
Crédito de la imagen: Red Hat y CentOS

sistemad

Los desarrolladores de KDE crearon un módulo para su aplicación de Configuración del sistema para controlar los servicios de sistema. Ubicado en la categoría Administración del sistema, le permite ver el estado de, activar / desactivar y editar la configuración de los servicios (o "unidades"). También contiene un editor para los archivos de configuración systemd .

Cómo controlar los servicios de inicio de Linux y los daemons kde kcm systemd 670x297

Instálalo en Ubuntu con lo siguiente:

 sudo apt-get install kde-config-systemd 

systemd-manager es una aplicación basada en GTK disponible en algunos repositorios (incluidos Fedora y Arch), mientras que los usuarios de Ubuntu pueden tomar un archivo .DEB de su página de GitHub. La interfaz de usuario es un poco diferente, ya que está escrito en Rust, pero es bastante fácil encontrar los controles para activar / desactivar e iniciar / detener los servicios, mientras que el panel central grande le permite editar la configuración.

Una vez que haya descargado el paquete, puede instalarlo con:

 sudo dpkg -i systemd-manager-download.deb 

Cómo controlar Linux Start-Up Services y Daemons systemd manager ui 670x500

También para escritorios basados ​​en GTK, la herramienta systemadm le proporciona una forma de iniciar / detener / reiniciar servicios. Instálalo en Ubuntu con lo siguiente:

 sudo apt-get install systemd-ui 

Cómo controlar los servicios de inicio de Linux y los daemons systemadm ui 670x401

El futuro está systemd

Si bien hemos destacado dos sistemas principales de administración de startups en este artículo, init y systemd, la mayoría de las distribuciones principales se están moviendo hacia este último. Incluso Canonical, que había creado su propia alternativa, vio la escritura en la pared e incluyó systemd por defecto.

¿Tiene alguna preferencia o son solo procesos de fondo invisibles para usted? ¿Tiene algún consejo o trucos para manejar estas cosas? Háganos saber en los comentarios!

In this article