I have found this info to be very helpful and it has saved us many times in the past from extended downtime for our web sites. This is how we backup our important sites daily to a remote FTP location.
Create a file in your /home/username/ directory named backup.php with the code below. Make sure to enter your cPanel login details in the script as well as your FTP login info of the remote FTP server. Then setup a cron to run the file daily. We actually run it 4 times daily.
You don’t need your own expensive FTP server either. I use an XP Pro machine with Filezilla server installed to it for our remote FTP server. The XP machine is located right next to my main workstation so I can burn copies to DVD if need be. I use port forwarding within my Verizon FIOS router to point the FTP port to the XP machine. I can sleep at night now knowing I have a local copy of our most important data.
Don’t rely on your hosting provider for backups. If you read most hosting providers’ policies they’re not responsible for them anyways. Do the smart thing and start keeping backups of your site to a remote location, on your local computer or one you have physical access to.
Also if you don’t have a remote FTP location to backup to, we see many of our customers sign up for one of our Reseller Hosting packages and use that as their remote FTP storage. If you do sign up, use promo code SAVE25 to save 25% on any package and billing cycle.