Difference between revisions of "backup.lite"

From Cliquesoft
Jump to: navigation, search
Line 1: Line 1:
This project allows a user to backup and/or sync their data between multiple locations including local directories, network shares, and remote nodes using SSH with optional email contact upon success and/or failure of job.  Not unlike our other bash-script-based software, this project relies on our clAPI framework for various functionality, so be sure this dependency is satisfied before using.  It's also worth mentioning that the placement of the OPTION's <b>must</b> follow their respective ACTION (or parent script) which can be determined via the <i>--help</i> output.  It might also help to read over the basics of [http://wiki.cliquesoft.org/index.php?title=clAPI clAPI] to get a better understanding when running software from the command line.
+
This project allows a user to backup and/or sync their data between multiple locations including local directories, network shares, and remote nodes using SSH with optional email contact upon success and/or failure of job.  Not unlike our other bash-script-based software, this project relies on our clAPI framework for various functionality, so be sure this dependency is installed before using.  It's also worth mentioning, when using this software from the command prompt, that the placement of the OPTION's <b>must</b> follow their respective ACTION (or parent script) which can be determined via the <i>--help</i> output.  It might also help to read over the basics of [http://wiki.cliquesoft.org/index.php?title=clAPI clAPI] to get a better understanding when running software from the command line.
  
  
Line 8: Line 8:
  
  
==Command line ACTION's==
+
==Using the CLI==
 +
 
 +
===ACTION's===
 
Among our standard 'help', 'version', and 'update' command line ACTIONs, this project also contains several others that are available - 'backup', 'sync', and 'restore'.  It's probably pretty obvious what task each of those handles, so we'll go ahead and move into the OPTIONs section below...
 
Among our standard 'help', 'version', and 'update' command line ACTIONs, this project also contains several others that are available - 'backup', 'sync', and 'restore'.  It's probably pretty obvious what task each of those handles, so we'll go ahead and move into the OPTIONs section below...
  
  
===Job Wizard===
+
====Job Wizard====
 
This OPTION belongs to the parent script of the project since parameters must accompany their respective "module" in order to be processed correctly.  Useful for initially creating backup jobs, this parameter initiates a wizard that will walk you through all of the necessary steps.  Starting this process is as simple as executing <i>backup.lite --wizard</i> at the command line.
 
This OPTION belongs to the parent script of the project since parameters must accompany their respective "module" in order to be processed correctly.  Useful for initially creating backup jobs, this parameter initiates a wizard that will walk you through all of the necessary steps.  Starting this process is as simple as executing <i>backup.lite --wizard</i> at the command line.
  
  
===Backup OPTION's===
+
====Backup OPTION's====
  
 
* <b>--source</b>
 
* <b>--source</b>
Line 35: Line 37:
  
  
===Sync OPTION's===
+
====Sync OPTION's====
  
 
* <b>--port</b>
 
* <b>--port</b>
Line 52: Line 54:
  
  
===Restore OPTION's===
+
====Restore OPTION's====
  
 
* <b>--source</b>
 
* <b>--source</b>
Line 75: Line 77:
  
  
==Command line Examples==
+
===Examples===
 
Installation is a simple 2-step process...
 
Installation is a simple 2-step process...
 
<pre>
 
<pre>
Line 143: Line 145:
  
  
==GUI Modules==
+
==Using the Web Interface==
 
This section will discuss the options available to the user when interacting with various modules within the graphical interface, but before we get started, we'll need to explain how to make it available in the first place.  If you're using a XiniX-based Linux distribution, then you can skip the reminder of this section since this aspect will already be handled during the normal bootup process.  For everyone else however, we'll need to setup and/or start a web server that will enable the GUI to be shown.  <b>Before</b> you get discouraged, this process is nowhere near as complex as one may think, thanks to the [http://wiki.cliquesoft.org/index.php?title=clAPI clAPI] framework!
 
This section will discuss the options available to the user when interacting with various modules within the graphical interface, but before we get started, we'll need to explain how to make it available in the first place.  If you're using a XiniX-based Linux distribution, then you can skip the reminder of this section since this aspect will already be handled during the normal bootup process.  For everyone else however, we'll need to setup and/or start a web server that will enable the GUI to be shown.  <b>Before</b> you get discouraged, this process is nowhere near as complex as one may think, thanks to the [http://wiki.cliquesoft.org/index.php?title=clAPI clAPI] framework!
  
Line 160: Line 162:
 
===Backup Module===
 
===Backup Module===
  
<h2>Overview Tab</h2>
+
====Overview Tab====
  
 
* <b>Archive Issues (button)</b> This button will archive all the information that's presented in the "Issues that need Attention" section of the screen.  This can be useful if that information will ever be required in the future.
 
* <b>Archive Issues (button)</b> This button will archive all the information that's presented in the "Issues that need Attention" section of the screen.  This can be useful if that information will ever be required in the future.
Line 170: Line 172:
 
* <b>Issues that need Attention</b>
 
* <b>Issues that need Attention</b>
  
<h2>Jobs Tab</h2>
+
====Jobs Tab====
  
 
* <b>Saved Job</b>
 
* <b>Saved Job</b>

Revision as of 14:25, 7 July 2012

This project allows a user to backup and/or sync their data between multiple locations including local directories, network shares, and remote nodes using SSH with optional email contact upon success and/or failure of job. Not unlike our other bash-script-based software, this project relies on our clAPI framework for various functionality, so be sure this dependency is installed before using. It's also worth mentioning, when using this software from the command prompt, that the placement of the OPTION's must follow their respective ACTION (or parent script) which can be determined via the --help output. It might also help to read over the basics of clAPI to get a better understanding when running software from the command line.


Terms

This projects' codebase is licensed under the AGPLv3 unless a valid CPL has been purchased. More information about both of these licenses can be found under the "Our Licenses" link of our homepage.



Using the CLI

ACTION's

Among our standard 'help', 'version', and 'update' command line ACTIONs, this project also contains several others that are available - 'backup', 'sync', and 'restore'. It's probably pretty obvious what task each of those handles, so we'll go ahead and move into the OPTIONs section below...


Job Wizard

This OPTION belongs to the parent script of the project since parameters must accompany their respective "module" in order to be processed correctly. Useful for initially creating backup jobs, this parameter initiates a wizard that will walk you through all of the necessary steps. Starting this process is as simple as executing backup.lite --wizard at the command line.


Backup OPTION's

  • --source
  • --target
  • --count
  • --compress
  • --include
  • --type
  • --verify
  • --params


Sync OPTION's

  • --port
  • --source
  • --target
  • --dir
  • --tunnelUser
  • --tunnelPass
  • --params


Restore OPTION's

  • --source
  • --target
  • --archive
  • --archives
  • --collapse
  • --data
  • --include
  • --overwrite
  • --params



Examples

Installation is a simple 2-step process...

$ cd /path/to/uncompressed/package
$ ./install

Backing up data only (no sync'ing)...

$ sudo ./backup.lite --noprompts --name=test backup --type=full --source='/tmp/temp' --target='/tmp/backup' --compression=gzip --include='/etc/backup/test.inc'

Beginning the "test" backup job @ Tue Mar 27 10:37:44 EDT 2012

Checking system environment...

  (i)   Directories...
           Configs: [checking] [exists] [writable] [success] [done]
           Temp: [checking] [exists] [writable] [success] [done]
           Mounts: [checking] [exists] [writable] [success] [done]
  (i)   Variables...
           --name: [done]
           ACTION: [done]

Beginning the 'backup' module...

  (i)   Processing the source and target...
           Source: [symlinking] [success] [done]
           Target: [local] [checking] [exists] [writable] [success] [symlinking] [success] [done]
           Storage: [checking] [exists] [done]
  (i)   Checking variables: [type] [include] [done]
  (i)   Processing a(n) "full" backup  -----------------------------[PROGRESS]--

./
./original/
./original/flash.img
./a/
./a/b/
./a/b/test.txt
./a/b/test.sh
./flash.tar.gz
Total bytes written: 656384000 (626MiB, 31MiB/s)

--------------------------------------------------------------------------------
  (i)   Creating a catalog of backed up data: [done]
  (i)   Cycling the backups...
           Archive: [deleting] [success] [done]
           Catalog: [absent] [done]
           Job Log: [absent] [done]
  (i)   Check archive count: [within limits] [done]
  (i)   Compressing the archive: [gzip]
--------------------------------------------------------------------[PROGRESS]--
 626MB 0:01:05 [9.56MB/s] [==================================>] 100%            
--------------------------------------------------------------------------------
           [deleting] [success] [done]

Calling exit routines for the modules...

  (i)   backup.lite script...
           Source: [checking] [unmounted] [deleting] [success] [done]
           Target: [checking] [unmounted] [deleting] [success] [done]
           Cleanup: [deleting] [success] [done]

The job has completed successfully @ Tue Mar 27 10:39:16 EDT 2012



Using the Web Interface

This section will discuss the options available to the user when interacting with various modules within the graphical interface, but before we get started, we'll need to explain how to make it available in the first place. If you're using a XiniX-based Linux distribution, then you can skip the reminder of this section since this aspect will already be handled during the normal bootup process. For everyone else however, we'll need to setup and/or start a web server that will enable the GUI to be shown. Before you get discouraged, this process is nowhere near as complex as one may think, thanks to the clAPI framework!

  • Typical User The typical user can get a web server up and running in a single line entered from the command prompt. So open up a terminal window and type the following:
$ clapi --noprompts --verbose paged
  • Administrators For the admins that already have a web server installed such as paged, Apache, IIS, nginx, lighttpd, boa, or any other, you can simply point it to the directory that the 'GUI files' installed to during the clAPI and backup.lite installation. Afterwards, restart your web server and you're good to go!


Now that we've got that condition met, we can now access the softwares graphical interface using any web browser. If you executed the built-in clAPI web server as shown above, you can now simply navigate to http://127.0.0.1:8080 and after providing the authentication credentials for a valid system user account, you can access all the installed modules. Administrators of their own web server may have an alternate URI to enter in order to gain access to the software.


Backup Module

Overview Tab

  • Archive Issues (button) This button will archive all the information that's presented in the "Issues that need Attention" section of the screen. This can be useful if that information will ever be required in the future.
  • Scheduled Jobs As the name suggests, this box shows all the upcoming scheduled tasks along with their scheduled job number and planned execution time. There are no interactions possible in this area as all the content presented here is information only.
  • Completed Jobs
  • Issues that need Attention

Jobs Tab

  • Saved Job
  • Type & Compression
  • asdf


Restore Module

Add content



Developers

Dave Henderson [dhenderson (at) cliquesoft (dot) org]