Take the 2-minute tour ×

I want to be sure in what order services are started during boot process in Debian based systems (Debian Squeeze in particular).

Thanks in advance.

share|improve this question
add comment

2 Answers

up vote 1 down vote accepted

In short:

ls /etc/rc*.d

This shows you what starts at which runlevel, and within each level the order is determined by the number after the letter (K is Kill, S is start).

You can configure what starts at each runlevel with sysv-rc-conf, which is installable with apt.

e.g. on my system apache2 is symlinked in rc5.d as "S20apache2". A link in the same directory with S19 would start before it, something with S21 would start after it.

Further reading:

share|improve this answer
Thank you very much but I need to be sure that for instance chilli is started before bind9 but both of them has S21 prefix. I edited particular /etc/init/ files Required-Start: and Required-Stop: section and I've ran update-rc.d for them. Any ideas what could go wrong? –  user155872 Jan 24 '13 at 12:41
You probably want insserv rather than update-rc.d. Is Chili a bespoke app or in the Debian repo? If it's a properly made Debian package you shouldn't need to edit its init script, but if it's bespoke try X-Start-Before rather than Required-Start (and then enable with insserv). Link: wiki.debian.org/LSBInitScripts –  Alex Forbes Jan 24 '13 at 14:01
OK, thank you. I've learned about insserv and one more thing: "dollar sign, because they are predefined virtual facilities. Otherwise, the names of System V boot scripts, found in /etc/init.d/, should be used, although without a dollar sign or possible .sh extension." And now prefixes are correct. Thanks :) –  user155872 Jan 24 '13 at 15:33
add comment

Would rcconf and sysv-rc-conf utilities help?

# aptitude install rcconf sysv-rc-conf

Afterwards you can run them by typing rcconf or sysv-rc-conf.

rcconf sysv-rc-conf

share|improve this answer
add comment

Your Answer


