https://github.com/linuxwhatelse/dups
It deduplicates things - Backup as simple as possible.
https://github.com/linuxwhatelse/dups
backup python rsync
Last synced: 10 months ago
JSON representation
It deduplicates things - Backup as simple as possible.
- Host: GitHub
- URL: https://github.com/linuxwhatelse/dups
- Owner: linuxwhatelse
- License: gpl-3.0
- Created: 2018-06-25T08:44:08.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2022-01-02T08:21:00.000Z (over 4 years ago)
- Last Synced: 2025-05-07T03:34:29.963Z (about 1 year ago)
- Topics: backup, python, rsync
- Language: Python
- Size: 299 KB
- Stars: 4
- Watchers: 1
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README-template.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Overview
dups is a simple backup utility using [rsync](https://rsync.samba.org/) for
its heavy lifting while adding some convenience on top.
To reduce disk space and subsequent backup times, dups relies on rsyncs
`--link-dest` option which hardlinks to existing unchanged files.
## Motivation
Being unable to find a backup utility which would allow me to...
* backup selected files and folders
* exclude files and folders based on their path or patterns
* easily access stored files without special tools
(This includes the backup software itself)
* doesn't come with to much bloat
...I ended up writing my own.
This is not to say other software is bad, just not what I was
looking for.
## Getting Started
See [deployment](#deployment) for notes on how to deploy dups on a live system.
### Prerequisites
Required system packages:
```
[[ req-sys ]]
```
Required python packages:
```
[[ req-py ]]
```
### Installing
After all [prerequisites](#prerequisites) have been met, dups can be installed
with:
```sh
$ git clone https://github.com/linuxwhatelse/dups
$ cd dups
$ python setup.py install
```
System files for dbus, systemd etc. can be included by setting
`INCLUDE_DATA_FILES` prior to running the installation.
This will require root access to copy the files to their respective location
and is therefore ill-advised for live systems.
For live systems, see [deployment](#deployment) instead.
```sh
$ export INCLUDE_DATA_FILES="systemd dbus desktop"
$ python setup.py install
```
For possible values see `get_data_files` in [setup.py](setup.py).
Build files/scripts for some distributions can be found in
[data/pkg/](data/pkg/).
### Usage
For a full setup guide and usage examples see the
[wiki](https://github.com/linuxwhatelse/dups/wiki).
As a quick overview, here's dups main help message.
Individual commands may have additional arguments.
```
[[ help ]]
```
## Deployment
Packages for some distributions are automatically built and are available in
the [release](https://github.com/linuxwhatelse/dups/releases) section.
Additionally, the following distributions have a version accessible through
their package-manager.
| Distribution | Link |
| --- | --- |
| archlinux | [aur - python-dups-git](https://aur.archlinux.org/packages/python-dups-git/) |
## Contributing
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
## Authors
* **tadly** - *Initial work* - [tadly](https://github.com/tadly)
## Credits
* **Andela Denaro** - *Logo design* - [andeladenaro](https://github.com/andeladenaro)
## License
This project is licensed under the GNU General Public License v3.0 - see the
[LICENSE](LICENSE) file for details