ixesha/README.md

68 lines
1.4 KiB
Markdown
Raw Normal View History

2018-01-21 11:38:52 +00:00
# Ixesha
2018-01-21 11:46:11 +00:00
🗄 Make incremental snapshots to backup any folder to any location/server.
2018-01-21 11:38:52 +00:00
2018-01-21 11:46:11 +00:00
🐍 Written in python.
2018-01-21 11:38:52 +00:00
2018-01-21 11:46:11 +00:00
###### Example 💥
2018-01-21 11:38:52 +00:00
```bash
python3 ixesha.py --backup ~/ --output /mnt/backup/home
```
## Setup
2018-01-21 11:46:11 +00:00
### Requirements
2018-01-21 12:36:53 +00:00
2018-01-21 11:38:52 +00:00
- `Python3`
- `rsync` (min. v3.1.1)
2018-01-21 11:46:11 +00:00
### Installation 🚂
2018-01-21 11:38:52 +00:00
###### macOS
2018-01-21 11:42:01 +00:00
1. Install [brew](https://brew.sh/): `/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"`
2018-01-21 11:38:52 +00:00
2. Install `python3` and `rsync`: `brew install python3 rsync`
###### debian / ubuntu
1. `apt install -y python3 rsync`
###### windows
2018-01-21 11:46:11 +00:00
Well... I don't know...
2018-01-21 11:38:52 +00:00
2018-01-21 11:46:11 +00:00
## Usage 👾
2018-01-21 11:38:52 +00:00
2018-01-21 11:46:11 +00:00
### Run 🚀
2018-01-21 11:38:52 +00:00
```bash
2018-01-21 11:42:01 +00:00
python3 ixesha.py --backup <my-folder> --output <where-to-save-it>
2018-01-21 11:38:52 +00:00
```
2018-01-21 11:42:01 +00:00
or with only bash: ```./ixesha -b <my-folder> -o <where-to-save-it>```
2018-01-21 11:38:52 +00:00
###### Example
Backup my home folder for example to some mounted drive
2018-01-21 12:36:53 +00:00
2018-01-21 11:38:52 +00:00
```bash
python3 ixesha.py --backup ~/ --output /mnt/backupdrive/home
```
### Arguments
- `-h` `--help` Show help dialog
- `-b` `--backup` The folder to be backed up
- `-o` `--output` Location where the snapshots will be saved
2018-01-21 11:46:11 +00:00
### Cron 🕰
2018-01-21 11:38:52 +00:00
If you want to run it every x... you can create a cronjob
###### Example:
Run the script every 5 Min (More details on [cronjobs](http://www.cyberciti.biz/faq/how-do-i-add-jobs-to-cron-under-linux-or-unix-oses/))
1. Edit your cron file with: `crontab -e`
2. Add: `*/5 * * * * python3 /path/to/ixesha.py -b /some/folder -o /some/backup/location`