• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/ISSUE_TEMPLATE/H25-Jul-2020-5935

debian/H25-Jul-2020-11174

docs/H25-Jul-2020-2,9742,458

src/H25-Jul-2020-16,87612,915

testing/H25-Jul-2020-8,2676,788

tools/H25-Jul-2020-4,0613,159

.dockerignoreH A D25-Jul-202011 32

.gitignoreH A D25-Jul-2020420 3425

.travis.ymlH A D25-Jul-202011.1 KiB241225

CHANGELOG.mdH A D25-Jul-202077 KiB2,1961,492

CONTRIBUTING.mdH A D25-Jul-202024.2 KiB537398

COPYINGH A D25-Jul-202017.6 KiB342281

DockerfileH A D25-Jul-20201.1 KiB4236

MakefileH A D25-Jul-20202 KiB6533

PKG-INFOH A D25-Jul-20202.2 KiB4239

README.mdH A D25-Jul-20209.3 KiB241175

setup.cfgH A D25-Jul-202038 53

setup.pyH A D25-Jul-20208.8 KiB228182

tox.iniH A D25-Jul-20203 KiB8780

tox_dist.iniH A D25-Jul-2020778 2622

tox_root.iniH A D25-Jul-20201.1 KiB3329

tox_slow.iniH A D25-Jul-2020850 2824

README.md

1![rdiff-backup banner](docs/resources/logo-banner.png)
2
3<p align="center">
4  <strong>
5    <a href="https://rdiff-backup.net/">website</a>
67    <a href="https://rdiff-backup.net/docs/docs.html">docs</a>
89    <a href="https://lists.nongnu.org/mailman/listinfo/rdiff-backup-users">community</a>
10  </strong>
11</p>
12
13<p align="center">
14<a href="https://travis-ci.org/rdiff-backup/rdiff-backup"><img alt="Build Status" src="https://travis-ci.org/rdiff-backup/rdiff-backup.svg?branch=master"></a>
15<a href="COPYING"><img alt="License" src="https://img.shields.io/github/license/rdiff-backup/rdiff-backup"></a>
16<a href="http://hits.dwyl.io/rdiff-backup/rdiff-backup"><img alt="HitCount" src="http://hits.dwyl.io/rdiff-backup/rdiff-backup.svg"></a>
17</p>
18
19# rdiff-backup
20
21rdiff-backup is a simple backup tool which can be used locally and remotely,
22on Linux and Windows, and even cross-platform between both.
23Users have reported using it successfully on FreeBSD and MacOS X.
24
25Beside its ease of use, one of the main advantages of rdiff-backup is that it
26does use the same efficient protocol as rsync to transfer and store data.
27Because rdiff-backup only stores the differences from the previous backup to
28the next one (a so called
29[reverse incremental backup](https://en.wikipedia.org/wiki/Incremental_backup#Reverse_incremental)),
30the latest backup is always a full backup, making it easiest
31and fastest to restore the most recent backups, combining the space
32advantages of incremental backups while keeping the speed advantages of full
33backups (at least for recent ones).
34
35If the optional dependencies pylibacl and pyxattr are installed, rdiff-backup will support
36[Access Control Lists](https://en.wikipedia.org/wiki/Access-control_list#Filesystem_ACLs)
37and [Extended Attributes](https://en.wikipedia.org/wiki/Extended_file_attributes)
38provided the file system(s) also support these features.
39
40## INSTALLATION
41
42In older Linux distributions the rdiff-backup versions are of the 1.x series, which is not recommended for new installs anymore. Follow the instructions below to install the latest 2.x release of rdiff-backup.
43
44### Ubuntu Focal or Debian Bullseye or newer (has 2.0)
45
46```
47sudo apt install rdiff-backup
48```
49
50### Ubuntu backports for older versions (needs a backported 2.0)
51
52```
53sudo apt install software-properties-common
54sudo add-apt-repository ppa:rdiff-backup/rdiff-backup-backports
55sudo apt update
56sudo apt install rdiff-backup
57```
58
59### CentOS and RHEL 7 (From COPR)
60
61```
62sudo yum install yum-plugin-copr epel-release
63sudo yum copr enable frankcrawford/rdiff-backup
64sudo yum install rdiff-backup
65sudo yum install py3libacl pyxattr
66```
67
68> **NOTE:** the last line is optional to get ACLs and EAs support.
69
70### CentOS and RHEL 8 (From COPR)
71
72```
73sudo dnf install dnf-plugins-core epel-release
74sudo dnf copr enable frankcrawford/rdiff-backup
75sudo dnf --enablerepo=PowerTools install rdiff-backup
76```
77
78> **NOTE:** you can add the option `--setopt=install_weak_deps=False` to the
79	last line if you don't need ACLs and EAs support. You can install
80	`python3-pylibacl` and `python3-pyxattr` also separately.
81	Under RHEL, the repo to enable is [codeready-builder-for-rhel-8-x86_64-rpms](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/package_manifest/codereadylinuxbuilder-repository) in order to get access
82	to pyxattr, instead of PowerTools.
83
84### Fedora 32+
85
86```
87sudo dnf install rdiff-backup
88```
89
90> **NOTE:** for earlier versions, see the COPR instructions below.
91
92### Debian and derivatives, Raspbian, etc. (from PyPi)
93
94```
95sudo apt install python3-pip python3-setuptools python3-pylibacl python3-pyxattr
96sudo pip3 install rdiff-backup
97```
98
99> **NOTE:** If your platform is not i386 or amd64, e.g. ARM/MIPS/etc,
100  you may need the build dependencies `build-essentials`, `librsync-dev`.
101
102### CentOS and RHEL 6 (from PyPi)
103
104```
105sudo yum install centos-release-scl
106sudo yum install rh-python36 gcc libacl-devel
107scl enable rh-python36 bash
108sudo pip install rdiff-backup pyxattr pylibacl
109echo 'exec scl enable rh-python36 -- rdiff-backup "$@"' | sudo tee /usr/bin/rdiff-backup
110sudo chmod +x /usr/bin/rdiff-backup
111```
112
113### Fedora and derivatives (from PyPI)
114
115```
116sudo dnf install python3-pip python3-setuptools py3libacl python3-pyxattr
117sudo pip3 install rdiff-backup
118```
119
120> **NOTE:** If your platform is not i386 or amd64, e.g. ARM/MIPS/PowerPC/etc,
121  you may need the build dependencies `python3-devel`, `librsync-dev`.
122
123### Other Linux (From PyPi)
124
125You need to make sure that the following requirements are met:
126
127* Python 3.5 or higher
128* librsync 1.0.0
129* pylibacl (optional, to support ACLs)
130* pyxattr (optional, to support extended attributes) - the xattr library (without py) isn't regularly tested but should work and you will be helped
131* SSH for remote operations
132
133```
134curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
135sudo python3 get-pip.py
136sudo pip3 install rdiff-backup
137```
138
139### Windows
140
141Just download and unpack the file `rdiff-backup-VERSION.win32exe.zip`
142available as _asset_ attached to one of the releases available in the
143[releases section](https://github.com/rdiff-backup/rdiff-backup/releases) and
144drop the binary `rdiff-backup.exe` somewhere in your PATH and it should work,
145as it comes with all dependencies included.
146
147For remote operations, you will need to have an SSH package installed.
148We recommand using OpenSSH from http://www.mls-software.com/opensshd.html
149
150## BASIC USAGE
151
152Creating your first backup is as easy as calling `rdiff-backup <source-dir> <backup-dir>`
153(possibly as root), e.g. `rdiff-backup -v5 /home/myuser /run/media/myuser/MYUSBDRIVE/homebackup`
154would save your whole home directory (under Linux) to a USB drive (which you should have
155formatted with a POSIX file system, e.g. ext4 or xfs). Without the `-v5` (v for verbosity),
156rdiff-backup isn't very talkative, hence the recommendation.
157
158Subsequent backups can simply be done by calling exactly the same command, again and again.
159Only the differences will be saved to the backup directory.
160
161If you need to restore the latest version of a file you lost, it can be as simple as copying
162it back using normal operating system means (cp or copy, or even pointing your file browser at
163the backup directory). E.g. taking the above example `cp -i /run/media/myuser/MYUSBDRIVE/homebackup/mydir/myfile /home/myuser/mydir/myfile` and the lost file is back!
164
165There are many more ways to use and tweak rdiff-backup, they're documented in the man pages,
166in the [documentation directory](docs/), or on [our website](https://rdiff-backup.net).
167
168## TROUBLESHOOTING
169
170If you have everything installed properly, and it still doesn't work,
171see the enclosed [FAQ](docs/FAQ.md), the [rdiff-backup web page](https://rdiff-backup.net/)
172and/or the [rdiff-backup-users mailing list](https://lists.nongnu.org/mailman/listinfo/rdiff-backup-users).
173
174We're also happy to help if you create an issue to our
175[GitHub repo](https://github.com/rdiff-backup/rdiff-backup/issues). The most
176important is probably to explain what happened with which version of rdiff-backup,
177with which command parameters on which operating system version, and attach the output
178of rdiff-backup run with the very verbose option `-v9`.
179
180The FAQ in particular is an important reference, especially if you are
181using smbfs/CIFS, Windows, or have compiled by hand on Mac OS X.
182
183
184## CONTRIBUTING
185
186Rdiff-backup is an open source software developed by many people over a long period of time. There is no particular company backing the development of rdiff-backup, so we rely very much on individual contributors who "scratch their itch". **All contributions are welcome!**
187
188There are many ways to contribute:
189
190- Testing, troubleshooting and writing good bug reports that are easy for other developers to read and act upon
191- Reviewing and triaging [existing bug reports and issues](https://github.com/rdiff-backup/rdiff-backup/issues), helping other developers focus their efforts
192- Writing documentation (e.g. the [man page](https://github.com/rdiff-backup/rdiff-backup/blob/master/rdiff-backup.1)), or updating the webpage rdiff-backup.net
193- Packaging and shipping rdiff-backup in your own favorite Linux distribution or operating system
194- Running tests on your favorite platforms and fixing failing tests
195- Writing new tests to get test coverage up
196- Fixing bug in existing features or adding new features
197
198If you don't have anything particular in your mind but want to help out, just browse the list of issues. Both coding and non-coding tasks have been filed as issues.
199
200For source code related documentation see [docs/DEVELOP.md](DEVELOP.md)
201
202### Installing latest development release
203
204To provide meaningful bug reports and help with testing, please use the latest development release.
205
206#### Ubuntu and Debian development releases
207
208```
209sudo add-apt-repository ppa:rdiff-backup/rdiff-backup-development
210sudo apt update
211sudo apt install rdiff-backup
212```
213
214#### Fedora, CentOS and RHEL
215
216On CentOS and RHEL (7 and 8):
217
218```
219sudo yum install dnf-plugins-core epel-release
220sudo yum copr enable frankcrawford/rdiff-backup
221sudo yum install rdiff-backup
222```
223
224On Fedora 30+:
225
226```
227sudo dnf install dnf-plugins-core
228sudo dnf copr enable frankcrawford/rdiff-backup
229sudo dnf install rdiff-backup
230```
231
232#### PyPi pre-releases
233
234```
235sudo pip3 install rdiff-backup --pre
236```
237
238## Packaging status in distros
239
240[![Packaging status](https://repology.org/badge/vertical-allrepos/rdiff-backup.svg)](https://repology.org/project/rdiff-backup/versions)
241