Release Notes

Schedules a backup for your the following items:
 - data dir
 - settings.php
 - .htaccess
 - full db (mysqldump)
and mail a zip.

Can also manualy request a backup to be mailed (button in the admin settings).

Depends on:
 - cron working! (daily, weekly, monthly)
 - email provider accepting large files and zip files
 - you need to save the settings once!
 - phpmailer plugin

Version History
0.5
 - first release to the public

Todo:
 - validate emailto as valid email adress
 - admin option for locking the table on mysqldump
 - send errors in mail
 - work with AND without phpmailer
 - manual backup to download a zip instead of mailing
 - backup-to-disk only option (so no email), with retention
 - backup-to-ftp for remote backup
 - secure zipfiles (encryption)
 - restore from zip (no priority)
 
DISCLAIMER: I do not accept any responsibility or liability for any damage or loss that will result directly or indirectly from using this plugin even if it is based on an error of the plugin.

ColdTrick IT Solutions
(c) 2009 ColdTrick IT Solutions

Like this plug-in? Consider making a donation.
image

  • This is a major contribution to Elgg. Thank you!

  • to do

    there is one thing that I need to do to thank you for the great plugins: set up a paypal account

  • can u implement a ftp file transfer i got 500 Users with many photos

  • @Ben Wagner already on my todo list

  • i need help setting up my cron job... i already looked into the example given on the elgg packet... but im still unable to mae it work. My server platform is on Cpanel.

     

    I am not sure in which way to insert the command run in the fields im provided.

    I'm struggling with this quite alot.

     

     # Location of GET
    GET='/usr/bin/GET'

    # Location of your site (don't forget the trailing slash!)
    ELGG='http://www.example.com/'

    # The crontab
    @reboot $GET ${ELGG}pg/cron/reboot/
    @hourly $GET ${ELGG}pg/cron/hourly/
    @daily $GET ${ELGG}pg/cron/daily/
    @weekly $GET ${ELGG}pg/cron/weekly/
    @monthly $GET ${ELGG}pg/cron/monthly/
    @yearly $GET ${ELGG}pg/cron/yearly/

     

    Cron Preview

     

     

    Any help will be greatly appreaciate it. Thans in advance.

     

     

    Santacrux.

  • i forgot to mention that i dont have ssh access to my linux server, im only provided with the cron interface i posted above.

    Please help me, thanks.

  • Check out my config. Instead of get, i use wget, but that should make no difference. http://i42.tinypic.com/16ay0if.jpg

    I also noticed in your second advanced cronjob you url contains profile... is that correct?
    Hopefully you manage to get it right.

  • @santacrux

    Setting up cronjob..........

    You will not be able to install the crontab like the instructions say, but I can help you out. The way to do it is very easy.

    Take a look into crontab.example

    For example, we'll use the line that looks like "15,30,45,59 * * * * $GET ${ELGG}pg/cron/fifteenmin/"

    All you need to do is follow these instructions:
    1: Go into the cPanel's cron editor and click on "Standard"

    2: For the Command to run, replace the "$GET" with just GET, replace "${ELGG}" with your domain name "http://www.yourdomain.com/" and leave the rest. Our example line would then read "GET http://www.yourdomain.com/pg/cron/fifteenmin/"

    3: Since this command is for every 15 minutes, select "Every 15 Minutes" for Minutes, "Every Hour" for Hours, "Every Month" for Months, "Every Day" for Days, and "Every Week Day" for Weekdays.

    4: Click on "Save Crontab" at the end of the page to save and activate the crontab.

    5: Repeat for each command in the list. You can only add them one at a time, but every time you go into the "Standard" option, you will find a new, empty form for you to fill out.

    6: When you're done, don't forget to put your email address in the field at the top of the page. This way you get your cron messages.

    You will not be able to enter a cron entry for the @reboot option but the rest can be filled out easily. For @hourly, leave minutes set to 0, and the rest to "Every Day/Month/Weekday, etc, and so on and so forth.

    For the yearly option, set to one date and time specifically like July 10th, 7:04AM would be set as follows: Minutes = 4, Hours = 7AM, Days = 10, Weekdays = Every Weekday, Month = July

  • Hi - just a minor point. If you have other things running on your server, and these things also run cron jobs, setting them to go at 15, 30, 45, 59 minutes past the hour could cause loads of cron jobs all to run at the same time.

    In the image http://i42.tinypic.com/16ay0if.jpg, for example, on January 1, at 00:00, all 14 cron jobs will be running at the same time.

    If you have other cron jobs running - backup scripts, etc - your server could be overloaded for a while. 

    I use random minutes, hours, days and months for the jobs.

  • @jeroen, i tried installing cron as you said (in the picture). but iam getting an error message like

    /bin/sh: GET: command not found

    I dont have shell access. can you help me

  • re: "  /bin/sh: GET: command not found  "

    you'll need to ask your Host's Tech Support for help with this.

Jeroen Dalsem

Owner of ColdTrick IT Solutions, developing social networking sites for the dutch market

Stats

  • Category: Uncategorized
  • License: GNU General Public License (GPL) version 2
  • Updated: 2014-11-17
  • Downloads: 2375
  • Recommendations: 6

Other Projects

View Jeroen Dalsem's plugins