Taches cron
Les tâches cron se trouvent ici:
/etc/crontab (fichier)
/etc/cron.d (répertoire)
/etc/cron.daily (répertoire)
/etc/cron.hourly (répertoire)
/etc/cron.monthly (répertoire)
/etc/cron.weekly (répertoire)
Ajouter un crontab (tâche cron)
On peut lancer un bash (fichier qui contient des lignes de commande linux)
On peut également exécuter un fichier php : php -f /var/www/monsite/script.php
REMARQUE :
- exécution d'un script php par un site web : répertoire courant = répertoire du script php appelé par le navigateur
- exécution d'un script php en ligne de commande : répertoire courant = répertoire du shell (celui d'avant que tu appelle php)
- exécution d'un script php grâce à cron : répertoire courant = répertoire de l'exécutable de php.
Exemple d'une tâche cron, on veut sauvegarder la base de donnée MySQL tout les jours à minuit (00:00) et lancer un script toutes les 3 minutes
#____________________________
# sauvegarde base de donnée | ( tout les jours à 00h00 )
#____________________________| (>/dev/null 2>&1 pour désactiver l’envoie d'email quand crontab est exécuté)
# m h dom mon dow user command
00 00 * * * root /mes-scripts/save-dbb >/dev/null 2>&1
#_________________________
# ( toutes les x minutes ) |
#_________________________|
# m h dom mon dow user command
#*/3 * * * * root /mes-scripts/mon_script
Exemple de script de sauvegarde de base de donnée mysql:
#!/usr/bin/php5
<?php
$date= date('d-m-Y-H-i-s' , time());
$host = 'localhost';
$user = 'user';
$pass = 'password';
$dbb = 'dbb_name';
$path = '/var/ftp/directory/';
$filename = $date . '-' . $dbb . '-sql.zip';
$query="mysqldump --opt -h$host -u$user -p$pass $dbb |gzip > $path$filename";
exec ($query);
?>
Le script soit être exécutable :
chmod 700 /mes-scripts/save-dbb
Et le répertoire où sera sauvegardée la sauvegarde doit être accessible en écriture
pour relancer les cron :
/etc/init.d/cron restart
Bonjour, Un grand grand merci pur cet énorme travail très très bien organisé. Merci KS
1 réponse(s) :
Haha, merci !!!
Heureusement que j'avais ue sauvegarde de ce site sur mon disque dur, comme un c@n, j'ai effacé le répertoire /usr/
du coup je fut bon pour une reinstalle complète
Répondre à ce(s) commentaires(s)