简体   繁体   中英

Debian Startup Script Will Not Start

I was creating a startup BASH script, when I was given an error similar to:

The script is missing LSB tags

So I went and put in some LSB tags, but it still does not start on startup. The script works perfectly if I start it manually

# /etc/init.d/myscript

It is a very simple script that is intended to startup a PERL script in the same folder (/etc/init.d/fcgiwrap.pl).

#!/bin/bash
### BEGIN INIT INFO
# 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.
### END INIT INFO
# Carry out specific functions when asked to by the system
touch /var/lock/fcgiwrap
case "$1" in
  start)
    echo "Starting script /etc/init.d/fcgiwrap.pl"
    /etc/init.d/fcgiwrap.pl
    ;;
  stop)
    echo "You can't stop this service. Consider deleting it"
    ;;
  *)
    echo "Usage: /etc/init.d/blah {start}"
    exit 1
    ;;
esac

exit 0

In order for the script to do things "at startup," you need to run commands ( rc.d ) rules for it. Otherwise it is just a script floating in /etc/init.d .

For a guide on rc.d , checkout https://www.debian-administration.org/article/28/Making_scripts_run_at_boot_time_with_Debian , and look particularly for the update-rc.d command.

Also, if you're going to use an LSB style header, you might as well actually fill out the values to have meaning, instead of leaving those defaults.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM