Archive | LAMP

Backing up my web sites

I’ve implemented web sites of varying types, including:

  • Static
  • Drupal
  • Joomla
  • WordPress
  • Media Wiki
  • Probably a couple of others

With the exception of the static sites, these ALL run in databases and invariably they ALL need to be backed up, files and databases included.

Many web site administrators will either rely on their web host provider to perform these backups and/or implement a backup plug-in for their CMS of choice.

The advantage of webhost provider based backups is that it’s a complicated matter that you don’t have to worry about. The drawback for the webhost provider based backups is that backup and recovery for YOUR site is now out of your hands. Let’s hope your webhost provider has got it right. Otherwise, you may not have a site to recover. In addition, if your site gets hacked, you could have a real difficult time finding where the bad code is, and I’ll cover this later.

The advantage of plug-ins is that, depending on the plug-in, you can get a LOT of functionality, such as file/database backup and recovery, site migrations and much more. The disadvantage is that the site needs to be RUNNING in order to use it.

For the past few years, I’ve been logging into my sites via ‘ssh’ and have been performing file/database backups to a remote host. I’ve been performing daily as well as weekly backups and have kept about 3 months worth of backups for these sites. The advantage is that I can go back several months to restore a site and have used this to compare recent and old site files to find a site hack. In addition, it doesn’t matter WHICH CMS I’m using or even if it’s running. As long as I can ssh into the site and dump the files and database, I’m good to go. The disadvantage is that each backup is a FULL backup and these can consume considerable disk space.

Really, what I need is a decent backup utility that:

  • Can access multiple sites via ssh or rsync
  • Can backup files
  • Can backup the databases
  • Is automated
  • Doesn’t matter which CMS I’m using
  • Supports incremental backups (thus saving huge amounts of disk space)

In the Linux world, Bacula is very popular, however I’ve chosen an application called rsnapshot. This uses perl scrips and the rsync command to create a repository of backups and I’ve been able to configure it to access multiple sites and databases and to backup much more data than I otherwise would have been able to with FULL daily/weekly backups.

 

 

Continue Reading

A Web Development Environment

Update: Working on a new version, which isn’t ready yet. It should contain:

  • Secure backups
  • Review of all content
  • Linux Mint
  • Git update with database migration and serialization
  • I’ve created a document that describes setting up a web development environment using a Windows 7 workstation, an Ubuntu 12.04 Virtual machine along with a Hostgator Reseller account and, most importantly, Git.

    This document provides lots of examples. Feel free to provide constructive feedback to atuline@gmail.com.

    Topics covered include:

    Oracle Virtualbox phpMyAdmin
    Hostgator Web Hosting vim
    Drupal Git
    WordPress drush
    Site Migration wp-cli
    FTP Samba
    Apache SSH
    MySQL GIMP
    PHP NetBeans

    I have now released version ‘1.0‘ of this document as well as a sister document for installing Virtualmin and Webmin on Ubuntu 12.04.

     

Continue Reading