As coisas mudaram um pouco nos últimos 7 anos. No Ubuntu 16.04, o caminho para o perl é diferente. Além disso, você é obrigado a fornecer um monte de informações de configuração em seu / etc / init script .d / foobar.sh:
#!/bin/sh foobar.sh
### BEGIN INIT INFO
# Provides: foobar
# Required-Start: $local_fs $network
# Required-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: forbarsvr
# Description: foobar daemon for widget serving
### END INIT INFO
sudo -u foobarusr perl /path/to/foobar.pl &
Esta forma de chamar o perl permite que você execute como um usuário (dando um domínio de segurança restrito) ao invés de root; para executar como root, remova o -u foobarusr
. Se você estiver executando como um usuário não raiz, verifique se o usuário tem permissões sobre todos os recursos necessários, como o próprio script perl.
O &
inicial dispara seu script perl como uma tarefa em andamento (até terminar); deamon-like se não terminar por qualquer motivo.
Faça seu executável foobar launcher:
sudo chmod +x /etc/init.d/foobar.sh
Adicione seu script na sequência de inicialização:
sudo update-rc.d foobar.sh defaults
Note que não há caminho fornecido para o script.