• Envoi automatique de mail =?utf-8?Q?apr?= =?utf-8?B?w6hzIGxlIGTDqW1hcnJ

    From steve@21:1/5 to All on Sat Nov 13 16:40:01 2021
    Bonjour,

    J'ai un système headless (Rpi) et j'aimerai qu'après chaque démarrage,
    un mail soit envoyé avec la sortie de ifconfig afin d'avoir l'ip du
    système (qui peut changer de temps en temps à cause de dhcp). L'idée est
    de ne pas avoir à brancher un écran externe si tout à coup l'ip à changé (je me connecte via vnc au système).

    Voici ce que j'ai fait.

    1) création du script d'envoi

    cat /home/steve/bin/myip.sh
    #!/bin/sh

    ifconfig | mutt -s "mon ip" moi@example.com

    chmod u+x myip.sh

    Le script s'exécute correctement (=mail bien envoyé).

    2) création du service dans /lib/systemd/system:

    cat mon-ip.service
    [Unit]
    Description=Envoi ip via mail

    [Service]
    Type=oneshot
    ExecStart=/home/steve/bin/myip.sh

    [Install]
    WantedBy=multi-user.target

    sudo systemctl daemon-reload
    sudo systemctl enable mon-ip.service
    Created symlink /etc/systemd/system/multi-user.target.wants/mon-ip.service -> /lib/systemd/system/mon-ip.service.
    sudo systemctl start mon-ip.service
    sudo systemctl status mon-ip.service

    mon-ip.service - Envoi ip via mail
    Loaded: loaded (/lib/systemd/system/mon-ip.service; enabled; vendor preset: enabled)
    Active: inactive (dead) since Sat 2021-11-13 16:17:47 CET; 27s ago
    Process: 1678 ExecStart=/home/stellarmate/bin/myip.sh (code=exited, status=0/SUCCESS)
    Main PID: 1678 (code=exited, status=0/SUCCESS)

    nov 13 16:17:47 box systemd[1]: Starting Envoi ip via mail...
    nov 13 16:17:47 box systemd[1]: mon-ip.service: Succeeded.
    nov 13 16:17:47 box systemd[1]: Started Envoi ip via mail.



    3) redémarrage du système

    Résultat, pas de mail d'envoyé.

    Cela fait un bon moment que je suis dessus, mais là je sèche.

    Qu'y a-t-il de faux ?

    Merci pour toute aide.

    S

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From NoSpam@21:1/5 to All on Sat Nov 13 17:10:01 2021
    Bonjour

    utiliser @reboot dans cron et executer le script

    Solution personnelle utilisée pour ce type de service: autossh

    Daniel

    Le 13/11/2021 à 16:21, steve a écrit :
    Bonjour,

    J'ai un système headless (Rpi) et j'aimerai qu'après chaque démarrage,
    un mail soit envoyé avec la sortie de ifconfig afin d'avoir l'ip du
    système (qui peut changer de temps en temps à cause de dhcp). L'idée est de ne pas avoir à brancher un écran externe si tout à coup l'ip à changé (je me connecte via vnc au système).

    Voici ce que j'ai fait.

    1) création du script d'envoi

    cat /home/steve/bin/myip.sh
    #!/bin/sh

    ifconfig | mutt -s "mon ip" moi@example.com

    chmod u+x myip.sh

    Le script s'exécute correctement (=mail bien envoyé).
    2) création du service dans /lib/systemd/system:

    cat mon-ip.service
    [Unit]
    Description=Envoi ip via mail

    [Service]
    Type=oneshot
    ExecStart=/home/steve/bin/myip.sh

    [Install]
    WantedBy=multi-user.target

    sudo systemctl daemon-reload
    sudo systemctl enable mon-ip.service
    Created symlink
    /etc/systemd/system/multi-user.target.wants/mon-ip.service -> /lib/systemd/system/mon-ip.service.
    sudo systemctl start mon-ip.service
    sudo systemctl status mon-ip.service

    mon-ip.service - Envoi ip via mail
       Loaded: loaded (/lib/systemd/system/mon-ip.service; enabled; vendor preset: enabled)
       Active: inactive (dead) since Sat 2021-11-13 16:17:47 CET; 27s ago
      Process: 1678 ExecStart=/home/stellarmate/bin/myip.sh (code=exited, status=0/SUCCESS)
     Main PID: 1678 (code=exited, status=0/SUCCESS)

    nov 13 16:17:47 box systemd[1]: Starting Envoi ip via mail...
    nov 13 16:17:47 box systemd[1]: mon-ip.service: Succeeded.
    nov 13 16:17:47 box systemd[1]: Started Envoi ip via mail.



    3) redémarrage du système

    Résultat, pas de mail d'envoyé.

    Cela fait un bon moment que je suis dessus, mais là je sèche.

    Qu'y a-t-il de faux ?

    Merci pour toute aide.

    S

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From steve@21:1/5 to All on Sat Nov 13 18:00:02 2021
    Salut,

    Le 13-11-2021, à 16:42:49 +0100, NoSpam a écrit :

    Bonjour

    utiliser @reboot dans cron et executer le script

    Merci, je n'avais pas pensé à cette solution simple (qui marche, je
    viens de tester). Mais ça ne répond pas à mon problème initial :)

    @plus

    S

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sabri KHEMISSA@21:1/5 to dlist@bluewin.ch on Sat Nov 13 17:20:02 2021
    Bonjour,

    Je pense que tu n'es pas maître du serveur DHCP. Le cas échéant, tu peux forcer l'attribution d'un IP sur la base d'une adresse MAC. https://www.itsfullofstars.de/2019/02/assign-a-static-ip-to-dhcp-client/

    Pour répondre à ta question, tu peux utiliser crontab https://phoenixnap.com/kb/crontab-reboot

    L'avantage d'utiliser crontab est de pouvoir lancer périodiquement ton
    script afin de détecter les changements d'IP dynamique.

    Pour rappel, l'attribution d'une IP par DHCP est associée à un bail. L'IP peut changer à l'expiration du bail et la nouvelle demande l'IP associée
    sans redémarrage du système.

    Sabri

    On Sat, Nov 13, 2021, 16:39 steve <dlist@bluewin.ch> wrote:

    Bonjour,

    J'ai un système headless (Rpi) et j'aimerai qu'après chaque démarrage,
    un mail soit envoyé avec la sortie de ifconfig afin d'avoir l'ip du
    système (qui peut changer de temps en temps à cause de dhcp). L'idée est de ne pas avoir à brancher un écran externe si tout à coup l'ip à changé (je me connecte via vnc au système).

    Voici ce que j'ai fait.

    1) création du script d'envoi

    cat /home/steve/bin/myip.sh
    #!/bin/sh

    ifconfig | mutt -s "mon ip" moi@example.com

    chmod u+x myip.sh

    Le script s'exécute correctement (=mail bien envoyé).

    2) création du service dans /lib/systemd/system:

    cat mon-ip.service
    [Unit]
    Description=Envoi ip via mail

    [Service]
    Type=oneshot
    ExecStart=/home/steve/bin/myip.sh

    [Install]
    WantedBy=multi-user.target

    sudo systemctl daemon-reload
    sudo systemctl enable mon-ip.service
    Created symlink /etc/systemd/system/multi-user.target.wants/mon-ip.service
    /lib/systemd/system/mon-ip.service.
    sudo systemctl start mon-ip.service
    sudo systemctl status mon-ip.service

    mon-ip.service - Envoi ip via mail
    Loaded: loaded (/lib/systemd/system/mon-ip.service; enabled; vendor preset: enabled)
    Active: inactive (dead) since Sat 2021-11-13 16:17:47 CET; 27s ago
    Process: 1678 ExecStart=/home/stellarmate/bin/myip.sh (code=exited, status=0/SUCCESS)
    Main PID: 1678 (code=exited, status=0/SUCCESS)

    nov 13 16:17:47 box systemd[1]: Starting Envoi ip via mail...
    nov 13 16:17:47 box systemd[1]: mon-ip.service: Succeeded.
    nov 13 16:17:47 box systemd[1]: Started Envoi ip via mail.



    3) redémarrage du système

    Résultat, pas de mail d'envoyé.

    Cela fait un bon moment que je suis dessus, mais là je sèche.

    Qu'y a-t-il de faux ?

    Merci pour toute aide.

    S




    <div dir="auto"><div>Bonjour,</div><div dir="auto"><br></div><div dir="auto">Je pense que tu n&#39;es pas maître du serveur DHCP. Le cas échéant, tu peux forcer l&#39;attribution d&#39;un IP sur la base d&#39;une adresse MAC.</div><div dir="auto"><a
    href="https://www.itsfullofstars.de/2019/02/assign-a-static-ip-to-dhcp-client/">https://www.itsfullofstars.de/2019/02/assign-a-static-ip-to-dhcp-client/</a></div><div dir="auto"><br></div><div dir="auto">Pour répondre à ta question, tu peux utiliser
    crontab</div><div dir="auto"><a href="https://phoenixnap.com/kb/crontab-reboot">https://phoenixnap.com/kb/crontab-reboot</a></div><div dir="auto"><br></div><div dir="auto">L&#39;avantage d&#39;utiliser crontab est de pouvoir lancer périodiquement ton
    script afin de détecter les changements d&#39;IP dynamique.</div><div dir="auto"><br></div><div dir="auto">Pour rappel, l&#39;attribution d&#39;une IP par DHCP est associée à un bail. L&#39;IP peut changer à l&#39;expiration du bail et la nouvelle
    demande l&#39;IP associée sans redémarrage du système.</div><div dir="auto"><br></div><div dir="auto">Sabri<br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Sat, Nov 13, 2021, 16:39 steve &lt;<a href="mailto:dlist@
    bluewin.ch">dlist@bluewin.ch</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Bonjour,<br>

    J&#39;ai un système headless (Rpi) et j&#39;aimerai qu&#39;après chaque démarrage,<br>
    un mail soit envoyé avec la sortie de ifconfig afin d&#39;avoir l&#39;ip du<br>
    système (qui peut changer de temps en temps à cause de dhcp). L&#39;idée est<br>
    de ne pas avoir à brancher un écran externe si tout à coup l&#39;ip à changé<br>
    (je me connecte via vnc au système).<br>

    Voici ce que j&#39;ai fait.<br>

    1) création du script d&#39;envoi<br>

    cat /home/steve/bin/myip.sh<br>
    #!/bin/sh<br>

    ifconfig | mutt -s &quot;mon ip&quot; <a href="mailto:moi@example.com" target="_blank" rel="noreferrer">moi@example.com</a><br>

    chmod u+x myip.sh<br>

    Le script s&#39;exécute correctement (=mail bien envoyé). <br>

    2) création du service dans /lib/systemd/system:<br>

    cat mon-ip.service<br>
    [Unit]<br>
    Description=Envoi ip via mail<br>

    [Service]<br>
    Type=oneshot<br>
    ExecStart=/home/steve/bin/myip.sh<br>

    [Install]<br>
    WantedBy=multi-user.target<br>

    sudo systemctl daemon-reload<br>
    sudo systemctl enable mon-ip.service<br>
    Created symlink /etc/systemd/system/multi-user.target.wants/mon-ip.service -&gt; /lib/systemd/system/mon-ip.service.<br>
    sudo systemctl start mon-ip.service<br>
    sudo systemctl status mon-ip.service<br>

    mon-ip.service - Envoi ip via mail<br>
        Loaded: loaded (/lib/systemd/system/mon-ip.service; enabled; vendor preset: enabled)<br>
        Active: inactive (dead) since Sat 2021-11-13 16:17:47 CET; 27s ago<br>
       Process: 1678 ExecStart=/home/stellarmate/bin/myip.sh (code=exited, status=0/SUCCESS)<br>
      Main PID: 1678 (code=exited, status=0/SUCCESS)<br>

    nov 13 16:17:47 box systemd[1]: Starting Envoi ip via mail...<br>
    nov 13 16:17:47 box systemd[1]: mon-ip.service: Succeeded.<br>
    nov 13 16:17:47 box systemd[1]: Started Envoi ip via mail.<br>



    3) redémarrage du système<br>

    Résultat, pas de mail d&#39;envoyé.<br>

    Cela fait un bon moment que je suis dessus, mais là je sèche.<br>

    Qu&#39;y a-t-il de faux ?<br>

    Merci pour toute aide.<br>

    S<br>


    </blockquote></div></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Sabri KHEMISSA@21:1/5 to All on Sat Nov 13 18:20:02 2021
    Afin de te simplifier la vie... tu peux aller plus loin en envoyant un mail uniquement lorsque l'IP change entre deux exécutions d'un crontab.
    Le contenu de ce post est à adapter à ton contexte : https://askubuntu.com/questions/374894/server-script-that-sends-an-email-every-time-the-global-ip-changes

    <div dir="ltr"><div>Afin de te simplifier la vie... tu peux aller plus loin en envoyant un mail uniquement lorsque l&#39;IP change entre deux exécutions d&#39;un crontab.</div><div>Le contenu de ce post est à adapter à ton contexte : <a href="https://
    askubuntu.com/questions/374894/server-script-that-sends-an-email-every-time-the-global-ip-changes">https://askubuntu.com/questions/374894/server-script-that-sends-an-email-every-time-the-global-ip-changes</a></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Christophe Maquaire@21:1/5 to All on Sat Nov 13 19:00:01 2021
    Le samedi 13 novembre 2021 à 16:21 +0100, steve a écrit :
    Bonjour,

    Bonjour,

    Je ne suis pas très au point à propos de systemd, mais j'ajouterais

    2) création du service dans /lib/systemd/system:

    cat mon-ip.service
    [Unit]
    Description=Envoi ip via mail
    After=network.target

    [Service]
    Type=oneshot
    ExecStart=/home/steve/bin/myip.sh

    [Install]
    WantedBy=multi-user.target




    Merci pour toute aide.
    De rien et peut-être inutile.

    S
    Christophe

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Christophe Maquaire@21:1/5 to All on Sun Nov 14 12:40:01 2021
    Le samedi 13 novembre 2021 à 16:21 +0100, steve a écrit :
    Bonjour,

    J'ai un système headless (Rpi) et j'aimerai qu'après chaque démarrage,
    un mail soit envoyé avec la sortie de ifconfig afin d'avoir l'ip du
    système (qui peut changer de temps en temps à cause de dhcp). L'idée
    est

    Sinon tu peux laisser dhcpd ou dhclient faire le boulot via les hooks

    https://netbeez.net/blog/linux-dhcp-hooks-network-engineers/

    (bon, c'est le premier lien qui sort avec mon ami google... )

    Christophe

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From steve@21:1/5 to All on Sun Nov 14 14:00:01 2021
    Le 14-11-2021, à 12:15:38 +0100, Christophe Maquaire a écrit :

    Le samedi 13 novembre 2021 à 16:21 +0100, steve a écrit :
    Bonjour,

    J'ai un système headless (Rpi) et j'aimerai qu'après chaque démarrage,
    un mail soit envoyé avec la sortie de ifconfig afin d'avoir l'ip du
    système (qui peut changer de temps en temps à cause de dhcp). L'idée
    est

    Sinon tu peux laisser dhcpd ou dhclient faire le boulot via les hooks

    Merci, je ne connaissais pas.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Roberto =?iso-8859-1?Q?C=2E_S=E1nch@21:1/5 to steve on Sat Apr 9 14:50:01 2022
    On Sat, Nov 13, 2021 at 05:34:01PM +0100, steve wrote:
    Salut,

    Le 13-11-2021, à 16:42:49 +0100, NoSpam a écrit :

    Bonjour

    utiliser @reboot dans cron et executer le script

    Merci, je n'avais pas pensé à cette solution simple (qui marche, je
    viens de tester). Mais ça ne répond pas à mon problème initial :)


    Désolé de répondre à un très vieux fil.

    D'une autre manière, tu peux utiliser /etc/rc.local qui est exécuté à
    la fin de chaque démarrage. Par exemple:

    /usr/local/bin/myip.sh || exit 0

    Salut,

    -Roberto

    --
    Roberto C. Sánchez

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From NoSpam@21:1/5 to All on Sat Apr 9 16:00:02 2022
    Bonjour

    Le 09/04/2022 à 14:29, Roberto C. Sánchez a écrit :
    On Sat, Nov 13, 2021 at 05:34:01PM +0100, steve wrote:
    Salut,

    Le 13-11-2021, à 16:42:49 +0100, NoSpam a écrit :

    Bonjour

    utiliser @reboot dans cron et executer le script
    Merci, je n'avais pas pensé à cette solution simple (qui marche, je
    viens de tester). Mais ça ne répond pas à mon problème initial :)


    Désolé de répondre à un très vieux fil.

    D'une autre manière, tu peux utiliser /etc/rc.local qui est exécuté à
    la fin de chaque démarrage. Par exemple:

    /usr/local/bin/myip.sh || exit 0

    ce fichier n'est plus exécuté avec systemd sauf a créer un service qui imiterait

    --
    Daniel

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Roberto =?iso-8859-1?Q?C=2E_S=E1nch@21:1/5 to NoSpam on Sat Apr 9 17:10:01 2022
    On Sat, Apr 09, 2022 at 03:35:12PM +0200, NoSpam wrote:
    Bonjour

    Le 09/04/2022 à 14:29, Roberto C. Sánchez a écrit :
    On Sat, Nov 13, 2021 at 05:34:01PM +0100, steve wrote:
    Salut,

    Le 13-11-2021, à 16:42:49 +0100, NoSpam a écrit :

    Bonjour

    utiliser @reboot dans cron et executer le script
    Merci, je n'avais pas pensé à cette solution simple (qui marche, je
    viens de tester). Mais ça ne répond pas à mon problème initial :)


    Désolé de répondre à un très vieux fil.

    D'une autre manière, tu peux utiliser /etc/rc.local qui est exécuté à
    la fin de chaque démarrage. Par exemple:

    /usr/local/bin/myip.sh || exit 0

    ce fichier n'est plus exécuté avec systemd sauf a créer un service qui imiterait

    Je ne le savais pas.

    Sur mon PC (de l'année 2016 et qui a commencé avec Jessie et qui puis a
    eu des mises à jours vers stretch et buster), il y a le fichier
    /etc/rc.local. Je pensais que ce fichier était toujours installé sur les nouvelles installations.

    Je viens d'installer un chroot avec buster et un autre chroot avec
    bullseye. Pas de fichier /etc/rc.local. J'ai aussi installé une machine virtuelle avec bullseye sous qemu. Pas de fichier /etc/rc.local. Je
    pense que tu as raison. Le fichier /etc/rc.local n'est plus inclu quand
    on fait une nouvelle installation.

    Désolé pour la confusion.

    Salut,

    -Roberto

    --
    Roberto C. Sánchez

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)