Which is Most TimeMachine-like Backup Program for Ubuntu?
Solution 1:
You can use Cronopete. Cronopete is a backup utility for Linux, modeled after Apple's Time Machine. It aims to simplify the creation of periodic backups.Launchpad.
To install, just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:
sudo apt-add-repository ppa:rastersoft-gmail/cronopetedev
sudo apt-get update
sudo apt-get install cronopete
To install from source, see Here
Or you can try Back In Time. Back In Time is a simple backup tool for Linux inspired from FlyBack and "TimeVault".Back In Time / Launchpad.
To install just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:
sudo apt-add-repository ppa:bit-team/stable
sudo apt-get update
sudo apt-get install backintime-qt4
On a personal note, I use Systemback for all my backups, archiving, and imaging. To install it, just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:
sudo add-apt-repository -y ppa:nemh/systemback
sudo apt-get update
sudo apt-get install systemback
Solution 2:
TimeShift
It has a simple graphical interface but you can also use it from the terminal.
sudo apt-add-repository -y ppa:teejee2008/ppa
sudo apt-get update && sudo apt-get install timeshift -y
Solution 3:
If you don't mind working with the console try backup-manager
, it comes along with the distribution. The handling is done with one config file sitting in /etc.
sudo apt-get install backup-manager
To modify the file you could use nano in the console.
sudo nano /etc/backup-manager.conf
You won't need most of it. What I personally like is, that no additional packages are needed.
Here is a small example of a backup.
Where to store the files?
##############################################################
# Repository - everything about where archives are
#############################################################
# Where to store the archives
export BM_REPOSITORY_ROOT="/var/archives"
choose your Directory, where to put the files.
Pay close attention to the following settings there
# For security reasons, the archive repository and the generated
# archives will be readable/writable by a given user/group.
# This is recommended to set this to true.
export BM_REPOSITORY_SECURE="true"
# The repository will be readable/writable only by a specific
# user:group pair if BM_REPOSITORY_SECURE is set to true.
export BM_REPOSITORY_USER="root"
export BM_REPOSITORY_GROUP="root"
# You can also choose the permission to set the repository, default
# is 770, pay attention to what you do there!
export BM_REPOSITORY_CHMOD="770"
If you backup something like /home
or /movie
you might leave this option on, so only root and the root group might be able to access the backup
For a server backup (e.g. a multi user server and/or folders like /var/www/
/opt/
/etc/
/var/
) you might consider setting this option to false to preserve ownership/accessability of the files after a restore. Otherwise you'll need to manually set them after a restore.
Choose your backup-method
##############################################################
# Archives - let's focus on the precious tarballs...
##############################################################
# The backup method to use.
# Available methods are:
# - tarball
# - tarball-incremental
# - mysql
# - pgsql
# - svn
# - pipe
# - none
# If you don't want to use any backup method (you don't want to
# build archives) then choose "none"
choose
export BM_ARCHIVE_METHOD="tarball-incremental"
Choose the directories to backup
Further info can be found in the section
##############################################################
# Section "TARBALL"
# - Backup method: tarball
#############################################################
Here I checked the following options
export BM_TARBALL_FILETYPE="tar.bz2"
export BM_TARBALL_DIRECTORIES="/etc /var/www /home/wikibackup"
Choose rotation of master and incrementals
##############################################################
# The tarball-incremental method uses the same keys as the
# tarball method, plus two others.
#############################################################
I've choosen to do weekly full backups on monday (first day of the week). That means every monday I get a full backup and the rest of the week will be saved in different smaller incremental files. So restoring them would mean. Resotre the full backup and after that the incremental files, to get back the latest backup of your data.
export BM_TARBALLINC_MASTERDATETYPE="weekly"
export BM_TARBALLINC_MASTERDATEVALUE="1"
Cronjob
Use a simple cronjob to do the backup automatically
sudo -i
crontab -e
Enter the following
00 03 * * * /usr/sbin/backup-manager >/dev/null 2>&1
If you need a notification email remove this part
>/dev/null 2>&1