Sauvegarde du CPanel automatiquement via une tache CRON

Sauvegarde du CPanel automatiquement via une tache CRON

Quentin C. 25 December 2010

Vos utilisateurs se plaignent de devoir faire une sauvegarde manuelle ? Vous avez peur de perdre des données?
Donnez à vos client un script afin qu’ils puissent programmer via une tâche CRON leur sauvegarde et qu’ils soient alertés par mail quand celle-ci est prête.

Il suffit de copier le code suivant dans un fichier nommé : “cpanel_backup.php”

= $jours*86400)) //86400sec = 1 jour
		unlink("$filename"); // on le supprime
}
?>

Placer le cpanel_backup.php dans la racine de votre FTP (/)

Allez sur https://VOTRE-IP:2083/ -> Avancé -> Tâches Cron -> Ajouter une nouvelle tâche Cron -> Une fois par jour

Et la commande:
php -q /home/USERNAME/cpanel_backup.php
Et voilà le tour est joué !

Edit 2 mars :

25 thoughts on “Sauvegarde du CPanel automatiquement via une tache CRON

  1. Très intéressant, puisque R1Soft permet une sauvegarde quotidienne mais pas pour les données de la base de données…
    Cette sauvegarde par tâche Cron concerne quelles données ? La base de données ?
    Si ce n’est pas le cas, est-il possible de ne sauvegarder que les données de la base de données ? (car ce sont pour moi les données les plus critiques)
    Merci!

    1. Bonjour,

      Oui cette sauvegarde fait une copie de tous le compte Cpanel du client,

      Que sa soit les accès FTP, MAIL, MYSQL, … Fichiers présent dans le html_public, ….

      Je viens de fait un petit printscreen pour te montrer se qui est présent dans le backup 😉

      1. Super, merci !
        Bon, du coup, je crois que je n’aurais plus besoin d’utiliser R1Soft. C’est bien dommage mais comme il ne sauvegarde pas la base, tant pis!

      2. De toute façon tes backups fait pas le CRON avec ce fichier PHP sera sauvegarder aussi sur R1Soft donc tu aura une sauvegarde de ta sauvegarde 🙂

      3. Selon Saber :

        R1soft externes effectuent les sauvegardes complètes du FTP + MySQL. Il est uniquement possible de restaurer le FTP depuis le cPanel via le module r1soft. Si vous souhaitez restaurer une base de données MySQL, svp, n’hésitez pas à contacter le support à la clientèle.

    2. Bonjour,

      Tu fais comment pour faire une sauvegarde avec r1soft. ça fais depuis que je suis inscrit que je cherche en vain.

      Il y a que l icône restore backup dans le cpanel

      Merci

  2. J’ai essayé ce script mais il retourne un message d’erreur:
    faut il juste faire un copier coller de ce script et le mettre sur le serveur avec la ligne de commande ou alors faut il l’adapter?

    1. Il faut changer 3 variables qui se trouvent au début du script :

      $cputilisateur = “login”; // Nom d’utilisateur du CPanel
      $cpmotdepass = “password”; // Mot de passe de CPanel
      $domaine = “avis-planethoster.com”; // Le serveur Planethoster (remplacer xxxx) ou IP

      1. J’ai rentré les paramètres suivant
        $cputilisateur : le nom d’utilisateur pour se connecter au CPANEL
        $cpmotdepass : le mot de passe pour se connecter au CPANEL
        $domaine: l’URL de mon site sans le HTTP/www.

        le serveur me renvoi un message suivant:
        “No input file specified.”

        Pouvez vous me dire où je me suis trompé,la ligne de commande est strictement celle que vous avez indiqué,il y a t il des espaces à supprimer?

        Merci de votre aide, je suis novie.

      2. Salut Manu,

        Oui tu a fait correctement les changements sur le fichier php.

        L’erreur que tu mentionne, me fait plutôt penser à un problème de configuration du CRON.

        php -q /home/USERNAME/cpanel_backup.php

        Pour moi tu dois avoir mal renseigné ton “USERNAME” ou tu n’est peut-être pas dans la partition par défaut “HOME”.

        Pour vérifier cela, réfère toi a l’aide suivante : https://blog.avis-planethoster.com/information/trouver-le-chemin-repertoire-racine-de-votre-hebergement-992

        Bonne journée et n’hésite pas en cas de problèmes.

  3. Bonjour,
    j’utilise ce script et il fonctionne très bien…
    Cependant je voudrais envoyer le fichier de sauvegarde sur serveur dédie a la sauvegarde,une fois cette opération terminée je voudrais supprimer la sauvegarde sur mon serveur planethoster ..
    Pouvez vous m aider???

    1. Bonjour Labidiz,

      J’avais essayé dans le temps de prendre le dernier backup et l’envoyé par mail,

      Cependant pour mes gros sites,la sauvegarde fait près de 500Mo, et pour l’envoi il fallait parcourir tout le fichier avec un fopen …

      Le serveur me retournais des erreurs php comme max file size ou max execution time, maintenant si ton site fait quelque Ko/Mo, recontacte moi et je re-coderai un petit bout.

      A+

      1. Bonjour,

        J’ai une sauvegarde réaliser avec cette tache cron.
        Pour faire un essaie,j’ai supprimer le répertoire principale de mon site avec mon logiciel FTP.
        Ensuite je me suis connecté avec mon CPANEL pour restaurer la sauvegarde.
        Le rapport m’a indiqué aucune erreur,cependant lorsque je me suis connecté à mon site il n’avait plus rien?
        Comment fonctionne la restauration d’une sauvegarde.

  4. J’utilise ce code depuis des années et pas seulement sur PH.

    Juste penser à vérifier la variable[CODE]$skin = “x3”;[/CODE]

    Pour que ça fonctionne chez PH, il faut mettre[CODE]$skin = “PlanetHoster”;[/CODE](à vérifer dans ton cPanel de nom de ton thème)

    1. Bonjour,

      J’ai essayé ce code mais il ne crée pas d’archive sur mon serveur, le CPANEL me renvoi un mail avec le code source du CPANEL de mon domaine

      J’ai pourtant modifié la variable skin mais ça ne change pas.
      Peux tu m’aider?

      Merci

  5. Super script, mais comme LAbidiz, j’aimerais que le fichier de sauvegarde créé soit envoyé sur un ftp distant.
    Que faut-il modifier dans le code ?

    Merci d’avance

  6. Bonjour Quentin,

    Et merci pour ce chouette script ^^
    Perso j’ai une erreur (notification email activée) lorsque la tâche cron s’active :

    Fatal error : Can’t use function return value in write context in /home/ady/cpanel_backup.php on line 93.

    Je regarde la ligne 93 de ton script et je m’aperçois que c’est la petite dernière fonction qui fait la vérification de suppression des vieilles sauvegardes ?!?

    Je ne comprends pas, une idée ?

    Merci !!! :p

    1. Bonjour Ady,

      Oui il y a un problème avec WordPress qui m’affiche mal le code PHP!

      Le code à la 93ème ligne est :

      if ((time() – filemtime($filename) >= $jours*86400)) //86400sec = 1 jour
      et non
      if ((time() – filemtime($filename) –>= $jours*86400)) //86400sec = 1 jour

      Bien à toi.

  7. Arf j’avais pas vu, merci pour la correction, j’avais remarqué le double trait en début de code à la balise php mais pas celle-ci.
    Encore merci pour cette astuce terrible qui m’enlève une sacrée épine du pied !! 🙂

  8. bonjour

    si vous ete chez planethoster vous devriez verifier que ca fonctionne encore car il on desactiver le ficher sous pretexe qu il y a softazculous

  9. J’ai remis le ficher a 12h heure française. sauvegarde se fait a 00h15.

    Il est 1h21 il vienne de désactiver mon ficher en mettant les permissions a 0000 en super administrateur et impossible de le réactiver même en contactant leur SAV et pire il on supprimer la sauvegarde comme en fessant comme chez eux.

    Si je les écoutes le script consomme trop de ressource de dégrade les performance du vps 6 a 89€.

Leave a Reply

Your email address will not be published.