A life spent making mistakes is not only honorable, but also more useful than life spent doing nothing.

C-Box

Posted: April 7th, 2007 | Author: Prabhas Gupte | Filed under: Application | Tags: , , | No Comments »

This is a backup software and system project. The project started in July 2006 with researches and ended up in March 2007, with version 1 ready.

The major goals for this project were:

  • come up with a backup software which will back up the files efficiently
  • support various kind of files, like office documents, large database files, media files etc.
  • support for transfer over telephone lines, along with via Internet
  • should be easy to use, handy to non-technical staff

The project consists of two major parts – the software with GUI and the iSCSI initiators and targets. The software, along with iSCSI initiators needed to be installed on each client machine in the network, whereas the iSCSI target would sit at backup site – the machine where all the data from clients will get consolidated. The Rsync protocol was used to update the file copies appropriately.

The iSCSI targets were deployed on footprint versions of Linux operating system. In order to make them easy to manage, the Webmin interface was customized.

The telephony support was added with TAPI programming.

While working on the GUI, I used the theme-scheme similar to that of Windows, so that it will “look” familiar to the user. The menus were exactly same as those of normal MS Office applications. The source selection, backup scheduling and immediate backup wizards were developed using KISS principle, making them as simple as possible to use. Source selection and backup scheduling were kept separated (instead of keeping in a single flow), so as to avoid a lengthy set of actions. The user could select the source files as and when he want, and he could also schedule a backup for these files any point in time later.

Webmin being the web-based administration for Linux systems, was selected to manage the iSCSI targets and LUNs (Logical Unit Numbers). Hence, one could configure the consolidation target machine through the browser itself, from any machine in the network.