Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

[Résolu] Scénario programmé sur Jeedom/Synology

Venez discuter de votre installation Jeedom sur NAS Synology
Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 22 juil. 2019, 19:34

tu peux utiliser utiliser nano comme éditeur de texte

Code : Tout sélectionner

sudo nano /etc/cron.d/jeedom
pas besoin de redémarrer jeedom
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 23 juil. 2019, 16:55

Bonjour Mips2648,

Après avoir rajouté "> /tmp/debugcronjeedom.log 2>&1" dans le fichier "/etc/cron.d/jeedom" pendant 2 minutes. Puis j'ai remis ">> /dev/null".
Tu vas me prendre pour un "boulet", mais où est le fichier "debugcronjeedom.log" ? Je suis allé dans le dossier /tmp et je ne l'ai pas trouvé. Je me suis connecté à jeedom et j'ai ouvert Analyse => Logs ; pas trouvé non plus.

Où est mon erreur ?

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 24 juil. 2019, 11:33

tu peux laisser le log en place plus que 2min, laisse le tant que le problème n'est pas réglé
si le cron tourne, il devrait être dans /tmp/debugcronjeedom.log, il ne sera pas visible dans jeedom

Essaye d'executer la commande complète pour voir s'il y a une erreur de syntax qlq part, cela devrait être qlqch comme:

Code : Tout sélectionner

sudo /usr/bin/php  /var/www/html/core/php/jeeCron.php > /tmp/debugcronjeedom.log 2>&1
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 24 juil. 2019, 15:59

Quand j'ai tapé la commande : sudo /usr/bin/php /var/www/html/core/php/jeeCron.php > /tmp/debugcronjeedom.log 2>&1
Il me répond que j'ai reçu un nouveau courrier dans le dossier mail.
Et quand j'ouvre ce mail, voici le résultat :

JeedomVM : Jul 24 15:38:35 : [username] : user NOT in sudoers ; TTY=pts/0 ; PWD=/home/[username] ; USER=root ; COMMAND=/usr/bin/php /var/www/html/core/php/jeeCron.php
(rappel : en remplaçant bien sûr [username] par mon utilisateur perso)

Ne faudrait-il pas que mon [username] ait d'autres droits comme root ? ou au moins des droits comme les tiens ?

En parallèle, j'ai remis la commande "> /tmp/debugcronjeedom.log 2>&1" à la fin du fichier "/etc/cron.d/jeedom". Je précise que pour faire cette écriture dans le fichier, je suis obligé de me mettre en root. Est-ce normal ?

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 26 juil. 2019, 15:00

Oui a priori c'est normal.
Et si tu passes en root pour exécuter la commande php alors?
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 26 juil. 2019, 15:29

Quelle commande en php ? Celui-ci :

Code : Tout sélectionner

sudo /usr/bin/php /var/www/html/core/php/jeeCron.php > /tmp/debugcronjeedom.log 2>&1

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 26 juil. 2019, 16:51

oui, celle-là
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 27 juil. 2019, 11:12

Bonjour Mips2648,

Voici les résultats de ce que j'ai fait :
- j'ai désactivé tous les plugins.
- j'ai redémarré Jeedom.
- Dans santé, une seule ligne en rouge, celle qui s'intitule "Démarré".

Si je vais dans "Moteur de tâches", je démarre, à la main (flèche verte) le service "Jeedom-cron", la ligne "Démarré" devient verte et du coup cela débloque le reste (d'autres cron démarrent)

Après, j'ai refait la manip (les 2 derniers tirets ci-dessus). En ssh, j'ai exécuté la ligne de commande que tu m'as dit (sudo /usr/...) et j'ai le même résultat (c-à-d Ok !)

Après j'ai refais la manip une 3ème fois. En ssh, j'ai exécuté la ligne de commande mais sans le sudo (c-à-d avec le nom d'utilisateur perso) et là voici le message d'erreur ci-dessous :
Capture Scénario programmé 8.JPG
Capture Scénario programmé 8.JPG (142.64 Kio) Consulté 2536 fois
En bref, le fichier jeeCron.php fonctionne bien mais c'est ce fichier qui n'est pas exécuté automatiquement. L'utilisateur qui est en charge de l'exécuter est bien www-data comme tu me l'as dit. J'aurais envie de poser cette question :

Comment ce fichier (jeeCron.php) est exécuté automatiquement ?

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 27 juil. 2019, 15:28

Comment ce fichier (jeeCron.php) est exécuté automatiquement ?
C'est la ligne dans le fichier /etc/cron.d/jeedom qui sert à configurer le service cron qui va donc exécuter cette commande chaque minute.
Les erreurs sans le sudo sont normal.

Donc quand tu exécutes la commande manuellement (avec sudo), tu as bien le fichier log dans le dossier tmp du coup?

Donc si je récapitule:
- la config est bonne (car la même commande exécutée manuellement fait l'appel à jeedom
- le service à l'air de tourner (on a vérifié avec la commande "ps -eaf | grep cron" qui retournait bien une ligne du root avec la commande "/usr/sbin/cron -f"
mais il n'y a rien qui se passe ...

tu pourrais revérifier le service avec la commande suivante?
Cela va retourner la liste des services avec un + ou un - devant leur nom selon qu'il tourne ou pas.

Code : Tout sélectionner

sudo service --status-all
Tu devrais voir le "cron" dans la liste avec le +

si ok alors executes

Code : Tout sélectionner

sudo service cron status
Cela va retourner les détails pour le service cron avec normalement l'historique des exécution, une liste avec la date, l'heure et la commande executée, par exemple:

Code : Tout sélectionner

jui 27 15:23:01 [nomdelamachine] CRON[29957]: pam_unix(cron:session): session opened for user www-data by (uid=0)
jui 27 15:23:01 [nomdelamachine] CRON[29958]: (www-data) CMD (/usr/bin/php /var/www/html/core/php/jeeCron.php >> /tmp/cronjeedom)
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 28 juil. 2019, 15:35

Donc quand tu exécutes la commande manuellement (avec sudo), tu as bien le fichier log dans le dossier tmp du coup?
Oui, le fichier est présent et vide car j'ai démarré le "jeedom-cron" à la main hier après midi.

Voici Service cron :

Code : Tout sélectionner

● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: ena
   Active: active (running) since Sat 2019-07-27 10:43:13 CEST; 1 day 4h ago
     Docs: man:cron(8)
 Main PID: 595 (cron)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/cron.service
           └─595 /usr/sbin/cron -f

juil. 28 15:25:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/othe
juil. 28 15:25:01 JeedomVM CRON[23557]: pam_unix(cron:session): session opened f
juil. 28 15:25:01 JeedomVM CRON[23558]: (root) CMD (/usr/bin/php /var/www/html/c
juil. 28 15:26:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/othe
juil. 28 15:27:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/othe
juil. 28 15:28:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/othe
juil. 28 15:29:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/othe
juil. 28 15:30:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/othe
juil. 28 15:30:01 JeedomVM CRON[23616]: pam_unix(cron:session): session opened f
juil. 28 15:30:01 JeedomVM CRON[23617]: (root) CMD (/usr/bin/php /var/www/html/c
lines 1-19/19 (END)...skipping...
● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-07-27 10:43:13 CEST; 1 day 4h ago
     Docs: man:cron(8)
 Main PID: 595 (cron)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/cron.service
           └─595 /usr/sbin/cron -f

juil. 28 15:25:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)
juil. 28 15:25:01 JeedomVM CRON[23557]: pam_unix(cron:session): session opened for user root by (uid=0)
juil. 28 15:25:01 JeedomVM CRON[23558]: (root) CMD (/usr/bin/php /var/www/html/core/php/watchdog.php >> /dev/null)
juil. 28 15:26:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)
juil. 28 15:27:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)
juil. 28 15:28:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)
juil. 28 15:29:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)
juil. 28 15:30:01 JeedomVM cron[595]: (*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)
juil. 28 15:30:01 JeedomVM CRON[23616]: pam_unix(cron:session): session opened for user root by (uid=0)
juil. 28 15:30:01 JeedomVM CRON[23617]: (root) CMD (/usr/bin/php /var/www/html/core/php/watchdog.php >> /dev/null)
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
lines 1-19/19 (END)
Que puis-je vérifier maintenant ?

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 29 juil. 2019, 11:52

le message "(*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)" est une erreur, c'est pour cela que le cron (l'appel php vers jeeCron.php) ne s'execute pas.
Par contre je ne suis pas certain sur ce qu'il faut faire, jamais vu cela avant, en cherchant sur le net cela semble être lié à un problème de droit
si tu cherches "cron INSECURE MODE (group/other writable)" tu vas tomber sur les mêmes pages que moi, peut-être que tu peux essayer les propositions données? (chmod 600 principalement)

Sinon, j'en avais parlé au début mais je ne sais plus si tu l'avais déjà fait: as-tu tenté de re-appliquer les droits sur les fichiers via jeedom?
Dans la configuration, onglet "OS/DB", options "Remettre à plat les droits des dossiers et fichiers" et tu clics sur "Lancer"

Si cela t'affiche un log, montre le résultat
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 29 juil. 2019, 16:11

Bonjour Mips2648,

Résolu ! Enfin c'est résolu. C'était bien un problème de droit sur le fichier /etc/cron.d/jeedom.
Voici la ligne de commande qui a permis de résoudre mon problème :

Code : Tout sélectionner

sudo chmod og-w /etc/cron.d/jeedom
Cela non seulement a permis de résoudre le démarrage de jeedom (ligne "Démarré" sur Ok), mais en plus le problème du départ, les scénarios programmés fonctionnent très bien. Ta méthode de résolution a été la bonne.

Juste pour info : que veut dire le paramètre "og-w" de la commande chmod ?

Un énorme merci à toi Mips2648 car je n'y serais jamais arrivé tout seul et j'ai même appris beaucoup de choses (fonctionnement de jeedom, commandes linux sur debian, etc)

Encore merci

VinceDuSud

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 29 juil. 2019, 17:08

Content pour toi, 3 pages de messages qd meme :D

1. N'oublies pas de revenir en arrière sur les log en mode debug qu'on a activé (dans le cron et dans la config jeedom de mémoire)
2. passes le sujet en [résolu] éventuellement pour les suivants ;)
Juste pour info : que veut dire le paramètre "og-w" de la commande chmod ?
Cela correspond aux permissions que tu veux donner, tous les détails ici : https://fr.wikipedia.org/wiki/Chmod
Et donc ici cela veut dire que tu retires le droits d'écriture (-w) au groupe (g) et à "others" (o)
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

VinceDuSud
Timide
Messages : 29
Inscription : 24 mars 2019, 15:01

Re: Scénario programmé sur Jeedom/Synology

Message par VinceDuSud » 29 juil. 2019, 17:23

passe le sujet en [résolu]
Comment fais-tu cela ?

Mips2648
Actif
Messages : 932
Inscription : 08 sept. 2018, 17:09

Re: Scénario programmé sur Jeedom/Synology

Message par Mips2648 » 29 juil. 2019, 17:26

Juste éditer le sujet et rajouter [résolu] dans le titre
Développeur et auteur des plugins suivants, (entre autre Arlo, Solaredge, Design Image, Gotify...) et aidant sur plein d'autres!

Si vous voulez contribuer, un don fait toujours plaisir : https://paypal.me/mips2648

Répondre

Revenir vers « Synology »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités