rsync

NameLast commit messageLast commit date
.githubCI: add simd-checksum to expected-skipped on macOS and Cygwin8 months ago
docSpelling fixes from a Fossies run done by Jens.6 years ago
libmake lots of global variables `const`1 year ago
m4Silence autoconf warnings.4 years ago
packagingPreparing for release of 3.4.2 [buildall]6 months ago
poptpopt: remove obsolete findme.c & findme.h1 year ago
supportrsync: Add missing `dirs` long option11 months ago
testhelpUse /usr/bin/env for increased portability.6 years ago
testsuiteruntests.py: add -j/--parallel option for parallel test execution6 months ago
zlibzlib: convert K&R function definitions to ANSI style6 months ago
.gitattributesForce git line endings (#68)6 years ago
.gitignorechore: gitignore MacOS debug symbols1 year ago
access.cFix glibc-2.43 constness warnings7 months ago
acls.cacl: fixed ACL ID mapping for non-root9 months ago
authenticate.cPreparing for release of 3.2.7pre14 years ago
backup.cPreparing for release of 3.2.4pre24 years ago
batch.cmake lots of global variables `const`1 year ago
byteorder.hPreparing for release of 3.2.54 years ago
case_N.hTwo more spelling fixes and some year updates.6 years ago
checksum.cFix glibc-2.43 constness warnings7 months ago
chmod.cTwo more spelling fixes and some year updates.6 years ago
cleanup.cMention file & line on OOM and overflow errors.6 years ago
clientname.cfix signed integer overflow in proxy protocol v2 header parsing6 months ago
clientserver.ccall tzset() before chroot to cache timezone data6 months ago
cmd-or-msgRename cmdormsg -> cmd-or-msg.5 years ago
compat.cFix glibc-2.43 constness warnings7 months ago
config.guessMention updated config files.3 years ago
config.subMention updated config files.3 years ago
configureImprove the per-branch build dir support6 years ago
configure.acconfigure.ac: check for xattr support both in libc and in -lattr1 year ago
connection.cSet Copyright years and make them easier to update6 years ago
COPYINGMinor cleanup (#214)5 years ago
csprotocol.txtA few more doc tweaks & comment tweaks.4 years ago
daemon-parm.awkmake lots of global variables `const`1 year ago
daemon-parm.txtSome "use chroot" improvements.4 years ago
define-from-md.awkUse documentation to extract 2 more .h lists6 years ago
delete.cPreparing for release of 3.3.0 [buildall]2 years ago
DoxyfileDon't generate code for zlib and popt.24 years ago
errcode.hTweak the copyright year.7 years ago
exclude.cFix glibc-2.43 constness warnings7 months ago
fileio.cPreparing for release of 3.3.0pre1 [buildall]3 years ago
flist.cmake lots of global variables `const`1 year ago
generator.cFix use-after-free in generator1 year ago
getfsdev.cSome indentation fixes.6 years ago
getgroups.cSome misc cleanup6 years ago
hashtable.cPreparing for release of 3.2.7pre14 years ago
help-from-md.awkUse documentation to extract 2 more .h lists6 years ago
hlink.chlink: Fix function pointer cast in qsort()1 year ago
ifuncs.hPreparing for release of 3.2.4pre24 years ago
install-shshell: test -a|o is not POSIX (#250)5 years ago
INSTALL.mdadded apple silicon path details2 years ago
inums.hTweak the copyright year.7 years ago
io.cFix glibc-2.43 constness warnings7 months ago
io.hTweak the copyright year.7 years ago
itypes.hPreparing for release of 3.2.4pre24 years ago
latest-year.hPreparing for release of 3.4.2 [buildall]6 months ago
loadparm.cFix glibc-2.43 constness warnings7 months ago
log.cImprove various things in the checksum code4 years ago
main.cDo not clean DISPLAY unconditionally1 year ago
Makefile.inreplace runtests.sh with runtests.py6 months ago
match.cprevent information leak off the stack1 year ago
maybe-make-manAdd --force-link-text to md-convert.3 years ago
md-convertMake the build reproducible1 year ago
md2manUnify md parsing scripts & improve non-man html conversions.4 years ago
mkgitverFix version verification when "\|" doesn't work in sed.4 years ago
mkproto.awkUse touch for proto.h-tstamp since one awk wasn't updating mtime.6 years ago
NEWS.mdPreparing for release of 3.4.2 [buildall]6 months ago
options.cUsing a correct time in log file1 year ago
params.cSome memory allocation improvements6 years ago
pipe.cSome indentation fixes.6 years ago
prepare-sourceSome word fixes.4 years ago
prepare-source.makDon't make .PHONY the first target in a Makefile.6 years ago
progress.cPreparing for release of 3.2.4pre24 years ago
README.mdadded security email address to README.md1 year ago
receiver.cfixed symlink race condition in sender1 year ago
rounding.cCheck extra rounding using an int64.6 years ago
rsync-ssladd ssl/tls key option (#216)5 years ago
rsync-ssl.1.mdLink to rsyncd.conf page server-setup details.4 years ago
rsync.1.mdfeat: add compress threads to man page3 years ago
rsync.cSome checksum buffer fixes.2 years ago
rsync.hFix FLAG_GOT_DIR_FLIST collission with FLAG_HLINKED1 year ago
rsync3.txtA few more https changes.6 years ago
rsyncd.conf.5.mdrsyncd.conf: document the temp dir parameter6 months ago
rsyncsh.txtNotes on an interactive shell for rsync.25 years ago
runtests.pyruntests.py: preserve test-execution order in skipped list6 months ago
SECURITY.mdupdate maintainer address1 year ago
sender.cfixed an invalid access to files array1 year ago
shconfig.inBetter fakeroot support helps Solaris.15 years ago
simd-checksum-avx2.SMake asm use more selectable4 years ago
simd-checksum-x86_64.cppfix uninitialized mul_one in AVX2 checksum and add SIMD checksum test8 months ago
socket.cSome memory allocation improvements6 years ago
stunnel-rsyncd.conf.inChange the rsync-ssl helper script6 years ago
syscall.csyscall: fix a Y2038 bug by replacing Int32x32To64 with multiplication1 year ago
t_stub.cImprove packaging/var-checker.1 year ago
t_unsafe.cfixed symlink race condition in sender1 year ago
tech_report.texupdates to reflect new samba.org domain the main web site is now http://rsync.samba.org/27 years ago
testrun.cLet's cast getpid() to an int instead of a long for snprintf().15 years ago
tls.cUsing a correct time in log file1 year ago
TODOA few more https changes.6 years ago
token.creject negative token values in compressed stream receivers10 months ago
trimslash.cfixed symlink race condition in sender1 year ago
uidlist.cPreparing for release of 3.2.5pre14 years ago
usage.cCygwin needs stdout flushed. [buildall]4 years ago
util1.cUsing a correct time in log file1 year ago
util2.czero all new memory from allocations6 months ago
version.hPreparing for release of 3.4.2 [buildall]6 months ago
wildtest.cmake lots of global variables `const`1 year ago
wildtest.txtA few extra directory-style matching tests.20 years ago
xattrs.cxattrs: fixed count in qsort6 months ago
README.md

WHAT IS RSYNC?

Rsync is a fast and extraordinarily versatile file copying tool for both remote and local files.

Rsync uses a delta-transfer algorithm which provides a very fast method for bringing remote files into sync. It does this by sending just the differences in the files across the link, without requiring that both sets of files are present at one of the ends of the link beforehand. At first glance this may seem impossible because the calculation of diffs between two files normally requires local access to both files.

A technical report describing the rsync algorithm is included with this package.

USAGE

Basically you use rsync just like scp, but rsync has many additional options. To get a complete list of supported options type:

rsync --help

See the manpage for more detailed information.

BUILDING AND INSTALLING

If you need to build rsync yourself, check out the INSTALL page for information on what libraries and packages you can use to get the maximum features in your build.

SETUP

Rsync normally uses ssh or rsh for communication with remote systems. It does not need to be setuid and requires no special privileges for installation. You must, however, have a working ssh or rsh system. Using ssh is recommended for its security features.

Alternatively, rsync can run in `daemon' mode, listening on a socket. This is generally used for public file distribution, although authentication and access control are available.

To install rsync, first run the "configure" script. This will create a Makefile and config.h appropriate for your system. Then type "make".

Note that on some systems you will have to force configure not to use gcc because gcc may not support some features (such as 64 bit file offsets) that your system may support. Set the environment variable CC to the name of your native compiler before running configure in this case.

Once built put a copy of rsync in your search path on the local and remote systems (or use "make install"). That's it!

RSYNC DAEMONS

Rsync can also talk to "rsync daemons" which can provide anonymous or authenticated rsync. See the rsyncd.conf(5) manpage for details on how to setup an rsync daemon. See the rsync(1) manpage for info on how to connect to an rsync daemon.

WEB SITE

For more information, visit the main rsync web site.

You'll find a FAQ list, downloads, resources, HTML versions of the manpages, etc.

MAILING LISTS

There is a mailing list for the discussion of rsync and its applications that is open to anyone to join. New releases are announced on this list, and there is also an announcement-only mailing list for those that want official announcements. See the mailing-list page for full details.

BUG REPORTS

The bug-tracking web page has full details on bug reporting.

That page contains links to the current bug list, and information on how to do a good job when reporting a bug. You might also like to try searching the Internet for the error message you've received, or looking in the mailing list archives.

To send a bug report, follow the instructions on the bug-tracking page of the web site.

Alternately, email your bug report to rsync@lists.samba.org.

For security issues please email details of the issue to rsync.project@gmail.com.

GIT REPOSITORY

If you want to get the very latest version of rsync direct from the source code repository, then you will need to use git. The git repo is hosted on GitHub and on Samba's site.

See the download page for full details on all the ways to grab the source.

Rsync was originally written by Andrew Tridgell and Paul Mackerras. Many people from around the world have helped to maintain and improve it.

Rsync may be used, modified and redistributed only under the terms of the GNU General Public License, found in the file COPYING in this distribution, or at the Free Software Foundation.