diff --git a/README.md b/README.md index 4701093..6cb1f49 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,95 @@ -README.md +# RIBS - Rod's Incremental Backup System -This is Rod's Incremental Backup System +## Description + +With RIBS you can run automated incremental backups of one or more Linux systems to local or remote storage. + +## Who RIBS is for + +RIBS is intended for a system administrator who wants to have easily accessible snapshots of the state +of a specified part of a system at any point in time. + +## Dependencies + +Before using RIBS, ensure you have: + +* Python3 +* rsync + +These can be installed using the package manager of your Linux distribution. + +## Instructions for using RIBS + +### Install RIBS + +1. Download RIBS + + The easiest way is to run `wget https://gitserver.thermionic.net/rod.wright/RIBS/releases/download/2.0/RIBS-2.0.tar.gz` + + or visit https://gitserver.thermionic.net/rod.wright/RIBS/releases to download the specific package version you'd like to use. + +2. Extract the package + + `tar -zxvf RIBS-2.0.tar.gz` + +3. Change to the extracted package directory + + `cd RIBS-2.0` + +4. Run the installer as superuser + + `sudo ./install.sh` + + +### Configure RIBS + +RIBS operates through the use of configuration files. The format of the file is documented in the sample file, +[/etc/ribs/conf-available/ribs.conf.sample](dist/etc/ribs/conf-available/ribs.conf.sample) + +* Superuser configuration files are located in `/etc/ribs/conf-available`. If RIBS is run by a +superuser, those files will be used. A sample configuration file is provided. +* Standard user configuration files are located in the user's home directory in `.ribs/conf-available`. +* To enable automated usage of RIBS, the configuration file must be enabled +by creating a symbolic link in `/etc/ribs/conf-enabled` or `.ribs/conf-enabled` to the configuration file in `/etc/ribs/conf-available` or `.ribs/conf-available`. + +### Run RIBS +``` +usage: ribs [-h] [-s] [-c | -l | -e CONF_FILE | -d CONF_FILE | conf_file] + +Rod's Incremental Backup System, version 2.0 + +positional arguments: + conf_file Run RIBS using the specified config file. If none + specified, run all enabled config files, looking in + '~/.ribs/conf-enabled' for standard users, or in + '/etc/ribs/conf-enabled' for superusers. + +options: + -h, --help show this help message and exit + -s, --simulate simulate operations to be performed + -c, --config interactively create, remove, modify, enable, or + disable config files + -l, --list-configs list all config files + -e CONF_FILE, --enable-config CONF_FILE + enable a config file + -d CONF_FILE, --disable-config CONF_FILE + disable a config file +``` + +A script called `run_ribs_backups` is located in /usr/local/bin. +This script is intended to facilitate running ribs backups using cron. +To run system configs, either create a link to this script in one or +more of the /etc/cron.* directories or add a line calling this script +to the /etc/crontab file. That will run all enabled system configs. +To run user configs, the user should add a line calling this script +to their personal crontab. That will run all enabled user configs for +that user. + +## How to report problems + +To report an issue with RIBS, email me at software@rodsplace.net. + +## Terms of use + +RIBS is licensed under the [GNU General Public License v2](LICENSE) -To install, run sudo ./install.sh