I have the following script (what it does exactly is not important):

#!/bin/sh -e
# Provides:          watchdog_early
# Required-Start:    udev
# Required-Stop:     
# Default-Start:     S
# Default-Stop:
# X-Interactive:     true
# Short-Description: Start watchdog early.

# Do stuff here... 

I insert it into the S runlevel by invoking:

insserv watchdog_early

The aproriate link is created in /etc/rcS.d:

S04watchdog_early -> ../init.d/watchdog_early

and /etc/init.d/watchdog_early is executable (has mode 755).

Despite all this, it is NOT being run at boot. Why?

  • Are you sure it's not failing for some reason rather than not running? Check your logs add some debug messages etc ?
    – user9517
    Jun 21, 2012 at 20:50
  • No, it's not failing. I added a bunch of debug messages. In a desperate move I even put "reboot -f" there so I know it runs when the device reboots during bootup... nothing seem to work.
    – MasterM
    Jun 21, 2012 at 20:54

1 Answer 1


Post the full script.

Your shebang line, "#!/bin/sh -e" will exit on error. If the error condition is met before your debug output / lines run, you won't see them.

Alternately, remove the '-e' option and retry your script.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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