Hacia arriba ¿cómo es mejor o peor que los demás??

Hacia arriba ¿cómo es mejor o peor que los demás??
Cuando Upstart fue concebido por primera vez por Canonical, el sistema predominante todavía era Sysvinit, que comenzó todo en secuencia y más o menos se detuvo después de eso. Se aseguró de que el sistema se cerrara con gracia también. Esto hizo necesario tener otras soluciones para dispositivos en caliente, como palos USB y similares. La idea principal de los diseñadores era hacerlo impulsado por los eventos, esto facilitó la manejo de los eventos mencionados de encapuchado. Upstart también puede ejecutar scripts sysvinit no modificados, por lo que puede migrar a Upstart con solo una instalación. Este proyecto está en modo de mantenimiento solo, así que use esta publicación como una pieza interesante. Puede encontrarse con este sistema en sistemas antiguos actualizados.

¿Cómo difieren??

Upstart tiene un modelo de iniciar cualquier trabajo disponible cuando ocurra el evento. Compare esto con Systemd, que inicia procesos que tienen todos los demás sistemas en ejecución. La principal diferencia es que Upstart está esperando eventos y Systemd está coordinando las dependencias. Ambos sistemas pueden ejecutar scripts regulares y ambos intentan comenzar en paralelo. Debido a que las diferencias son tan pequeñas, los scripts advenedizos generalmente pueden llamarse con un archivo de servicio Systemd. También pueden, ambos ejecutan archivos SystemV sin cambios. De hecho, ambos buscan una estructura de archivo SYSTEMV antigua de forma predeterminada. La gran diferencia es que Upstart busca eventos definidos para comenzar cualquier cosa. Entonces, si desea agregar su propio servicio, debe descubrir en qué contexto necesita su servicio. Por lo general, esto es fácil ya que querrás algo que se ejecute, por ejemplo, en tu escritorio. El escritorio comienza con Event RunLevel 5, por lo que lo configura en su script. Para Systemd, en contraste, este es el objetivo gráfico. En Upstart, también tiene otros eventos que puede usar, como el montaje, el montaje y la solicitud de teclado. Estos se manejan con Systemd a través de enchufes y DBUS.

¿Cómo se migran los scripts??

Tiene todos los scripts advenedizados en /etc /init, sus nombres son el nombre del trabajo con una extensión de 'conf'. Los scripts no son ejecutables, solo apuntan a un ejecutable o más que se debe ejecutar. En cualquier scripts advenediza, ha definido en qué evento debe comenzar el script y cuándo debe detenerse. También debe tener entradas previas y posteriores a la parada. Estos prepararán el entorno y limpiarán después de la ejecución. Un script de muestra está debajo

Descripción "Un script simple"
Comience en RunLevel [2345]
Detente en RunLevel [06]
reaparición
env script_env_var = '/path/to/file.configuración
chdir/ruta/a/script/
Script de Bash EXEX.mierda

La declaración 'ejecutiva' dice lo que sucederá cuando lo inicies manualmente. Las directivas de inicio y parada define cuándo el script comenzará automáticamente. Como puede ver, también puede establecer el directorio en el que se ejecutará. Hay muchos más aspectos en el advenedizo, pero debe aprender a migrar.

Para que este script funcione en Systemd, debe crear un archivo de servicio.

Unidad]
Descripción = un script simple
[Servicio]
Ambiente = script_env_var =/path/to/file.configuración
WorkingDirectory =/Path/to/script
Execstart =/usr/bin/bash script.mierda
Reiniciar = siempre
[Instalar]
Wantedby = Multi-user.objetivo

Aquí puedes ver que suceden las mismas cosas, pero con otras palabras clave. El formato es simple y al grano. En lugar de tener RunLevels, señala qué Target quiere su script. Esto resalta que Systemd tiene que ver con la dependencia y el inicio de las cosas para el entorno específico. Tenga en cuenta también que Execstart apunta a una ruta global, nunca usa una ruta local.

Donde sobresalta?

Upstart fue diseñado, para un comportamiento paralelo, pero también fue diseñado para ser pequeño. Si encuentra esto en cualquier lugar todavía estará en sistemas integrados y cromados. Sí, Chromos lo tenía. La razón es que se construyó en la parte superior si Ubuntu desde el principio, en el momento en que Ubuntu tenía advenedizas como el sistema inicial predeterminado. Chromeos desde entonces ha pasado a usar gentoo como base.

Conclusión

Upstart es un tema interesante pero principalmente histórico. Es posible que lo necesite solo si se encuentra con sistemas antiguos. La alternativa más común en Linux es ahora Systemd. Si tiene reservas con respecto a SystemD, debe buscar otros sistemas mínimos. Uno interesante es el sinit, sinit. Admite tres señales y debe escribir todos los scripts para ello usted mismo, o modificar los scripts de otra persona. Este puede ser un ejercicio interesante, pero solo es útil si está trabajando en un sistema muy mínimo y especializado.