F.2.5. 작업 정의

예전에는 sysvinit 패키지가 기본 설정을 위한 init 데몬을 제공했습니다. 시스템 시작시 이 init 데몬이 /etc/inittab 스크립트를 실행하여 각각의 런레벨에 정의된 시스템 프로세스를 시작했습니다. 이제는 기본 설정으로 Upstart 패키지가 제공하는 이벤트 기반의 init 데몬을 사용합니다. 특정 이벤트가 발생할 때마다, init 데몬은 /etc/event.d 디렉토리에 저장된 작업을 처리합니다. init 데몬은 이벤트로서 시스템의 시작을 인지합니다.
보통 각각의 작업은 프로그램과 init이 그 프로그램을 실행하거나 종료하도록 유발하는 이벤트로 지정됩니다. 몇몇 작업은 태스크로 구성됩니다. 태스크는 행동을 수행한 다음에 다른 이벤트가 다시 그 작업을 유발 할 때까지 종료됩니다. 다른 작업은 서비스로 구성되며, init는 다른 이벤트(혹은 사용자)가 그 작업을 종료시킬 때 까지 작업을 계속 실행합니다.
예를 들어 /etc/events.d/tty2 작업은 tty2에서 시스템 시작 부터 시스템 종료 까지, 또는 다른 이벤트(런레벨의 변경 등)가 그 작업을 종료할 때 까지 가상 터미널을 유지하기 위한 서비스입니다. 이 작업은 그 기간 동안 가상 터미널이 예기치 못한 이유로 종료되더라도 init이 재시작할 수 있도록 구성됩니다:
# 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