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/ramboGlobal (/opt):
sudo git clone --depth=1 https://github.com/PopArtDesign/rambo /opt/rambo && sudo ln -s /opt/rambo/bin/rambo /usr/local/bin/ramboRambo 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.zipTo get more information about available commands try --help
rambo --helpTo 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
CONFIGIf 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/*
CONFIGThen you should specify path to config file instead of site's root:
rambo backup /etc/rambo/mysite.conf mysite.zipLocal (~/.local):
unlink ~/.local/bin/rambo; rm -rf ~/.local/lib/ramboGlobal (/opt):
sudo unlink /usr/local/bin/rambo; sudo rm -rf /opt/ramboCopyright (c) Voronkovich Oleg. Distributed under the MIT.