Page 1 sur 3

Script de mise à jour automatique des projets

Posté : 05 décembre 2009, 20:19
par otax
:hello:

A l'instar de ce qui a été fait pour Windows (voir ici : http://forum.boinc-af.org/index.php/top ... #msg211076 ), on cherche un développeur Linuxien qui puisse nous faire un script qui force la mise à jour d'un projet dans l'espoir de récupérer des UT quand il y en a très peu de disponibles.
C'est maintenant très utile dans le sprint final du FB pour pouvoir récupérer du travail sur les projets naissants !

Merci à nos têtes pensantes  :jap:  :thomas:

Re : Script de mise à jour automatique des projets

Posté : 05 décembre 2009, 21:42
par Guepi
Bon j'ai un début de script...
Le hic que j'avais, c'est les retour à la ligne de Windows...

Les deux fichiers du zip sont à mettre dans le dossier boinc (là où il y a le fichier boinccmd)
message fusionné: [time]1260046573[/time]
Ayé, le script comme à la windows.  :tropfort:

la ligne "s.leep 30;" c'est pour demander une actualisation toutes les 30 secondes.

et pour arrêter le script, ben avec un classique Ctrl + C
:tuxwin:

[Fichier joint supprimé par l'administrateur]

Re : Script de mise à jour automatique des projets

Posté : 05 décembre 2009, 22:08
par jip
oups on a dupliqué là : http://forum.boinc-af.org/index.php/top ... #msg211143  :grin: :ptdr: :ptdr: :ptdr:

Assez similaire en fait.  :wink:

Re : Script de mise à jour automatique des projets

Posté : 05 décembre 2009, 22:12
par Guepi
J'ai vu ouais ...
Mais le tiens est plus "propre"  :cool:

Re : Script de mise à jour automatique des projets

Posté : 05 décembre 2009, 22:13
par jip
ça change de ce que je fais en java, c'est ça ??  :ptdr: :ptdr: :ptdr: :ptdr: :ptdr:

Re : Script de mise à jour automatique des projets

Posté : 05 décembre 2009, 22:50
par otax
Bravo les 2 !!!  :tuxwin:

Guépi était quand même Prems à 20 minutes près  :grin:

:jap: :jap: (Un chacun :  pas de jaloux !!  :ptdr:  )

Re : Script de mise à jour automatique des projets

Posté : 16 janvier 2010, 01:11
par nico8313
Merci !  :jap:

Qu'est-ce que je ferais sans vous !  :applaudis:

Re : Script de mise à jour automatique des projets

Posté : 07 octobre 2010, 17:55
par miskic
bonjour.
j'ai teléchargé le scrîpt  "boinc_force_update_v3.tar.gz "
lorsque je fais cette commande

Code : Tout sélectionner

phyt@norion:~$ sudo /home/phyt/BOINC/boinc_force_update.sh
chemin de boinccmd :, /usr/bin/boinccmd , durée entre update :  30
==========
jeudi 7 octobre 2010, 17:09:55 (UTC+0200)
----------
Update project
----------
cat: boinc_liste_url.txt: Aucun fichier ou dossier de ce type
----------
Done

apparemment il cherche le fichier texte des urls...
j'ai essayé de les coller dans usr/bin mais il ne le trouve pas non plus...
je sèche un peu.  :penseur: :penseur: :penseur:

j'aimerais m'en servir pour charger des unités de lhc@home. il me suffira de rajouter dans le fichier texte l'adresse master du projet? http://lhcathome.cern.ch/lhcathome/

et comment s'y prendre pour arreter le script si on le souhaite ?

Re : Script de mise à jour automatique des projets

Posté : 07 octobre 2010, 18:51
par jip
normalement ce fichier texte est livré avec le script là où tu as décompréssé l'archive.

et il faut le laisser dans le même dossier que le script (donc si tu déplace, déplace les 2).

par contre il faut mettre les url des projets que tu souhaite forcer dedans.

une url par ligne.


edit :
d'ailleurs c'est indiqué là http://forum.boinc-af.org/index.php/top ... #msg211076,

je cite :
J'ai aussi rajouté un boucle sur des url placées dans un fichier texte  nommé : "boinc_liste_url.txt", qui doit être dans le même dossier que le  fichier batch.
Ainsi, pour forcer la mise à jour de boinc sur un  projet supplémentaire, il suffit de rajouter une ligne avec l'url  principale du projet dans le fichier : "boinc_liste_url.txt".
et c'est vrai pour le batch w$ comme pour les 2 autres script ....  :wink:

Re : Script de mise à jour automatique des projets

Posté : 07 octobre 2010, 19:27
par miskic
j'ai bien laissé le fichier texte avec....
Misère, je sais bien que le probleme se trouve entre le siege et le clavier... mais quand même... :murbric:

Re : Script de mise à jour automatique des projets

Posté : 07 octobre 2010, 20:18
par jip
va donc falloir donner plus de détails : comment t'as fait, où tu as mis, le contenu du fichier texte, etc ....

Re : Script de mise à jour automatique des projets

Posté : 08 octobre 2010, 17:12
par nico8313
miskic  :hello:

Tu as réussi à installer le script ???

Re : Script de mise à jour automatique des projets

Posté : 08 octobre 2010, 17:15
par miskic
nope j'etais justement en train de rediger une reponse.

donc j'ai les trois dossiers dans:
home/phyt/BOINC/

et dans:
/usr/bin

Re : Script de mise à jour automatique des projets

Posté : 08 octobre 2010, 17:40
par jip
3 dossiers ??????????? mais quels 3 dossiers ???

normalement le système de màj forcé, c'est juste un script .sh et un fichier texte ... et les 2 doivent juste être dans le même emplacement ...

et dans /usr/bin t'a mis quoi en fait ??

deplus comment le script .sh est-il lancé ? par toi, en manuel sur ton compte user avec tes droits ? en démarrage automatique à l'ouverture de session (donc sur ton compte user avec tes droits aussi) ? autre méthode ? si oui, laquelle ?

en principe c'est super simple.
tu prend l'archive compressée.
tu la décompresse quelque part où tu as les droits.
tu édite le fichier texte pour mettre les url des projets que tu veux forcer.
tu vérifie ou édite les variables de chemin pour boinc dans le fichier .sh.
tu vérifie sit le .sh est bien autorisé à être exécuté (clic droit -> propriétés -> permissions).
tu exécute le fichier .sh (soit en manuel, soit tu le fais lancer par les applications au démarrage sur ta session).

rien de plus. aucune raison d'avoir plusieurs dossiers. aucune raison de l'avoir à plusieurs endroits. aucunes raison de séparer le .sh et le .txt.

donc là du coup je vois pas trop ce que tu as fait et pourquoi .... ??? :penseur:

Re : Script de mise à jour automatique des projets

Posté : 08 octobre 2010, 18:02
par miskic
oops les  3 fichiers je voulais dire...te fâche pas.

là c'est le copier coller des 3 fichiers que je vois:
file:///usr/bin/boinc_force_update.sh
file:///usr/bin/boinc_force_update.sh~ (je ne sais pas ce qu'est ce troisieme fichier et peut etre que je n'aurais pas du le copier ?)
file:///usr/bin/boinc_liste_url.txt

je regarde pour verifier les autres points de ton poste...
je n'ai pas touché au chemain du sh je crois que mes fichiers sont dans le bon emplacement.
voila la copie du .sh
#!/bin/sh
#
# script pour forcer la mise à jour de boinc
#
BOINC_BIN_CMD='/usr/bin/boinccmd'
SLEEP_TIME_SCRIPT_SEC=30
echo 'chemin de boinccmd :', $BOINC_BIN_CMD ', durée entre update : ' $SLEEP_TIME_SCRIPT_SEC
while true
    do
        echo ==========
        date
        echo ----------
        echo Update project
        echo ----------
        cat 'boinc_liste_url.txt' | while read line
            do
                ${BOINC_BIN_CMD} '--project' ${line} 'update'
                echo ${line}
            done
        echo ----------
        echo Done
        echo ==========
        sleep $SLEEP_TIME_SCRIPT_SEC
    done
il est bien executable.
bon j'ai modifié le fichier texte. il est dans le meme endroit que le sh (CF le copier coller plus haut.)
et je fais la commande dans Konsole:

Code : Tout sélectionner

sudo /usr/bin/boinc_force_update.sh
je relance la machine et le message est:
vendredi 8 octobre 2010, 18:30:39 (UTC+0200)                                                                                     
----------                                                                                                                       
Update project                                                                                                                   
----------                                                                                                                       
cat: boinc_liste_url.txt: Aucun fichier ou dossier de ce type                                                                     
----------                                                                                                                       
Done