Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

Je souhaite lancer une tachê créée dans le gestionnaire de tâches du Syno.

Pour celà, il y a la fonction

synoschedtask --get

qui permet de visualiser les tâches programmées.

Voici chez moi pour la tâhce #2 :

MyAdmin@SynoBackup:/$ /usr/syno/bin/synoschedtask --get id=2
               ID: [2]
             Name: [Keep Alive]
            State: [enabled]
            Owner: [root]
             Type: [daily]
       Start date: [0/0/0]
         Run time: [0]:[0]
          Command: [/volume2/ScriptsUnix/KeepAlive_Synology.sh]
    Last Run Time: Fri Oct 12 00:00:02 2018
           Status: [Success]

d'après la doc

MyAdmin@SynoBackup:/$ /usr/syno/bin/synoschedtask --help
Copyright (c) 2003-2018 Synology Inc. All rights reserved.

Usage: synoschedtask (Version 23739)
	--get [<id=x> <state=disabled|enabled> <owner=x> <type=once|yearly|monthly|weekly|daily>]
	--del <id=x>
	--run <id=x> [check_time=0|1(default)] [check_status=0|1(default)]
	--reset-status
	--sync
	--help

Je dois faire ceci pour lancer la tâche

MyAdmin@SynoBackup:/$ /usr/syno/bin/synoschedtask --run id=2 check_time=0
MyAdmin@SynoBackup:/$ 

apparemment tout s'est bien passé, sauf que la tâche ne s'est pas exécutée

MyAdmin@SynoBackup:/$ /usr/syno/bin/synoschedtask --run id=2 check_time=0
MyAdmin@SynoBackup:/$ /usr/syno/bin/synoschedtask --get id=2
               ID: [2]
             Name: [Keep Alive]
            State: [enabled]
            Owner: [root]
             Type: [daily]
       Start date: [0/0/0]
         Run time: [0]:[0]
          Command: [/volume2/ScriptsUnix/KeepAlive_Synology.sh]
    Last Run Time: Fri Oct 12 00:00:02 2018
           Status: [Success]

MyAdmin@SynoBackup:/$ 

j'ai déjà posé la question ici : https://www.nas-forum.com/forum/topic/61113-commande-ssh-pour-lancer-tâche-du-planificateur-de-tâches/

mais chez eux ça fonctionne.

La seule différence que je sais, c''est que je suis sous Xpeno, mais ça je ne l'ai pas dit, car ils considèrent (à tort) que c'est du vol.

Alors, je vous le demande ? Ca fonctionne chez vous ? DSM 6.1 ou 6.2 ? (je suis en 6.2)

 

Merci

Posté(e)

Chez moi ça fonctionnait en 5.x, mais je crois (sans certitude) que ça a arrêté de fonctionner en 6.1

Je l'utilisais pour piloter mes backups en SSH depuis la HC2.

 

En 6.1 j'ai arrêté d'utiliser la commande synoschedtask et j'ai utilisé la commande /var/packages/HyperBackup/target/bin/dsmbackup à la place.

 

Et maintenant qu'on est en 4.510 sur la HC2, afin de ne plus avoir à utiliser de SSH, je passe par l'API HTTP.
Comme elle n'est pas documentée, il a fallu que j'utilise les outils de dév F12 du navigateur pour découvrir l'API de backup.

 

Il doit donc aussi exister une API pour les Tasks, il faut que tu étudies cela.

 

Posté(e)

donc, ce serait bien Xpeno la cause.

Pour "étudier" cela, je lance la tâche et avec F12, je vois ce qui passe ? (je n'ai jamais fait ça de ma vie)

 

En fait je dois lancer depuis un php une commande unix en tant que root.

Il y a peut-être un au moyen ?

Posté(e)

Oui, c'est ça, avec F12 tu regardes l'onglet Réseau pendant que tu cliques sur la tâche pour la lancer.

 

Il fait quoi ce script ?

Posté(e)

avec le script que j'ai développé avec @sebcbien pour SS, il peut m'envoyer en attachement un mail avec des photos d'une caméra.

Mais il y a des soucis avec le mail, et j'ai trouvé cette commande qui permet de solutionner le problème : mais encore .. c'est bof bof :

quand je la lance manuellement, et qu'ensuite je demande qu'il m'envoie la photo par mail, le mail part.

Par contre quand je plannifie cette commande toutes les minutes (et oui) parfois ça fonctionne, parfois pas. Va-t-en savoir pourquoi .

Alors je me disqiat que dans mon php, je pourrais lancer manuellement la tâche juste avant d'envoyer la photo.

J'zi déjà essayé en mettant la commande directement dans le php, ça ne fonctionne pas.

voici la commande :

chmod +r /usr/syno/etc/synosmtp.conf

ça me prend la tête depuis des mois. Je ne veux pas abandonner, mais je crain que je vais y être contraint

Posté(e)

et dans l'onglet Réseau j'ai 7 tab

Si je vais dans le 1°, je trouve qqch dont le nom correspond au nom du job que je lance (connectionn=keep-alive), mais j'ai au moins 50 lignes, et je ne sais pas quoi chercher :20:

Posté(e)

Je ne suis pas certain de bien comprendre ce que tu fais...

 

Dans l'onglet réseau, faut que tu cherches le type de requête (GET, etc), l'URL, et les éventuels paramètres.

 

Par exemple, voici ce que j'ai obtenu pour lancer un backup :

GET http://1.2.3.4:5000/webapi/entry.cgi?api=SYNO.Backup.Task&method=backup&task_id=4&version=1&_sid=jhfpisflkdsjclsdjflsj

Tu remarqueras le SID quand tu attaques l'API HTTP manuellement, comme tu utilises déjà pour Surv Station

  • Upvote 1
Posté(e)

voilà, je crois que j'ai trouvé la commande POST, mais il me faudrait de l'aide pour générer l'URL

3vkx.jpg

y2r4.jpg

 

Posté(e)

Donc c'est du POST, et il faut passer tout ce qui est dans "données du formulaire" dans les datas de la requête, et non pas dans l'URL.
C'est donc différent de l'API pour les backups

  • Like 1
Posté(e)

comme je suis têtu, j'ai quand même essayé ceci

http://192.168.x.x:5000/webapi/entry.cgi?api=SYNO.Core.TaskScheduler&method=run&version=1&task=[24]&_sid=xxxxx

et il m'a retourné une belle erreur 105

Posté(e)
Il y a 2 heures, Lazer a dit :

Je ne suis pas certain de bien comprendre ce que tu fais...

J'imagine bien que je n'ai pas été très clair.

Je vais essayer de reformuler mon besoins plus clzirement.

 

Avec ceci,

j'ai développé une partie du code php pour qu'il puisse envoyer un mail avec en PJ la photo d'une caméra.

Le mail ne part (plus) systématiquement (il y a queleques mois, c'était ok).

J'ai trouvé ce bout de code unix qui permetterait de régler ce problème, lié à l'envoit de mails en php

chmod +r /usr/syno/etc/synosmtp.conf

en mettant cela dans une tâche planifiée du Syno, ET si j'active l'option de m'envoyer un mail à chaque fois ET si la tâche tourne toutes les minutes, alors mon php envoie correctement le mail.

Sinon, nada !

Le problème c'est qu'il envoie 24*60 = 1440 mails par jours, et Google n'aime pas ça, il trouve que c'est trop ...

 

Donc mon idée était de n'exécuter le script (sous root) que quand il faut envoyer un mail.

D'où mon souhait de faire exécuter la tâche existante dans le syno.

Car j'ai déjà essayé de mettre directement l'instruction dans le php, mais ça ne va pas, car le php n'est pas exécuté sous root.

Et comme quand le lance manuellement la tâche, avant d'envoyer le mail, ça fonctionne....

 

Ai-je été plus clair dans mon explication ?

Posté(e)

oui, c'est sûr que ma solution n'est pas fiable comme elle le devrait.

@sebcbien me l'avait déjà dit off.

Et j'ai regardé les paquets syno pour ça, ça a l'air compliqué, il fat faire des config dans tous les sens, installer un DNS serveur, .... ce n'est pas clic, clic, clic.

et si je ne comprends pas ce que je fais, je n'aime pas ...

Alors avec mon blicolage à toutes les 10 min, ça semble tenir, mais pas 15 min ...

Posté(e)

oui, mais c'est encore rajouter une couche de virtualisation en plus : j'ai déjà Esxi, Xpeno, DSM, puis Docker.

et  s'il le faut je préfère apprendre DNS serveur que Docker

Posté(e)

J'allais le dire, tu n'as pas un linux qui tourne déjà pour autre chose ? 

Tu le configuré en relais, pas en serveur complet et je ne suis pas sûr que tu aie besoin d'un DNS... Ceci dit, les serveurs mail c'est pas mon fort

Posté(e)

Oui, serveur mail c'est un abus de langage de ma part, il faut juste un relai SMTP.

Pas besoin de serveur DNS non plus.

Y'a pas mal de tutos pour faire un relai à email tout simple.

 

Par contre je me demande comment le script PHP sera capable de faire appel au serveur SMTP externe (c'est à dire en dehors du Syno)

Posté(e)

mais aolors je metterait également un serveur WEB sur cette machine linux qui hébergerait mon php, et alors, le script et le smtp sont ensebles

  • Like 1
Posté(e)
il y a 22 minutes, Lazer a dit :

Par contre je me demande comment le script PHP sera capable de faire appel au serveur SMTP externe (c'est à dire en dehors du Syno)

Effectivement... Et même " inside" je ne sais pas si ça se configure...

Et direct dans le linux du xpenology ?

Posté(e)

et je viens de regarder, y'a quelques packages mail disponible dans le syno mail, mail server, mail plus, mail station...

×
×
  • Créer...