Wednesday, July 25, 2012

Upstart

Ubuntu把init換成upstart已經一段時間了...

Upstart is an event-based replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.

基於NIH Utility Library來實作. libnih is a small library for C application development containing functions that, despite its name, are not implemented elsewhere in the standard library set.

Starting a Service
# Traditional:
/etc/init.d/myservice start
# Upstart
service myservice start

Stopping a Service
# Traditional: 
/etc/init.d/myservice stop
# Upstart
service myservice stop

Getting a list of Services
# Traditional:
ls /etc/init.d
# Upstart: 
service --status-all


Each job has a life-cycle which is shown in the graph below:


http://upstart.ubuntu.com/cookbook/
https://wiki.ubuntu.com/ReplacementInit
https://help.ubuntu.com/community/UbuntuBootupHowto
http://netsplit.com/2006/08/26/upstart-in-universe/

其他相關project Mac OSX Launchd http://launchd.macosforge.org/trac/
Fedora systemd http://www.freedesktop.org/wiki/Software/systemd/
OpenRC (Gentoo/BSD) http://www.ohloh.net/p/openrc
Sabayon Linux http://en.wikipedia.org/wiki/EINIT

Why systemd? http://0pointer.de/blog/projects/why.html

No comments: