Por que meu serviço init.d não inicia?

0

Eu comprei um Raspberry Pi 3 há algumas semanas e tenho jogado com ele por um longo tempo. Estou executando Raspbian Lite sem cabeça e uma coisa que quero fazer é executar algumas coisas na inicialização. Nada emocionante, apenas alguns comandos, mas estou achando isso muito difícil de fazer. Eu vou estar usando um exemplo simplificado do meu script, mas é isso que eu trabalhei para baixo e isso é o que eu não posso fazer o trabalho. Aqui está o que eu fiz até agora:

Criado um arquivo, /etc/init.d/sanity

#!/bin/sh
# /etc/init.d/sanity

# If you want a command to always run, put it here
echo "sanity script is running"

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "START START START"
    echo "START START START" > /root/START.txt
    ;;
  stop)
    echo "STOP STOP STOP"
    echo "STOP STOP STOP" > /root/STOP.txt
    ;;
  *)
    echo "Usage: /etc/init.d/sanity {start|stop}"
    echo "FAIL FAIL FAIL" > /root/FAIL.txt
    exit 1
    ;;
esac

exit 0

Em seguida, modifiquei as permissões com:

chmod 755 /etc/init.d/sanity

O que parece funcionar:

root@raspberrypi:/etc/init.d|⇒  ll
total 304
    ...blah blah blah...
-rwxr-xr-x  1 root root  493 Aug 13 23:09 sanity
    ...blah blah blah...

E, execute manualmente, parece funcionar:

root@raspberrypi:/etc/init.d|⇒  sh sanity start
sanity script is running
START START START
root@raspberrypi:/etc/init.d|⇒  sh sanity stop
sanity script is running
STOP STOP STOP
root@raspberrypi:/etc/init.d|⇒  sh sanity
sanity script is running
Usage: /etc/init.d/sanity {start|stop}
root@raspberrypi:/etc/init.d|⇒  cat /root/STOP.txt
STOP STOP STOP
root@raspberrypi:/etc/init.d|⇒  cat /root/START.txt
START START START
root@raspberrypi:/etc/init.d|⇒  cat /root/FAIL.txt
FAIL FAIL FAIL

Parece bom. Agora, eu configuro para executar na inicialização e, em seguida, tentar iniciá-lo como um serviço ... mas nada acontece.

root@raspberrypi:/etc/init.d|⇒  update-rc.d sanity defaults
insserv: warning: script 'K01sanity' missing LSB tags and overrides
insserv: warning: script 'sanity' missing LSB tags and overrides
root@raspberrypi:/etc/init.d|⇒  service sanity start
root@raspberrypi:/etc/init.d|⇒  ls /root
configurations
root@raspberrypi:/etc/init.d|⇒

Então, o que estou fazendo errado aqui? Existe algo especial sobre Raspberry Pis que estou perdendo? Eu sei com certeza que já fiz isso antes com o Ubuntu e o Debian e nunca tive tantos problemas. Está me deixando louca.

    
por cgm123 14.08.2016 / 01:27

2 respostas

0

(desculpe @ Gogeta70)

Eu realmente acabei usando o systemd. Aqui está um exemplo de um serviço de dropbox que eu tenho trabalhando que depende de duas coisas:

[Unit]

Description=Dropbox as a system service
After=local-fs.target network.target

[Service]
User=me
Restart=always
ExecStart=/opt/dropbox/dropboxd
Restart=on-failure
RestartSec=1

[Install]
WantedBy=default.target

Eu nomeei o arquivo dropbox.service e coloquei em /etc/systemd/system/

    
por 13.09.2018 / 22:11
-1

Use systemd para gerenciamento de serviços .

    
por 14.08.2016 / 01:32