A simple Bash script for performing an incremental backup of a set of directories
to a specified location (possibly to a remote server via SSH) through rsync
on Linux.
The set of directories to backup is specified through a simple text file. Optionally, another file may be used to provide a list of patterns to exclude file and directories from the backup (e.g. hidden directories).
It is extremely easy to get a working copy of this software:
-
Check requirements:
rsync
(and a Bash interpreter). -
Download the script from this repository.
-
Done! You are ready to try it!
For Arch Linux users: easybackup
is also available from
AUR.
Your first run of easybackup
is made of two phases:
-
Choose the directories to be included in the backup. Prepare a file containing absolute path of chosen directories, one per line. E.g.:
/home/me/Documents /home/me/Pictures
-
Start the backup issuing the following command:
./easybackup -s <chosen_dirs_file> -d <destination_directory>
That's it! In the destination directory, you will find:
/path/to/destination/
|---- home/
|--- me/
|--- Documents/
|---- ...
|--- Pictures/
|---- ...
|---- ...
You can get more details about available options and what easybackup
does, issuing:
./easybackup -h
For a backup to a remote server (on which rsync
is installed):
./easybackup -s <chosen_dirs_file> -d <destination_directory> -r <server> [-u <username>]
This software is distributed under terms of GPLv3. You can find a copy of the license in this repository.