1.init starts
2.reads /etc/inittab to determine its default runlevel (ubuntu server default runlevel is 2 )
3.init goes to /etc/rcS.d and runs each script that begins with an S in numerical order with start as an argument.
4.Then init does the same for the /etc/rc2.d directory.
5. Finally init is finished but stays running in the background, waiting for the runlevel to change.