La historia detrás de 'init' y 'systemd' por qué 'init' debía ser reemplazada con 'systemd' en Linux
- 3817
- 523
- Jaime Delgadillo
Estoy suscrito a varias listas de correo relacionadas con varias distribuciones y aplicaciones de Linux solo para mantenerme actualizado con lo que está sucediendo donde. ¿Cuáles son los nuevos errores?? ¿Cuáles son los parches lanzados?? Lo que se espera en el próximo lanzamiento? Y muchas otras cosas. En estos días, la lista de correo está muy poblada con "Elige tu lado en Linux Divide", principalmente en la lista de correo de Debian junto con algunos otros.
Systemd reemplaza el inicioSe trata "Elige tu lado en Linux Divide"?
El en eso Daemon va a ser reemplazado por Daemon system en algunas de las distribuciones de Linux, mientras que muchos de ellos ya lo han implementado. Esto es/creará una gran brecha entre la protección tradicional de Unix/Linux y la nueva guardia de Linux: programadores y administradores del sistema.
En este artículo, discutiremos y resolveremos siguiendo todas las consultas uno por uno.
- Que es init?
- Que es systemd?
- Por qué el init necesitaba ser reemplazado?
- ¿Qué características se poseerá Systemd?.
Que hay en ello?
En Linux, en eso es una abreviatura de inicialización. El en eso es un proceso de demonio que comienza tan pronto como la computadora comienza y continúa funcionando hasta. Init de hecho es el primer proceso que comienza cuando una computadora arranca, lo que lo convierte en el padre de todos los demás procesos de ejecución directa o indirectamente y, por lo tanto, generalmente se asigna "PID = 1".
Si de alguna manera en eso Daemon no pudo comenzar, no se iniciará ningún proceso y el sistema llegará a una etapa llamada "Panico kernel". Init se conoce más comúnmente como Sistema V Init. System V es el primer sistema operativo UNIX comercial diseñado y los usos de init en la mayoría de la distribución de Linux de hoy es idéntico con Sistema V OS con algunas excepciones como Slackware que usa BSD y Gentoo utilizando Init personalizado.
La necesidad de reemplazar el inicio con algo más perfecto se sintió desde mucho tiempo y varias alternativas se desarrollaron de vez en cuando, algunas de las cuales se convirtieron en el reemplazo de inicio nativo de la distribución, algunas de las cuales son:
- Advenedizo - Un demonio de reemplazo de inicio implementado en Ubuntu GNU/Linux y diseñado para iniciar el proceso de manera asincrónica.
- Época - Un demonio de reemplazo de inicio construido alrededor de la simplicidad y la gestión de servicios, diseñado para iniciar el proceso de un solo subproceso.
- Montar - Un demonio de reemplazo de inicio escrito en Python, implementado en Pardus GNU/Linux y diseñado para iniciar el proceso de manera asincrónica.
- system - Un demonio de reemplazo de inicio diseñado para iniciar el proceso en paralelo, implementado en una serie de distribución estándar: Fedora, OpenSuse, Arch, Rhel, Centos, etc.
Que es systemd?
A system es un demonio de administración de sistemas nombrado con la convención UNIX para agregar 'd'Al final de Daemon. Entonces, que puedan ser fácilmente reconocidos. Inicialmente, se lanzó bajo la Licencia Pública General de GNU, pero ahora las versiones se realizan bajo Licencia Pública General Menor de GNU. Similar a Init, Systemd es el padre de todos los demás procesos directa o indirectamente y es el primer proceso que comienza en el arranque, por lo tanto, generalmente se asigna un "PID = 1".
A system, Puede referirse a todos los paquetes, servicios públicos y bibliotecas alrededor de Daemon. Fue diseñado para superar las deficiencias de init. En sí mismo, es un proceso de fondo diseñado para iniciar procesos en paralelo, reduciendo así el tiempo de arranque y la sobrecarga computacional. Tiene muchas otras características en comparación con init.
Por qué había necesidad de reemplazar init?
Un proceso init comienza en serie.mi., Una tarea comienza solo después de que el inicio de la última tarea tuvo éxito y se cargó en la memoria. Esto a menudo resultó en un tiempo de arranque retrasado y largo. Sin embargo, Systemd no fue diseñado para la velocidad, sino para hacer las cosas cuidadosamente, lo que a su vez evita todo el retraso no necesario.
Características de Systemd
- Diseño limpio, estatal y eficiente.
- Proceso de arranque más simple.
- Procesamiento concurrente y paralelo en el arranque.
- Mejor API.
- Sintaxis de la unidad simple.
- Capacidad para eliminar componentes opcionales.
- Huellas de baja memoria.
- Técnica mejorada para expresar dependencias.
- Instrucción de inicialización escrita en el archivo de configuración y no en shell script.
- Hacer uso de unicón de dominio Unix.
- Programación de trabajo utilizando temporizadores de calendario Systemd.
- Registro de eventos con Journald.
- Elección de eventos del sistema de registro con Systemd y Syslog.
- Los registros se almacenan en un archivo binario.
- Systemd State se puede conservar para llamarse más tarde en el futuro.
- Seguimiento del proceso utilizando el CGROUP de Kernel y no PID.
- Usuarios Iniciar sesión administrado por Systemd-Logind.
- Mejor integración con gnomo para la interoperabilidad.
Cuellos de botella Systemd
- Todo en un solo lugar.
- No estándar POSIX.
Systemd e integración de distribución
Distribución de Linux | Integración |
Fedora | Sí, la primera distribución para adoptar Systemd |
Arco | Sí |
Sombrero rojo | Sí |
Cento | Sí |
Debian | Sí, Debian 8 Codename Jessie tendrá Systemd de forma predeterminada |
GENTOO | Sí, pero debe descargarse, instalar y configurar el lado con Init personalizado |
Usura de apertura | Sí |
Flojo | No (aunque no se ha adoptado hasta ahora en Slackware, Patric Volkerding no ha mostrado ninguna indicación si se adoptará o no) |
Ubuntu | Sí, debe instalarse y configurarse con Upstream. |
Controversia
Linus Torvalds, arquitecto jefe de Linux Kernel, siente una actitud de desarrollador clave de Systemd hacia los usuarios y los informes de errores no parecen estar bien. También se informó que la filosofía Systemd es extraña y una forma extranjera de controlar los procesos del sistema. Lo mismo ha sido grabado de Patric Volkerding y otros usuarios y desarrolladores de Linux notables, así como en el foro en línea, de vez en cuando.
Systemd vs init
Características | en eso | system |
Dependencia de DBUS - obligatoria | No | Sí |
Activación basada en el dispositivo | No | Sí |
Configuración de dependencia del dispositivo con UDEV | No | Sí |
Activación basada en el temporizador | Cron/At | Propiedad |
Gestión de cuotas | No | Sí |
Manejo automático de dependencia del servicio | No | Sí |
Mata el proceso de los usuarios en el inicio de sesión | No | Sí |
Gestión de intercambio | No | Sí |
Integración de Selinux | No | Sí |
Soporte para HDD cifrado | No | Sí |
Carga del módulo del núcleo estático | No | Sí |
Guía | No | Sí |
Enumere todos los procesos infantiles | No | Sí |
Compatible con sysv | Sí | Sí |
Arranque interactivo | No | Sí |
Portátil a no x86 | Sí | No |
Adoptado | Varias distribución | Varias distribución |
Startup de servicio paralelo | No | Sí |
Límite de recursos por servicio | No | Sí |
Script de inicio extensible fácil | Sí | No |
Código y archivo de configuración separados | Sí | No |
Cálculo de dependencia automática | No | Sí |
Depuración detallada | Sí | No |
Versión | N / A | V44+ |
Tamaño | 560 kb | N / A |
Número de archivos | 75 archivos | 900 archivos + glib + dbus |
Líneas de código - LOC | 15000 (aprox) | 224000 (aproximadamente) (códigos Inc, comentarios y espacios en blanco) 125000 (aproximadamente) (código de accidente) |
Conclusión
Cualquier cosa que se ejecute como PID = 1 no debe romperse, no debe estar desordenado y debe ser controlado por los usuarios de manera efectiva y eficiente. Many-A-User cree que reemplazar el inicio para Systemd no es más que reinventar la rueda cada vez como un efecto secundario de Linux. Pero esta es la naturaleza diversa de Linux. Esto se debe a que Linux es tan poderoso. El cambio es bueno y debemos apreciarlo si es por una buena razón.
Eso es todo por ahora. Estaré aquí de nuevo con otro artículo interesante que les encantará leer. Hasta entonces, estad atentos y conectado a Tecmint. No olvide proporcionarnos sus valiosos comentarios en los comentarios a continuación.
- « Gestión de procesos de la serie RHCSA en el arranque Rhel 7, el cierre y todo lo intermedio en la Parte 5
- 25 Apache útil '.trucos de htaccess para asegurar y personalizar sitios web »