backup-rclone/README.md
2023-10-24 13:56:00 +02:00

35 lines
1.6 KiB
Markdown

# Backup-RClone
**DISCLAIMER!!** I recommend using [BorgBackup](https://www.borgbackup.org/) for production use! This script works, but it isn't fast nor efficient!
This script can create a backup of directories on a remote server. In addition to RClone's own encryption, the files can be backed up in plain text or be encrypted with GPG/PGP.
## Dependencies
* rclone
* sqlite3
## Features
* Backup over RClone
* Encryption of the files
* configuration files per archive directory
## Installation
```
git clone https://git.marcelsite.com/marcel/backup-rclone.git
cd backup-rclone
chmod u+x backup-rclone.sh
```
## Usage
The RClone share name is currently hardcoded as "backup:", so you need to create a share called "backup".
To make a backup, you need to put a `.backup.env`-file into the root of the directory you want to back up.
An example file is inside of this repository. You need to edit the file first to your liking:
* enctype: if you want the files to be encrypted pre-upload. (gpg: encrypt for RECIPIENT_ID; plain: don't encrypt)
* include: (optional) directories/files to consider for a backup
* exclude: (optional) directories/files to never backup, even if in include
* backdir: root directory on the remote server (e.g. backup:pc1/documents)
* hashdb: path to the database file on the remote server
* RECIPIENT_ID: (only if enctype="gpg") the ID of the recipient's public key
After creating the file, you can start a backup with `./backup-rclone.sh <directory name>`, e.g.: `./backup-rclone.sh /home/user/documents` (a .backup.env file need st obe in that directory!).