Partage
  • Partager sur Facebook
  • Partager sur Twitter

Lancer automatiquement un script au démarrage

Sous Debian, sans environnement de bureau

Sujet résolu
    13 février 2021 à 19:29:14

    Bonjour,

    Je souhaite lancer un script bash au démarrage de Debian, ce sont les règles d'iptables qui sont dans mon script.

    J'ai placé mon script dans /etc/init.d/ (c'est manifestement un convention tacite). J'ai ensuite tapé la commande suivant :

    # mon script s'appelle "ipt"
    update-rc.d ipt default

    Hélàs, ça ne fonctionne pas, j'ai essayé en appelant mon script ipt.bash (au cas où), mais bien sûr ça n'a rien changé. Je sais que je peux passer par la crontab, mais ce n'est pas très pro...

    J'ai trouvé des pistes sur le site de Debian mais pas de solutions.

    Savez-vous comment je dois faire ?

    -
    Edité par Owo 13 février 2021 à 19:32:34

    • Partager sur Facebook
    • Partager sur Twitter
      13 février 2021 à 19:58:40

      non. pas tacite. Explicite quand la distribution utilise encore sysVinit.

      maintenant, Debian utilise systemd pour le démarrage.
      tu devrais donc te pencher sur l'écriture d'un service.

      ce n'est pas très compliqué, mais je n'en ai pas fait suffisamment pour te guider.

      • Partager sur Facebook
      • Partager sur Twitter

      Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

        15 février 2021 à 15:19:40

        Écrire un service, je me note ce projet pour plus tard, j'ai déjà une bonne idée de ce que je ferai ! Merci !

        Là, je suis super à la traîne donc je vais à l'essentiel de mon projet actuel :/

        Comme ce sont des règles iptables, j'ai mis ça dans le fichier interfaces (/etc/network/interfaces), si ça peut servir à quelqu'un, quelques explications :

        # Pour savoir où est iptables en l'occurence, il faut utiliser la commande which.
        # Lorsque Linux démarre, il lance plein de choses. En mettant les règles iptables dans ce fichier interfaces, on est sûr qu'elles seront ajoutées en dernier et que iptables ne sera pas remis à 0 entre-temps (en gros).
        
        up /usr/sbin/iptables -t nat -A POSTROUTING -o enp0s8 -j MASQUERADE
        # NB : enp0s8 correspond à une de mes cartes réseaux ; sur mon ordinateur mes cartes sont toutes appelées "enp0sX" et non "ethX".


        Merci dantonq encore une fois !

        -
        Edité par Owo 15 février 2021 à 16:06:44

        • Partager sur Facebook
        • Partager sur Twitter

        Lancer automatiquement un script au démarrage

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown