F.2.5. Definiciones del trabajo

Anteriormente, el paquete sysvinit ofrecía el daemon init para la configuración predeterminada. Así, cada vez que el sistema se iniciaba, este daemon init ejecutaba el programa /etc/inittab, a fin de arrancar los procesos del sistema definidos para cada nivel de ejecución. Ahora, la configuración predeterminada, utiliza un daemon init controlado por eventos provisto por el paquete Upstart. Cada vez que suceda un evento, el daemon init procesa las funciones almacenadas en el directorio /etc/event.d. El daemon init reconoce el inicio del sistema como uno de estos eventos.
Cada función, por lo general especifica un programa, y los eventos que son desencadenados por init para ejecutar o finalizar la ejecución de dicho programa. Algunas funciones están construidas como tareas, que inician y finalizan las acciones necesitadas por por un determinado evento. Otras funciones están construidas como servicios, que el daemon init mantiene en ejecución hasta que algún otro evento (o el propio usuario), los detenga.
Por ejemplo, la función /etc/events.d/tty2, es un servicio que mantiene una terminal virtual en tty2, desde el momento en que el sistema se inicia, hasta el momento en que el sistema se apaga, o hasta que otro evento lo detenga (por ejemplo, un cambio de nivel de ejecución). Esta función está construida de modo tal que init reiniciará la terminal virtual en caso de que se detenga inesperadamente durante ese período:
# tty2 - getty
#
# This service maintains a getty on tty2 from the point the system is
# started until it is shut down again.

start on stopped rc2
start on stopped rc3
start on stopped rc4
start on started prefdm

stop on runlevel 0
stop on runlevel 1
stop on runlevel 6

respawn
exec /sbin/mingetty tty2