Rambo is a simple backup tool for web sites (Joomla!, WordPress and etc.) written in Bash.
Local (~/.local
):
git clone --depth=1 https://github.com/PopArtDesign/rambo ~/.local/lib/rambo && ln -s ~/.local/lib/rambo/bin/rambo ~/.local/bin/rambo
Global (/opt
):
sudo git clone --depth=1 https://github.com/PopArtDesign/rambo /opt/rambo && sudo ln -s /opt/rambo/bin/rambo /usr/local/bin/rambo
Rambo backups all site's data into a one .zip
archive. Thanks to it's plugins it can detect site's configuration like database, cache folders and etc. and include or exclude some data from the final backup.
In simple case you can just run:
rambo backup /path/to/site /path/to/backup.zip
To get more information about available commands try --help
rambo --help
To customize site backup process you can create a special config file in your site's root folder:
#
# The prefix 'xA4di35ie' added for security reasons,
# because site's root can be publicly available from the web.
# You can use any prefix you want or just omit it.
#
cat > xA4di35ie.rambo.conf <<CONFIG
# Also available: 'wordpress' and 'joomla'
# Try "rambo plugins" to see all available plugins
plugin: default
exclude: .git/* .zip
# Rambo can backup only one database
database_name: dbname
database_user: dbuser
database_password: dbpass
CONFIG
If you don't want to store Rambo's config in your site's root, you can create the config file outside:
cat > /etc/rambo/mysite.conf <<CONFIG
root: /var/www/mysite
plugin: default
include: index.html uploads/*
CONFIG
Then you should specify path to config file instead of site's root:
rambo backup /etc/rambo/mysite.conf mysite.zip
Local (~/.local
):
unlink ~/.local/bin/rambo; rm -rf ~/.local/lib/rambo
Global (/opt
):
sudo unlink /usr/local/bin/rambo; sudo rm -rf /opt/rambo
Copyright (c) Voronkovich Oleg. Distributed under the MIT.