Overview
SIBA is a simple backup and restore utility. It implements daily backup rotation scheme. It is most suitable in sutuations when you need to have a history of backups. When run daily, SIBA retains full year history of backups by keeping 23 files in total: for the last 6 days, 5 weeks and 12 months.
SIBA is
- Easy to use: configure, backup and restore with a single command.
- Feature-rich: backup and restore files, MySQL, MongoDB databases to/from local or remote locations.
- Secure: all backups are encrypted before moving to destination.
- Cross platform: runs on any computer with Ruby 1.9 or later.
- Easy to extend: developers can easily add new backup sources, archivers, encryptions and destinations.
- Free and open source: use SIBA for any purpose without restrictions.
Installation
$ gem install siba
(assuming that Ruby 1.9 and RubyGems are installed)
Usage
Create a configuration file:
$ siba generate mybak
Backup:
$ siba backup mybak
Restore:
$ siba restore mybak
Show available plugins:
$ siba list
Show other commands and options:
$ siba
Create a gem skeleton for a new destination plugin:
$ siba scaffold destination my-cloud
Tip: to create other plugin types, replace destination
with source
, archive
or encryption
.
Read more about SIBA plugin development
Scheduling backups
It is recommended to run siba backup
command daily or hourly. Use your favourite scheduler to automate the process: Cron, Scheduled Tasks, iCal etc.
Supported plugins
Source
- files: backup local files and directories.
- mongo-db: backup and restore MongoDB (homepage).
- mysql: backup and restore MySQL database (homepage).
Archive
- tar: archive with optional gzip or bzip2 compression.
Encryption
- gpg: encrypt with AES256, Blowfish, Twofish, 3DES and other ciphers.