Auteur Sujet: [Linux] Script pour suspendre / reprendre les UT  (Lu 8683 fois)

0 Membres et 1 Invité sur ce sujet

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #100 le: 11 juin 2017 à 12:10 »
Bonjour,
J'utilise la dernière version des scripts en développement.
1) Sur mon portable: ./suspend_calc_dev http://setiathome.berkeley.edu/ lance bien le script :
Pas de préférences trouvées : limite mise à 60
En cours de surveillance... limite temps restant = 60
[110617 11:52:31] Suspension de : 27fe08ac.15958.13160.14.41.232_1 [temps restant = 56s]
...

./resume_calc_dev http://setiathome.berkeley.edu/ '06/11/2017 12:00' reprend bien les UT suspendues :
http://setiathome.berkeley.edu/
06/11/2017 12:00
OK
dimanche 11 juin 2017, 11:58:28 (UTC+0200) => Attente de : 92 secondes
Reprise des calculs...
[110617 11:52:31] Suspension de : 27fe08ac.15958.13160.14.41.232_1 [temps restant = 56s]
....
Fin script

=> MAIS les UT sont immédiatement suspendues à nouveau car en le script suspend_calc_dev n'est pas tué... Par contre la commande : ./resume_calc_dev fonctionne puisqu'elle renvoie : [/b]
== Script suspend_calc détecté ==
11444 pts/0    S+     0:09 /bin/bash ./suspend_calc_dev http://setiathome.berkeley.edu/
Entrer le nombre correspondant pour tuer le processus à l'heure définie : (taper ENTREE pour ne rien tuer et continuer)

Remarque : Dans le journal des événements, apparaît souvent en continu : "dim. 11 juin 2017 10:54:23 CEST | SETI@home | task postponed 30.000000 sec:"


2) Sur la machine distante, c'est le même problème : ./resume_calc_dev http://setiathome.berkeley.edu/ '06/11/2017 10:30' renvoie bien les deux valeurs des arguments , mais avoir le choix du projet donc sans taper "0"
http://setiathome.berkeley.edu/
06/11/2017 10:30
OK
dimanche 11 juin 2017, 10:24:43 (UTC+0200) => Attente de : 317 secondes
puis à l'heure choisie, affichage de la liste des UT indiquées comme "Reprise" :
[110617 10:30:03] Reprise de : xxxxxxxxxxxxxxxxxxxxxxxxx
Fin script

Mais là aussi les UT, qui après avoir été reprises, sont immédiatement suspendues puisque le script suspend_calc_dev n'est pas tué... Là aussi la commande :
./resume_calc_devfonctionne parfaitement.
« Modifié: 11 juin 2017 à 12:27 par Scrat65 »
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #101 le: 11 juin 2017 à 12:28 »
En effet j'ai oublié ce point, par contre, là ça veut dire qu'il faut qu'il tue en automatique :desole:
Bon on va mettre un troisième argument pour entrer manuellement le PID de ce qu'on veut tuer :)
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #102 le: 11 juin 2017 à 12:42 »
OK ; j'attends donc la mise à jour sur github.  :jap:
Bon appétit !
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #103 le: 11 juin 2017 à 12:52 »
Merci toi aussi.
-> Github à jour, tu peux tester.

P.S. : il n'y a normalement pas d'ordre pour les arguments, j'ai fait en sorte qu'il les identifie correctement
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #104 le: 11 juin 2017 à 13:43 »
./suspend_calc_dev http://setiathome.berkeley.edu/
Pas de préférences trouvées : limite mise à 60
En cours de surveillance... limite temps restant = 60
[110617 13:34:41] Suspension de : 03no08aa.627.276063.7.34.162_1 [temps restant = 57s]
[110617 13:34:51] Suspension de : 27fe08ac.15958.13160.14.41.226_1 [temps restant = 56s]

./resume_calc_dev http://setiathome.berkeley.edu/ '06/11/2017 13:39'
http://setiathome.berkeley.edu/
06/11/2017 13:39
OK
-> Pas de PID, on ne tuera pas de suspend_calc !
dimanche 11 juin 2017, 13:38:11 (UTC+0200) => Attente de : 49 secondes
Reprise des calculs...
[110617 13:39:00] Reprise de : 03no08aa.627.276063.7.34.162_1
[110617 13:39:00] Reprise de : 27fe08ac.15958.13160.14.41.226_1
Fin script

=> suspend_calc_dev NON tué...
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #105 le: 11 juin 2017 à 15:57 »
Met en troisième argument le PID qui correspond à tuer  :hap:
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #106 le: 11 juin 2017 à 16:48 »
1) Sur mon portable cela fonctionne  :hap: avec :
./resume_calc_dev http://setiathome.berkeley.edu/ '06/11/2017 16:37' 30851
date: date incorrecte «30851»
http://setiathome.berkeley.edu/
06/11/2017 16:37
30851
OK
dimanche 11 juin 2017, 16:36:02 (UTC+0200) => Attente de : 58 secondes
On tue le suspend_calc demandé
Reprise des calculs...
[110617 16:37:03] Reprise de : 03no08aa.627.274836.7.34.176.vlar_0
.....
»

2) En local sur la machine distante, cela ne fonctionne pas  :??: : malgré l'ajout du PID du suspend_calc_dev, ce script n'est pas tué par le ./resume_calc_dev : les UT sont reprises puis immédiatement suspendues à nouveau...

N'y a-t-il pas moyen d'aller chercher automatiquement le PID du script suspend_calc_dev ?  :jap:
« Modifié: 11 juin 2017 à 19:55 par Scrat65 »
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #107 le: 17 juin 2017 à 18:23 »
Bonjour,

J'ai mis de l'ordre entre les version master et dev des scripts que j'utilisais et le les ai classés dans des répertoires séparés. En utilisant la branche dev, j'obtiens :
1) en local sur ma machine distante, la suspension et la reprise des UT fonctionnent  :hap: :
./suspend_calc http://setiathome.berkeley.edu/./resume_calc http://setiathome.berkeley.edu/ '06/17/2017 17:00' PID_du_suspend_calc
2) à distance depuis mon portable, la suspension des UT fonctionne :
ssh -f login@IP_machine_distante 'sh -c "( (nohup /chemin/vers/suspend_calc http://setiathome.berkeley.edu/ 2>&1 >output.file) )"'mais pas la reprise avec cette commande  :??: :
ssh -f login@IP_machine_distante 'sh -c "( (nohup /chemin/vers/resume_calc http://setiathome.berkeley.edu/ '06/17/2017 17:30' PID_du_suspend_calc  2>&1 >output.file) )"'En effet, le script suspend_calc n'est pas tué. J'ai essayé les deux PID apparaissant dans htop : celui du /bin/bash ..... et celui du sh -c ......

Ça avance donc ...doucement.  :coffeetime:
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #108 le: 18 juin 2017 à 13:59 »
Ah en effet ! Donc il ne reste plus que la reprise à distance, tout le reste fonctionne en local ou distant.
Pas d'infos en sortie du resume dans le output.file ?
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #109 le: 18 juin 2017 à 15:04 »
Bonjour,
En sortie du resume dans output.file : http://setiathome.berkeley.edu/
14:58

OK
-> Pas de PID, on ne tuera pas de suspend_calc !
dimanche 18 juin 2017, 14:57:23 (UTC+0200) => Attente de : 37 secondes
Reprise des calculs...
[180617 14:58:00] Reprise de : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.147_1
Fin script
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@v
[180617 14:58:01] Suspension de : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.147_1 [temps restant = 58s]
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #110 le: 19 juin 2017 à 20:09 »
En effet la troisième ligne blanche n'est pas normale.

Peux-tu me donner :
1/ Un ps -edf | grep suspend en étant sur la machine distante, afin de repérer le PID.
2/ Ta commande resume_calc que tu lances depuis ta machine locale (ce qui m'intéresse est la partie nohup bien sûr)
3/ Le output.file correspondant, une fois le tout "terminé".

Merci.
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #111 le: 19 juin 2017 à 21:54 »
Bonsoir,
ps -edf | grep suspend sur la machine distante renvoie :
login     16540        1    0  juin17 ?       00:00:00 sh -c ( (nohup /chemin/vers/suspend_calc http://setiathome.berkeley.edu/ 2>&1 >output.file) )
login     16541    16540    0  juin17 ?       00:08:38 /bin/bash /chemin/vers/suspend_calc http://setiathome.berkeley.edu/
login     24242    24053    0  21:35 tty1  00:00:00 grep --color=auto suspend

2/Depuis la machine locale (mon portable), je lance toujours le même type de commande :
ssh -f login@IP_machine_distante 'sh -c "( (nohup /chemin/vers/resume_calc http://setiathome.berkeley.edu/ '06/19/2017 21:52' 16540  2>&1 >output.file) )"'
3/ Le output.file correspondant, une fois le tout "terminé" est du même type que celui de mon précédent message ; seuls changent les dates et horaires.
« Modifié: 19 juin 2017 à 22:05 par Scrat65 »
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #112 le: 19 juin 2017 à 22:32 »
En étant connecté sur ta machine distante, peux-tu taper :
arg=16540;if [ "$arg" -gt 1 -a "$arg" -le 32768 ];then echo "Youpi, il est entre 1 et 32768";fi
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

JeromeC

  • CàA
  • Messages: 22735
  • Boinc'eur devant l'éternel
  • *****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #113 le: 20 juin 2017 à 00:35 »
... vous auriez dû faire tout ça en MP parce qu'il est un peu pourri ton topic maintenant :D
Parce que c'était lui, parce que c'était moi.

Scrat65

  • Messages: 320
  • Boinc'eur Confirmé
  • ***
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #114 le: 20 juin 2017 à 11:35 »
Bonjour,
Ça donne :
Youpi, il est entre 1 et 32768
« Nous sommes des nains juchés sur les épaules de géants ; nous voyons plus qu'eux, et plus loin ; non que notre regard soit perçant, ni élevée notre taille, mais nous sommes élevés, exhaussés, par leur stature gigantesque » Bernard de Chartres (XIIe siècle)

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #115 le: 20 juin 2017 à 21:39 »
... vous auriez dû faire tout ça en MP parce qu'il est un peu pourri ton topic maintenant :D
Oui c'est ce que je lui ai dit : il y a même le github pour ça.
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #116 le: 06 août 2017 à 12:06 »
 :kookoo:
Suite aux dernières remarques : petites actualisations du premier post et de mon github :
    -> Branches renommées en 0.1 et 1.0, cette dernière étant suffisamment stable et user-friendly, la 0.1 n'est plus maintenue.
    -> Explications du premier post supprimées. Elles sont indiquées maintenant sur les README de mon github.
    -> Indications de passer par mon github pour débattre des problèmes particuliers au script.

Donc ne doit être postées ici que les demandes de précisions au premier lancement ou à l'utilisation. Toutes demandes d'évolution / bugs = github :jap:.
En vous remerciant :smak:
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow

Maeda

  • Messages: 566
  • Boinc'eur Respectable
  • ****
  •   
Re : [Linux] Script pour suspendre / reprendre les UT
« Réponse #117 le: 08 mai 2018 à 14:24 »
Correction d'un bug (sur les versions récentes de Boinc ?) qui ont changé le nombre de champs des informations des UT ou leur ordre perturbant mon script.

Pour ceux qui utiliseraient le script, retélécharger la version 1.0 et tentez (conservez l'ancien script au cas où).

Nouveauté : version 1.1-alpha qui se base sur la portion effectuée plutôt que le temps restant. Nécessite de modifier son suspend_calc_conf s'il existe déjà, car il faut indiquer un pourcentage sous la forme "0.85" pour 85% et non plus un temps en seconddes.
Dans le doute renommer votre suspend_calc_conf et lancer le script suspend_calc il vous créera un fichier tout propre :).

A tester.
Sous Linux ? => ⚡ Script pour suspendre / reprendre les UT | 【Que faire avant un RAID/Pentathlon ? Passer l'aspirateur dans ses machines !

F@H
-10€ sur Shadow