web-dev-qa-db-fra.com

Comment configurer un service pour qu'il s'exécute au démarrage

J'ai un démon qui fonctionne bien si je le démarre manuellement avec la commande service:

ricardo@ricardo-laptop:~$ Sudo service minidlna start                   
 * Starting minidlna minidlna                                                              [ OK ] 

mais ce n'est pas configuré pour démarrer automatiquement lorsque le PC redémarre.

Comment puis-je le configurer pour qu'il démarre automatiquement, même si personne n'est connecté au PC?

233
Ricardo Reyes
Sudo update-rc.d minidlna defaults

Cela devrait ajouter le service au système de démarrage automatique. Mais si vous obtenez:

System start/stop links for /etc/init.d/minidlna already exist.

Faire la commande

Sudo update-rc.d minidlna enable

P.S.: Pour plus de détails, consultez la page de manuel relative à update-rc.d en tapant la commande man update-rc.d

273
LassePoulsen

Parfois, vous devez exécuter un script au démarrage, par exemple, une configuration iptables au démarrage. Il n’est donc pas nécessaire d’exécuter le script manuellement à chaque redémarrage.

Vous pouvez exécuter votre script au démarrage dans Ubuntu en l’ajoutant au fichier /etc/init.d/rc.local. Regardez les étapes ci-dessous.

  1. Ouvrez le fichier /etc/rc.local avec cette commande:

    vim /etc/rc.local
    
  2. Ajoutez le script que vous souhaitez exécuter au démarrage, par exemple:

    sh /home/ivan/iptables.sh 
    echo 'Iptable Configured!'
    
  3. Vérifiez les commentaires inclus dans ce fichier et assurez-vous qu’une sortie 0 est à la fin.

  4. Enregistrez les fichiers. Et votre script s'exécutera au démarrage.

33
hhlp
  • Pour démarrer un démon au démarrage:

    update-rc.d service_name defaults
    
  • Retirer:

    update-rc.d -f service_name remove
    

par défaut => niveaux d'exécution par défaut 2,3,4 et 5

Exemple:

update-rc.d Tomcat7 defaults
32
Lakal Malimage

Depuis Ubuntu 15.10 (respectivement Debian 8 "jessie"), vous devez utiliser la commande suivante pour configurer votre service minidlnaafin qu'il soit exécuté au démarrage:

Sudo systemctl enable minidlna.service

Et pour le désactiver à nouveau au démarrage:

Sudo systemctl disable minidlna.service

Cela fonctionne avec toutes les références de nom de service que vous pouvez trouver avec ls /lib/systemd/system/*.service.

4
tanius