demarrage domoticz à la mise sous tension

Photographie ultra-rapide, pilotage d'imprimante 3D ou de CNC, fabrication de bière.... Enfin tout ce que le Raspberry peut gérer trouvera sa place dans cette rubrique

Modérateur : Francois

domi
Administrateur
Messages : 3230
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: demarrage domoticz à la mise sous tension

Message par domi » lun. 25 juil. 2022 22:31

Bonjour,
Il doit effectivement y avoir un soucis avec votre installation.
Si après redémarrage manuel cela fonctionne, vous avez la possibilité d'installer un "chien de garde". De mon coté, j'utilise "Monit", car il arrive parfois que le daemon s'arrête après plusieurs jours de fonctionnement, Monit permet de la relancer automatiquement.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

dou_dou_69
Messages : 53
Enregistré le : sam. 23 juil. 2022 11:36

Re: demarrage domoticz à la mise sous tension

Message par dou_dou_69 » mar. 26 juil. 2022 08:47

via cette nouvelle install de domoticz
votre commande sudo /etc/init.d/domoticz.sh restart relance bien le service de domoticz

mais l'ajout de la ligne @reboot sleep 10 && /etc/init.d/domoticz.sh restart
n'a toujours pas l'air de résoudre mon soucis (peu être une erreur de syntaxe)

si ça peut palier à mon soucis je veux bien essayer

j'ai déjà croisé des discussions parlant de monit je vois si j'arrive à m'en servir

j'ai suivi https://doc.ubuntu-fr.org/monit
j'ai encore eu ces 2 lignes pendant l'install de monit

insserv: warning: script 'mountboot.sh' missing LSB tags and overrides
insserv: warning: script 'rkisp_3A.sh' missing LSB tags and overrides

elles apparaissent avec je ne sais plus quelle commande que j'ai essayé avec domoticz, elles sont peu être liées au problème.

pour le réglage de monit il faut suppirmer les # pour activer ces lignes c'est ça
set daemon 60
set logfile syslog facility log_daemon
set mailserver localhost
set mail-format { from: monit@serveurdev.example.com } -- mon adresse mail
set alert root@localhost
set httpd port 2812 and
SSL ENABLE
PEMFILE /var/certs/monit.pem
allow admin:test -- mes idents et mot de pass

en tapant cette commande vi /var/certs/monit.cnf

je ne peux rien modifier et donc ne peut taper le texte citer

penses que cette manip résoudrait mon problème

To do so create file /etc/systemd/system/my_script.service with following contents:

[Unit]
Description=My script that requires network
After=network.target

[Service]
Type=oneshot
ExecStart=/full/path/to/my_script.sh

[Install]
WantedBy=multi-user.target

Then execute:

sudo systemctl daemon-reload
sudo systemctl enable my_script

domi
Administrateur
Messages : 3230
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: demarrage domoticz à la mise sous tension

Message par domi » mar. 26 juil. 2022 15:24

Pour la crontab, il faut que ce soit celle de l'utilisateur "root", et je ne suis pas sûr que les arguments soient acceptés (argument = "restart").
Il faut donc passer par un script qui contiendra uniquement la ligne de commande pour redémarrer domoticz, et lancer ce script depuis la crontab de root.

Pour traiter de Monit, afin de garder le forum le mieux organisé que nous puissions, merci d'ouvrir un nouveau sujet avec votre/vos questions.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

dou_dou_69
Messages : 53
Enregistré le : sam. 23 juil. 2022 11:36

Re: demarrage domoticz à la mise sous tension

Message par dou_dou_69 » mar. 26 juil. 2022 21:08

pour le script, tu pourrais m'expliquer la démarche?

car la ça me dépasse

piper
Raspinaute
Messages : 641
Enregistré le : sam. 5 juin 2021 18:57

Re: demarrage domoticz à la mise sous tension

Message par piper » mar. 26 juil. 2022 22:54

Juste pour ma culture personnelle par rapport à domoticz :
Visiblement c'est un service
Pourquoi n'est-il pas géré par systemd ?
Et s'il ne l'est pas , pourquoi ne pas faire un script qui le rendrait compatible exploitable par systemd ? Ce n'est vraiment pas compliqué si on veut juste permettre un démarrage auto au boot, , et prévoir un arrêt propre.
rc.d est la solution de facilité qu'on utilisait il y a 20 ans, mais elle empêche toute possibilité de suivi, d'option de démarrage, d'arrêt propre

Ex de script systemd tout simple :

Code : Tout sélectionner

[Unit]
Description=Nom du service 
After=rc-local.service  #par exemple


[Service]
Type=simple
User=root #ou un autre user qui a les droits de lancement
ExecStart=commande à lancer pour démarrer domoticz
ExecStop=commande à lancer pour l'arrêter (optionnel)
PIDFile=fichier pid du process : où vous voulez

[Install]
WantedBy=multi-user.target
Ce script doit être dans

Code : Tout sélectionner

/lib/systemd/system/
Et s'il se nomme

Code : Tout sélectionner

domoticz.service
Alors il sera activé par

Code : Tout sélectionner

sudo systemctl enable domoticz.service
démarré manuellement par

Code : Tout sélectionner

sudo systemctl start domoticz.service
arrêté manuellement par

Code : Tout sélectionner

sudo systemctl stop domoticz.service
désactivé par

Code : Tout sélectionner

sudo systemctl disable domoticz.service
Et on pourra faire aussi "status", "restart", etc...
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

dou_dou_69
Messages : 53
Enregistré le : sam. 23 juil. 2022 11:36

Re: demarrage domoticz à la mise sous tension

Message par dou_dou_69 » jeu. 28 juil. 2022 13:38

il se lance au boot mais plante lors de la mise a l'heure donc je voudrais juste décaler son lancement pour que la mise à l'heure soit effective avant son lancement.

pour votre solution
je met le nom du service , ici domoticz
inscrit les 2 commandes à execstart et execstop

tape la commande pour l'activer avec enable

et c'est fini??

piper
Raspinaute
Messages : 641
Enregistré le : sam. 5 juin 2021 18:57

Re: demarrage domoticz à la mise sous tension

Message par piper » jeu. 28 juil. 2022 17:33

une fois fait
après "enable", le service ne démarrera qu'au reboot
Mais on peut le démarrer sans faire de reboot par "start"

Mais ce qu'il faudrait c'est comprendre pourquoi domoticz plante à la mise à l'heure.
Ce truc a forcément un fichier de log
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

dou_dou_69
Messages : 53
Enregistré le : sam. 23 juil. 2022 11:36

Re: demarrage domoticz à la mise sous tension

Message par dou_dou_69 » jeu. 28 juil. 2022 19:19

donc:
[Unit]
Description=domoticz
After=rc-local.service #par exemple quel est le but de cette ligne? local.service à remplacer par domoticz.service


[Service]
Type=simple
User=root #ou un autre user qui a les droits de lancement
ExecStart=commande à lancer pour démarrer domoticz
ExecStop=commande à lancer pour l'arrêter (optionnel)
PIDFile=fichier pid du process : où vous voulez quel est le but de cette ligne? c'est quoi un ficher pid?

[Install]
WantedBy=multi-user.target quel est le but de cette ligne?

piper
Raspinaute
Messages : 641
Enregistré le : sam. 5 juin 2021 18:57

Re: demarrage domoticz à la mise sous tension

Message par piper » ven. 29 juil. 2022 00:47

After indique après quel autre service celui-ci doit être démarré.
Exemple : certains services exigent que le réseaux soit déjà opérationnel avant de pouvoir être lancé.

WantedBy permet de spécifier dans quel target doit être actif le service.
De mémoire, multi-user.target, désigne les runlevels 2, 3, 4 et 5. (voir SYSV en gros c'est démarrage en mode multi-utitilisateur peu importe que le bureau soit lancé ou pas)

La commande systemctl status ne te dira pas grand chose de plus que l'état du service (Enable ou pas, Started ou pas)

C'est ton script domoticz.sh et ce qui se trouve derrière qui doit géré les erreurs
Soit il a un fichier de log (généralement dans /var/log/)
Soit il renseigne le journal systeme accessible par (journalctl) Ex :

Code : Tout sélectionner

journalctl -u domoticz.service --since "2 hours ago"
Mettre en place un service via systemd fonctionne parfaitement lorsque le script qui démarre le service (ici domoticz.sh) est parfaitement fonctionnel.
systemd permet de faire plein d'autres choses :
- une commande particulière pour arrêter le service
- un redémarrage automatique en cas de plantage , avec les conditions qu'on veut (attention : dangereux, faut savoir ce qu'on fait)
- démarrage après certains services et avant certains services (cas des dépendances)
etc..
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

dou_dou_69
Messages : 53
Enregistré le : sam. 23 juil. 2022 11:36

Re: demarrage domoticz à la mise sous tension

Message par dou_dou_69 » mar. 9 août 2022 17:16

donc que faudrait il que je fasse pour que systemd demarre le service de domoticz

Répondre

Retourner vers « Les applications spécialisées du Raspberry Pi »