I'm having some trouble recognizing the different types of (traditional) system process management tools by name.

By "traditional" I mean before the likes of upstart, systemd, launchd etc. which I am learning as well. But still need to understand what technology/ies predates them.

LSB init script

I see scripts in the /etc/init.d/ directory with this signature:

# Provides:          scriptname
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.

which were probably copied and pasted from here:


System V Init script

Looks like the same thing to me (too much for me to paste here):


What is the relationship between this and System V Init scripts? Are they all the same thing, or is one a more modern version of the other? What's the difference in how they work?


This is a system V init script. The LSB header is just a comment block that sysvinit ignores, but provides the information that upstart/systemd need to figure out when they should run it.

  • So is the LSB standard a stepping stone between the old imperative System V Init paradigm and the declarative Upstart paradigm? I do recall reading that one of the issues with the classic System V Init scripts was that trying to restart failed jobs was clumsy (though still better than cron jobs as I have been for most of my needs). – Sridhar Sarnobat Dec 12 '17 at 23:09
  • 1
    @Sridhar-Sarnobat, that's pretty much it. – psusi Dec 12 '17 at 23:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.