Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 30/09/2014, à 10:03

ing_tiziouzou2014

[RÉSOLU]Problème de crontab

Bonjour à tous ;

Cette fois-ci ,le  CRON ne lance pas mes scripts php, et pourtant ces derniers  s'exécutent manuellement.j'ai redémarré cron à l'aide de la commande:

sudo restart cron

voici ce qui s'affiche:

cron start/running, process 3209

Je pense que mon cron n'est pas en bon état car quand je tape aussi :

sudo cron

J'obtiens le message :

cron: can't lock /var/run/crond.pid, otherpid may be 3209: Resource temporarily unavailable

Voici aussi mon  fichier crontab:

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#35 10 * * * rm -rf /home/Bureau/suivi

# m h  dom mon dow   command

#59 08 * * * root ls >f1.txt

#19 15 * * * root wget -q http://127.0.0.1/suppression.php

#57 08 * * * root php /var/www/html/script_min_max.php

#20 16 * * * root php /var/www/html/createtable.php

#17 16 * * * root php /var/www/html/cron_08_09_2014.php

22 09 * * * root php /var/html/mon_script.php

Quelqun pourrait me dire d'où vient le problème SVP?
Je vous remercie d'avance

Dernière modification par ing_tiziouzou2014 (Le 01/10/2014, à 08:56)

Hors ligne

#2 Le 30/09/2014, à 10:21

Postmortem

Re : [RÉSOLU]Problème de crontab

Salut,
Lorsque tu lances tes scripts manuellement, peux tu nous montrer les commandes exactes que tu tapes et avec quel user tu les lances ?
Peux tu nous dire aussi comment tu édites ta crontab ("crontab -e", "sudo crontab -e" ou directement dans un fichier) ?


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#3 Le 30/09/2014, à 10:38

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Salut Postmortem, merci pour ta réponse.Non , je ne lance pas mes scripts avec les commandes linux car  je ne sais pas comment!!!??mais plutôt avec le navigateur , c-à-d http://127.0.0.1/mon_script.php.
Quand j'édite ma crontab , j'utilise la commande :

nano  /etc/crontab

.
Le problème est que mon cron fonctionnait le plus normalement du monde avant hier.

Dernière modification par ing_tiziouzou2014 (Le 30/09/2014, à 10:41)

Hors ligne

#4 Le 30/09/2014, à 11:23

jplemoine

Re : [RÉSOLU]Problème de crontab

ing_tiziouzou2014 a écrit :

Je pense que mon cron n'est pas en bon état car quand je tape aussi :

sudo cron

La réponse est que cron est déjà lancé...
Fait un

ps aux | grep cron | grep -v grep

s'il y a une ligne, c'est que le cron tourne.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#5 Le 30/09/2014, à 11:36

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Bonjour jplemoine, je te remercie , voici le résultat de la commande :

root      3209  0.0  0.0   2620   928 ?        Ss   09:52   0:00 cron

mon cron tourne donc, mais le script de suppression des enregistrements d'une table ne s'est pas lancé car je ne vois aucun changement sur ma base de données.

Dernière modification par ing_tiziouzou2014 (Le 30/09/2014, à 11:36)

Hors ligne

#6 Le 30/09/2014, à 12:13

jplemoine

Re : [RÉSOLU]Problème de crontab

c'est qu'il y a un problème dans le script qui est exécuté :
il faut que tu rediriges la sortie vers un fichier log
"programme" > /var/log/fichier.log 2>&1

/var/log/fichier.log : redirection des messages "normaux"
2>&1 : redirection des erreurs
tu peux aussi renvoyer les erreurs vers un fichier spécifique : 2> /var/log/fichier.err


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#7 Le 30/09/2014, à 13:16

Postmortem

Re : [RÉSOLU]Problème de crontab

Lorsque tu lances ton script depuis le navigateur, quel user est utilisé ?
Comme tu le fais dans cron, c'est root qui lance le script.
De plus, certainement que lorsque tu lances ton script depuis ton navigateur, un certain nombre de variables doivent être utilisées, genre le nom de la base. Chose que cron ne connaît pas.


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#8 Le 30/09/2014, à 14:01

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Merci infiniment à vos deux pour votre aide.
Non, le script n'est pas erroné, j'ai essayé même avec des scripts moins compliqués, mais rien ne se passe! c'est ce que je ne comprends pas est le fait qu'au dépard, tout fonctionnait à merveille!  ça pourait peut être avoir un rapport avec php.ini ou quelque chose comme ça , car je ne le trouve pas dans /etc/apache2  et puis  quand j'essaye d'installer php -cli avec la commande :

apt-get install php -cli

il m'affiche le message

E: Ouverture du fichier de configuration li - ifstream::ifstream (2: Aucun fichier ou dossier de ce type)

Je sais que je mélange les choses!!!! mais Franchement je ne sais plus quoi faire, le malheur que c'est très urgent!!!

Dernière modification par ing_tiziouzou2014 (Le 30/09/2014, à 14:04)

Hors ligne

#9 Le 30/09/2014, à 14:01

tiramiseb

Re : [RÉSOLU]Problème de crontab

Salut,

Houla, plein de trucs dans tous les sens, mais il n'y a pas les deux trucs évidents que je peux sortir en lisant ton premier message :

1/ cron

quand je tape aussi :

sudo cron

J'obtiens le message :

cron: can't lock /var/run/crond.pid, otherpid may be 3209: Resource temporarily unavailable

Bah non, c'est normal, cron tourne déjà, tu ne peux pas le lancer une deuxième fois. C'est toi-même qui l'a (re)lancé juste avant.

Enfin, jplemoine l'a aussi dit en #4, mais pas de la même manière smile


2/ tes jobs

La majorité de tes jobs sont commentés, donc c'est normal qu'ils ne fonctionnent pas.

Le seul qui n'est pas commenté pointe vers /var/html alors qu'il s'agit probablement de /var/www/html...

Hors ligne

#10 Le 30/09/2014, à 14:02

bruno

Re : [RÉSOLU]Problème de crontab

Déjà il faut essayer de lancer ton script manuellement en ligne de commande :

sudo php /var/www/html/mon_script.php

si cela marche, il faut écrire ceci dans le crontab :

22 09 * * * root /usr/bin/php /var/www/html/mon_script.php

Dernière modification par bruno (Le 30/09/2014, à 14:13)

En ligne

#11 Le 30/09/2014, à 14:03

tiramiseb

Re : [RÉSOLU]Problème de crontab

bruno : toi aussi, tu n'as pas vu que d'un côté il a "/var/www/html/" et de l'autre "/var/html/" ; tu as même copié-collé son erreur dans ton message ! lol

Hors ligne

#12 Le 30/09/2014, à 14:13

bruno

Re : [RÉSOLU]Problème de crontab

Arf… Effectivement, cela m'apprendra à lire en diagonale wink (j'ai corrigé)

Et pour installer PHP pour la ligne de commande c'est :

sudo apt-get install php-cli

En ligne

#13 Le 30/09/2014, à 14:20

jplemoine

Re : [RÉSOLU]Problème de crontab

En 14.04, je pense que c'est php5-cli. Je ne vois pas de paquet php-ci.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#14 Le 30/09/2014, à 14:26

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Merci tiramiseb , les commentaires c'est moi qui les a faits car j'ai besoin de tester uniquement un seul script, aussi,le problème ne réside pas dans l'erreur car je l'ai corrigée après et puis lorsque je change l'heure de l'exécution de mon script à deux minutes de plus de l'heure actuelle (exemple: 14h22  chez-nous ,  heure d'exécution 14h24), rien ne se passe .

Dernière modification par ing_tiziouzou2014 (Le 30/09/2014, à 14:39)

Hors ligne

#15 Le 30/09/2014, à 14:46

tiramiseb

Re : [RÉSOLU]Problème de crontab

Ok.

Mon premier conseil serait de tester avec un script PHP ultra simplifié (genre juste une écriture dans un fichier) histoire de réduire le champ de recherche.
Voire même de commencer par faire appel à une simple commande dans ton crontab : si la commande fonctionne avec une config de crontab, il suffit alors de se diriger progressivement vers ton script PHP /
1/ test avec une commande shell
2/ lancement d'un script PHP ultra simplifié
3/ lancement d'un script un peu plus complexe
4/ etc

Regarde aussi si dans les e-mails envoyés par cron il n'y a pas une erreur PHP retournée.

Hors ligne

#16 Le 30/09/2014, à 14:50

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Merci beaucoup pour ta réponse rapide! j'essayerai de suivre tes conseils, je te tiendrai au courant dès que j’aurai  de nouveau.

Hors ligne

#17 Le 30/09/2014, à 14:51

jplemoine

Re : [RÉSOLU]Problème de crontab

et mon post #6 qui consistent à rediriger la sortie vers un fichier de log : c'est une bêtise ou pas ?


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#18 Le 30/09/2014, à 14:52

tiramiseb

Re : [RÉSOLU]Problème de crontab

et mon post #6 qui consistent à rediriger la sortie vers un fichier de log : c'est une bêtise ou pas ?

On peut faire ça ou on peut regarder les mails que cron envoie... smile

Il suffit de configurer la variable MAILTO en tête de fichier, si j'ai bonne souvenance.

Dernière modification par tiramiseb (Le 30/09/2014, à 14:52)

Hors ligne

#19 Le 30/09/2014, à 14:56

jplemoine

Re : [RÉSOLU]Problème de crontab

Je vais peut-être dire une bêtise mais pour que le mail soit envoyé, il faut un serveur smtp configuré ?
Dans le cas où il ne serait pas installé ou mal configuré, je pense que ça ne fonctionne pas.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#20 Le 30/09/2014, à 14:57

tiramiseb

Re : [RÉSOLU]Problème de crontab

Je vais peut-être dire une bêtise mais pour que le mail soit envoyé, il faut un serveur smtp configuré ?

Au pire ce sera un mail local, lisible avec la commande "mail" (MAILTO=root, je crois que c'est le paramètre par défaut).

Hors ligne

#21 Le 30/09/2014, à 15:06

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Toujours rien ne se passe , c'est bizarre n'est-ce-pas?
Je suis complètement découragé.

Hors ligne

#22 Le 30/09/2014, à 15:09

tiramiseb

Re : [RÉSOLU]Problème de crontab

Toujours rien ne se passe , c'est bizarre n'est-ce-pas?

Euh tu ne dis pas du tout ce que tu as fait ! Comment veux-tu qu'on te dise si c'est bizarre ? On n'est pas dans ton PC !
Montre la ligne que tu as mise en place, déjà... Et indique le résultat attendu et le résultat obtenu...


-----


Par ailleurs, peux-tu confirmer que tu édites bien /etc/crontab ? Car l'en-tête que tu montres est normalement pour les crontabs utilisateurs (commande crontab -e)...

Hors ligne

#23 Le 30/09/2014, à 15:58

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Voici la ligne :
15 15 * * * * root php /var/www/html/create1.php et voici le tout simple script :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

<body>

<?php
date_default_timezone_set('Africa/Algiers') ;
set_time_limit(0);
$debut= date('H:i:s');
include ('connection.php');
$db=mysql_select_db("script");
///////////////////////////
for($cr=1;($cr<=4);$cr++)
{
$sql="CREATE TABLE test$cr (ENPR int(5),ANNEXE char(2))";
$res1=mysql_query($sql);
if ($res1==FALSE)
echo mysql_error();
}
mysql_close();
?>
</body>
</html>

J'édite mon fichier /etc/crontab par la commande:

 nano /etc/crontab

Hors ligne

#24 Le 30/09/2014, à 16:01

tiramiseb

Re : [RÉSOLU]Problème de crontab

Déjà, tu as mis une étoile en trop dans ton cronjob : les champs de définition d'heure de déclenchement, il n'y en a que 5.

Ensuite, tu appelles ça tout simple !?
Commence par ça :

15 15 * * * root date > /tmp/test

Pour la manière d'éditer ton cron, on est bien d'accord, c'est la bonne méthode.

Hors ligne

#25 Le 01/10/2014, à 08:54

ing_tiziouzou2014

Re : [RÉSOLU]Problème de crontab

Bonjour tiramiseb, Oui, c'est "honteux"  de faire ce genre d'erreurs !!!!!!!!!!!.

Mes scripts aussi posaient des problèmes car le fichier  php.ini était modifié , alors j'ai opté pour remplacer l'ancienne version par la version la plus récente .
Merci beaucoup pour votre patience.

Dernière modification par ing_tiziouzou2014 (Le 01/10/2014, à 09:04)

Hors ligne