Installation d'un cron avec SSH

Fermé
cifedhop - 9 févr. 2009 à 23:03
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 - 14 févr. 2009 à 12:15
Bonjour,

J'avais réussi à installer un cron partir de Terminal après y avoir passé deux jours en suivant la procédure indiquée à la page https://docs.moodle.org/3x/fr/Cron
Voici la commande que j'avais entrée
*/10 * * * * wget -q -O /root/moodle/cron.log http://www.monsite/admin/cron.php?password=monmotdepasse

J'ai malheureusement voulu modifier le script pour écourter la fréquence des sauvegardes, et depuis, quand je tape « crontab -i » pour vérifier voici ce que j'obtiens :
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] { -e | -l | -r }
J'ai bien sûr essayé de recommencer la procédure depuis le début, mais le problème demeure.

À ce stade, je me demande s'il n'y aurait pas un moyen de réinitialiser Terminal ou le shell, parce que même après avoir suprimé la ligne de commande à l'aide crontab -e, j'ai toujours le même message d'erreur.
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] { -e | -l | -r }

En tant que néophite je demande votre indulgence face à mon ignorance, mais surtout des conseils pour trouver une solution.

Merci d'avance si vous pouvez m'aider.
A voir également:

19 réponses

TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
9 févr. 2009 à 23:23
Bonjour,

Pourquoi -i ? C'est une option qui n'existe pas ! -l (l comme Laure) peut être ?

Personnelement, je trouve le -e pas pratique.
Je te conseil d'éditer un fichier texte genre crontab.txt
puis d'executer crontab crontab.txt

crontab -l pour vérifier.

---

plus d'aide avec
man 1 crontab
man 8 crontab
0
Merci de ta réponse.
Si je comprends bien, je dois coller la commande */10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=utopie dans un ficher texte que je nomme crontab.
Mais après ? Je suis novice et je ne sais pas comment procéder pour executer crontab crontab.txt
Peux-tu m'aider ?
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12 > cifedhop
10 févr. 2009 à 00:04
pour éviter la confusion, nomme le crontab.txt

oui tu copie la ligne

*/10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=pass
dans ce fichier
et tu execute
crontab crontab.txt
en ligne de commande dans le repertoire où est le fichier.

ps :
enleve ton mot de passe du message ça sera plus sur !
0
cifedhop > TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009
10 févr. 2009 à 00:22
Merci,
Je viens d'essayer, voici ce qui apparait
"/Users/monnom/Desktop/crontab.txt":0: bad minute
crontab: errors in crontab file, can't install
Sais-tu à quoi ça correspond ?
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
10 févr. 2009 à 00:38
avec quoi tu édites ton fichier texte ?

sur le mac d'un ami je n'ai pas d'erreur :

00:33:50 ami@imac-g5 ~
cat >crontab.txt
*/10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=pass
Ctrl-D pour quitter la création via cat
00:34:03 ami@imac-g5 ~
crontab crontab.txt
00:34:07 ami@imac-g5 ~
crontab -l
*/10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=pass
0
J'ai utilisé Textdit

J'ai recommencé en écrivant cat puis en glissant mon fichier crontab.txt (pour le chemin vers le fichier) puis j'ai quitté. Voilà ce qui s'affiche
cat /Users/monnom/Desktop/crontab.txt
{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf430
{\fonttbl\f0\fnil\fcharset0 Cambria;}
{\colortbl;\red255\green255\blue255;}
\margl1440\margr1440\vieww9000\viewh8400\viewkind0
\deftab720
\pard\pardeftab720\ri-46\sl320\sa160

\f0\fs22 \cf0 */10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=monmotdepasse}veronique:~ monnom$ logout

J'ai pensé que mon problème était réglé, mais en vérifiant avec crontab -i, j'obtiens
-bash: controltab: command not found

As-tu encore la patience de m'aider ?
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12 > cifedhop
10 févr. 2009 à 09:38
ton fichier crontab.txt est enregistré au format rtf -> pas bon.

fait dans le terminal :
rm /Users/monnom/Desktop/crontab.txt (effacement du fichier)
touch /Users/monnom/Desktop/crontab.txt (création fichier vide)

sur ton bureau ouvre le document crontab.txt,
normalement textEdit se lance
colle ta ligne */10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=monmotdep­asse
fait enregistrer sous, normalement tu doit pouvoir enregistrer au format occidental qqchose

il faut absolument que la commande cat crontab.txt t'affiche que:
*/10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=monmotdep­asse
0
Bonjour,

J'ai un souci avec l'extension txt.

Une fois que j'ai tapé rm /Users/monnom/Desktop/crontab.txt (Là j'ai validé en tapant enter), puis
touch /Users/monnom/Desktop/crontab.txt.
J'ai ensuite ouvert le fichier crontab.txt qui était effectivement vide et y ai collé la ligne */10 * * * * wget -q -O /root/moodle/cron.log http://www.portail-eip.org/admin/cron.php?password=monmotdep–asse
Le problème c'est que je n'ai pas la possibilité de l'enregistrer au format occidental, ni même en format txt. J'ai d'autre options mais pas celles-ci.

J'ai donc recommencé avec un fichier que j'ai cette fois créé avec Word. Je l'ai enregistré en format txt et ai coché occidental (Mac Os Roman). J'ai ensuite demandé à l'ouvrir avec TextEdit. Quand j'ai enregistré sous, l'option occidental que je n'avais pas est apparue, mais quand j'ai tapé cat crontab.txt, rien n'est apparu sinon mon nom.

J'ai donc recommencé l'opération pour la troisième fois, mais cette fois-ci, quand j'ai tapé rm /Users/monnom/Desktop/crontab.txt, cela a eu pour effet de mettre le fichier crontab.txt à la poubelle ! J'ai donc recréé un dossier crontab.txt comme précédemment avec Word, mais l'option occidental n'était plus là quand j'ai voulu enregistrer sous...

Quelle autre application puis-je utiliser pour faire cette manip ?

Encore merci pour ton aide !
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
10 févr. 2009 à 23:37
au faite, quand tu tapes wget dans le terminal ça dit quoi ?
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
10 févr. 2009 à 23:14
Bonjour Véronique,

observation préliminaires :
1) je ne sais pas où tu as trouvé /root/moodle/cron.log mais je pense que pour ton mac ça devrait être /dev/null comme indiqué sur https://docs.moodle.org/3x/fr/Cron
2) la page http://www.portail-eip.org/admin/cron.php n'existe pas, après enquète et essais
c'est http://www.portail-eip.org/moodle/admin/cron.php?password=tonmotdepasse


on va faire le crontab.txt via le terminal.

copie colle les deux lignes ci-dessous dans un terminal
cat >crontab.txt
*/10 * * * * wget -q -O /dev/null http://www.portail-eip.org/moodle/admin/cron.php?password=monmotdep­asse

fait Ctrl-D en début de 3éme ligne, pour terminer la commande cat

puis fait
crontab crontab.txt


voila.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Quand je tape wget à l'ouverture de Terminal voici ce que j'obtiens.
-bash: wget: command not found
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
10 févr. 2009 à 23:57
pas bon,
la commande que tu essaie de faire en automatique via cron n'est pas installé !

il te faut installer en suivant les instructions de :
1) http://www.darwinports.com/ , clique sur download et suis la procédure
2) http://www.darwinports.com/ , execute dans un terminal les commandes indiqués

puis test en executant dans le terminal:
wget
tu doit avoir en réponse :
wget: missing URL
Usage: wget [OPTION]... [URL]...
0
cifedhop > TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009
11 févr. 2009 à 03:10
Finalement j'ai réussi à installer DarwinPorts 1.7 téléchargé à partir d'un autre site : https://www.macupdate.com/app/mac/21309/macports

Par contre après ça se complique. Je suis allée sur le site http://www.darwinports.com/ pour trouver les commandes à exécuter dans Terminal, mais je dois faire quelque chose de travers. Voici ce que j'obtiens:
veronique:~ monnom$ % cd /opt/local/bin/portslocation/dports/wget
-bash: fg: %: no such job
veronique:~ monnom$ % sudo port install wget
-bash: fg: %: no such job
veronique:~ monnom$ Password: monmotdepasse
-bash: Password:: command not found
veronique:~ monnom$

Ça te dit quelque chose ?
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12 > cifedhop
12 févr. 2009 à 09:06
enleve le %
le % dans la doc symbolise le prompt
c'est l'équivalent de ton prompt dans la ligne de commande : veronique:~ monnom$

chez toi , l'enchainement des commandes doit ressembler à :

veronique:~ monnom$ cd /opt/local/bin/portslocation/dports/wget
veronique:/opt/local/bin/portslocation/dports/wget $ sudo port install wget
Password : saisie ton mot de passe Mac à l'aveugle
veronique:/opt/local/bin/portslocation/dports/wget$
wget
wget: missing URL
Usage: wget [OPTION]... [URL]...

Try `wget --help' for more options.


avec
- en italique ce que le Mac t'affiche
- en gras ce que tu saisie au clavier
- en gras souligné ton mot de passe Mac

explication :
1) cd : change directory
2) sudo : set user and do, change d'utilisateur (le superutilisateur par défaut) et execute
3) port : commande principale du package darwinports, pour récupérer des fonctionnalités unix|BSD supplémentaire
4) wget : utilitaire en ligne de commande pour executer des requètes HTTP
0
Merci mille fois de ta patience ; je suis impressionnée.

J'ai fait les opérations suivantes mais je ne sais pas si ça va fonctionner. Je te dirai ça dans 10 mn, car j'ai envoyé un message sur l'un des forums pour vérifier.

J’ai fait cat >crontab.txt , j’ai validé en tapant sur enter
Puis j’ai collé */10 * * * * wget -q -O /dev/null http://www.portail-eip.org/moodle/admin/cron.php?password=monmotdepasse
Je suis passée à la ligne suivante en tapant enter
J’ai fait Ctrl-D puis j’ai validé en tapant sur enter
J’ai fait crontab crontab.txt puis j’ai validé en tapant sur enter
Voilà ce que j’ai obtenu

Last login: Tue Feb 10 17:29:25 on ttys002
You have new mail.
veronique:~ monnom$ cat >crontab.txt
*/10 * * * * wget -q -O /dev/null http://www.portail-eip.org/moodle/admin/cron.php?password=monmotdepasse
veronique:~ monnom$ crontab crontab.txt
veronique:~ monnom$

Pour vérifier si la commande était bien entrés j’ai fait controltab –e et voici ce que j’obtiens.
*/10 * * * * wget -q -O /dev/null http://www.portail-eip.org/moodle/admin/cron.php?password=monmotdepasse
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
12 févr. 2009 à 09:26
c'est très bien, reste à avoir un wget fonctionnel

petite remarque :
crontab -e lance un editeur de texte en ligne de commande, en général vi assez déroutant pour le 'novice',
pour sortir de l'édition via vi tappe Echap:q!Enter

fait plutot crontab -l pour voir la configuration du cron
0
Ça va mal, je viens de télécharger run postflight scipt et l'installation a échoué... Je ne peux malheureusement pas joindre de fichier (capture) pour te montrer.
0
Bonjour, Tla

Je viens d'essayer ce que tu suggères. J'ai ouvert une nouvelle fenêtre Terminal et j'ai tapé
cd/opt/local/bin/portslocation/dports/wget
voici ce que j'obtiens
veronique:~ monnom$ cd/opt/local/bin/portslocation/dports/wget
-bash: cd/opt/local/bin/portslocation/dports/wget: No such file or directory

Impossible d'aller plus loin !

Désolée de t'ennuyer encore.
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
12 févr. 2009 à 22:47
il faut un espace après cd !
cd /opt/local/bin/portslocation/dports/wget
0
La première fois je l'avais mis, puis je l'ai enlevé pensant que c'était ce qui permettait de supprimer le %.

Mais je viens d'essayer de nouveau avec l'espace et la réponse est la même
veronique:~ monnom cd /opt/local/bin/portslocation/dports/wget
-bash: cd: /opt/local/bin/portslocation/dports/wget: No such file or directory
veronique:~ monnom$
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 13:27
Bon, ce chemin vers la solution m'apparait compliqué.

que dit le terminal à la commande suivante ?
which tclsh
0
/usr/bin/tclsh
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 16:52
Bien,

enregistre le ficher, pointé par le lien ci-dessous, sur ton Bureau
http://www.larmoire.info/cifedhop/moodleCron.tcl

dans le terminal tape
tclsh ~/Desktop/moodleCron.tcl tonmotdepassemoodle

que donne l'execution de cette commande ?
0
veronique:~ monnom$ tclsh ~/Desktop/moodleCron.tcl monmotdepasse
http
www.portail-eip.org
80
/moodle/admin/cron.php?password=monmotdepasse
HTTP/1.1 200 OK
Date: Fri, 13 Feb 2009 16:40:38 GMT
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch13 mod_ssl/2.2.3 OpenSSL/0.9.8c JRun/4.0 mod_perl/2.0.2 Perl/v5.8.8
X-Powered-By: PHP/5.2.0-8+etch13
Connection: close
Content-Type: text/plain; charset=utf-8
Content-Language: fr
0
Bonjour,

J'étais tellement contente de voir que le cron était complété correctement que j'ai envoyé le courriel pour que tu vois que tu avais réussi, sans même te dire à quel point tu as été exemplaire pour m'accompagner dans cet exercice tout nouveau pour moi. Merci, merci, merci pour temps que tu as pris à régler mon problème

Petite question : est ce que lorsque je quitte terminal les tâches sont suspendues ?

Véronique
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 18:18
c'est pas tout à fait fini !

le script que tu a récupéré, est l'équivalent d'un wget
il reste à lancer tous ça par le cron

1) on déplace le script du Bureau dans ton repertoire utilisateur

veronique:~ monnom$ mv ~/Desktop/moodleCron.tcl ~/moodleCron.tcl

2) fabrication du fichier pour le crontab
attention change monnom et monMotDePasseMoodle

veronique:~ monnom$ cat >crontab.txt
*/10 * * * * /usr/bin/tclsh /Users/monnom/moodleCron.tcl monMotDePasseMoodle
Ctrl-D

4) application du fichier

veronique:~ monnom$ crontab crontab.txt

5) vérification

veronique:~ monnom$ crontab -l
*/10 * * * * /usr/bin/tclsh /Users/monnom/moodleCron.tcl monMotDePasseMoodle

et là tu peux fermer le terminal

quand ton Mac sera sous tension, toutes les 10 minutes, le script sera executé
0
cifedhop > TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009
13 févr. 2009 à 18:32
Jétais entrain de te répondre et ai fait une fausse manœuvre.

Je te disais donc que ça n'a pas fonctionné et je l'avais obtenu
veronique:~ monnom$ mv ~/Desktop/moodleCron.tcl ~/moodleCron.tcl
mv: /Users/monnom/Desktop/moodleCron.tcl: No such file or directory
veronique:~ monnom$
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 18:19
Je n'ai pas reçu ton courriel ...
0
Je viens de faire ce que tu m'as indiqué, mais ça n'a pas fonctionné...
J'ai voulu recommencer et là voilà ce que j'obtiens
veronique:~ monnom$ mv ~/Desktop/moodleCron.tcl ~/moodleCron.tcl
mv: /Users/veroniquetruchot/Desktop/moodleCron.tcl: No such file or directory
veronique:~ monnom$
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 18:43
cette commande ne fonctionne qu'une fois,

teste si elle c'est bien passé avec :

veronique:~ monnom$ ls -al ~/moodleCron.tcl

normallement s'affiche des infos sur le fichier (taille, droits ...)

si tu as ces infos fait les étapes 2,3,4,5

sinon, décrit moi les messages
0
Voilà ce que j'ai. Puisje continuer les étapes ?

Last login: Fri Feb 13 12:25:47 on ttys000
You have new mail.
veronique:~ monnom$ mv ~/Desktop/moodleCron.tcl ~/moodleCron.tcl
mv: /Users/monnom/Desktop/moodleCron.tcl: No such file or directory
veronique:~ monnom$ ls -al ~/moodleCron.tcl
-rw-r--r-- 1 monnom monnom 753 13 fév 11:36 /Users/monnom/moodleCron.tcl
You have new mail in /var/mail/monnom
veronique:~ monnom$
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 19:11
oui fait les étapes 2,3,4,5
0
Après la deuxième étape, voici ce qui est indiqué

veronique:~ monnom$ cat >crontab.txt */10 * * * * /usr/bin/tclsh /Users/monnom/moodleCron.tcl motdepasse
cat: */10: No such file or directory
cat: Desktop: Is a directory
cat: Documents: Is a directory
cat: Downloads: Is a directory
cat: Library: Is a directory
cat: Magazines: Is a directory
cat: Movies: Is a directory
cat: Music: Is a directory
cat: Pictures: Is a directory
cat: Public: Is a directory
cat: Sites: Is a directory
cat: SparkAngels: Is a directory

Je n'ose pas continuer comme tu m'as dit que certaines opérations ne pouvaient être faites qu'une fois.
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 19:36
faut pas oublier d'appuier sur enter en fin de ligne,
change bien monnom et motdepasse

veronique:~ monnom$ cat >crontab.txtEnter
*/10 * * * * /usr/bin/tclsh /Users/monnom/moodleCron.tcl motdepasseEnter
Ctrl-D
veronique:~ monnom$
0
veronique:~ monnom$ cat >crontab.txt
*/10 * * * * /usr/bin/tclsh /Users/monnom/moodleCron.tcl motdepasse
veronique:~ monnom$ logout

[Opération terminée]


veronique:~ monnom$ crontab crontab.txt
veronique:~ monnom$ crontab -i
crontab: illegal option -- i
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] { -e | -l | -r }
veronique:~ monnom$

C'est un peu décourageant...





C'est décourageant...
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12
13 févr. 2009 à 19:46
c'est le même séquencement que ta réponse 12 (cifedhop, le mardi 10 février 2009 à 23:49:42)
0
cifedhop > TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009
13 févr. 2009 à 20:33
Ça marche pour de bon !!! Je ne sais comment te remercier. Tu es non seulement très bon en programmation mais en plus tu es pédagogue et d'une patience d'ange.

En retour, si tu as besoin d'un coup de main pour réviser un texte, ça fait partie de mes compétences.

Mille fois merci !
0
TLa Messages postés 57 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 14 février 2009 12 > cifedhop
14 févr. 2009 à 12:15
>En retour, si tu as besoin d'un coup de main pour réviser un texte, ça fait partie de mes compétences.
Je le note ...

Bonne continuation dans l'animation de tes sites.

ps: tu doit pouvoir cloturer ce fil de message, pour le passer en resolu.
0
On dirait que ça fonctionne ! Je viens de recevoir un message que j'avais posté sur un forum sans appeler lel cron manuellement. Je vais un deuxième essai d'envoi de message pour être sûre t te confirme.
0