Rsync

rsync
Original author(s)Andrew Tridgell, Paul Mackerras[1]
Developer(s)Wayne Davison[2]
Initial releaseJune 19, 1996; 28 years ago (1996-06-19)[1]
Stable release
3.3.0[3] Edit this on Wikidata / 6 April 2024; 7 months ago (6 April 2024)
Repository
Written inC
PlatformCross-platform
TypeData transfer, differential backup
License2007: GPL-3.0-or-later[a][4][5][6]
2007: GPL-3.0-only[b]
2007: GPL-2.0-only[c]
1996: GPL-2.0-or-later[d][7]
Websitersync.samba.org Edit this on Wikidata

rsync (remote sync) is a utility for transferring and synchronizing files between a computer and a storage drive and across networked computers by comparing the modification times and sizes of files.[8] It is commonly found on Unix-like operating systems and is under the GPL-3.0-or-later license.[4][5][9][10][11][12]

rsync is written in C as a single threaded application.[13] The rsync algorithm is a type of delta encoding, and is used for minimizing network usage. Zstandard, LZ4, or Zlib may be used for additional data compression,[8] and SSH or stunnel can be used for security.

rsync is typically used for synchronizing files and directories between two different systems. For example, if the command rsync local-file user@remote-host:remote-file is run, rsync will use SSH to connect as user to remote-host.[14] Once connected, it will invoke the remote host's rsync and then the two programs will determine what parts of the local file need to be transferred so that the remote file matches the local one. One application of rsync is the synchronization of software repositories on mirror sites used by package management systems.[15][16]

rsync can also operate in a daemon mode (rsyncd), serving and receiving files in the native rsync protocol (using the rsync:// syntax).

  1. ^ a b Tridgell, Andrew (19 June 1996). "First release of rsync – rcp replacement". Newsgroupcomp.os.linux.announce. Usenet: [email protected]. Archived from the original on 8 November 2011. Retrieved 19 July 2007.
  2. ^ Cite error: The named reference rsync-website was invoked but never defined (see the help page).
  3. ^ "NEWS for rsync 3.3.0 (6 Apr 2024)". 6 April 2024. Retrieved 7 April 2024.
  4. ^ a b "News".
  5. ^ a b "tweaking the license text a bit more".
  6. ^ "rsync's license".
  7. ^ "rsync's license".
  8. ^ a b "rsync(1) – Linux man page". linux.die.net. Archived from the original on 1 January 2017. Retrieved 2 February 2017.
  9. ^ Sayood, Khalid (18 December 2002). Lossless compression handbook. Elsevier. ISBN 9780080510491. Retrieved 18 August 2014.
  10. ^ Web content caching and distribution: proceedings of the 8th International Workshop. Springer Science & Business Media. 2004. p. 316. ISBN 9781402022579. Retrieved 18 August 2014 – via Internet Archive. rsync widely used.
  11. ^ Rasch, David; Burns, Randal; In-Place Rsync: File Synchronization for Mobile and Wireless Devices Archived 13 April 2016 at the Wayback Machine, Department of Computer Science, Johns Hopkins University
  12. ^ Dempsey, Bert J.; Weiss, Debra (30 April 1999). "Towards an Efficient, Scalable Replication Mechanism for the I2-DSI Project". Technical Report TR-1999-01. CiteSeerX 10.1.1.95.5042.
  13. ^ "Bash - Speed up rsync with Simultaneous/Concurrent File Transfers? - Stack Overflow". Archived from the original on 6 August 2019. Retrieved 18 December 2019.
  14. ^ "Using Rsync and SSH". Troy.jdmz.net. Retrieved 18 August 2014.
  15. ^ "Using and running mirrors". GNU Project. Archived from the original on 16 April 2020. Retrieved 15 April 2020.
  16. ^ "How to create public mirrors for CentOS". CentOS wiki. Archived from the original on 1 April 2020. Retrieved 15 April 2020.


Cite error: There are <ref group=lower-alpha> tags or {{efn}} templates on this page, but the references will not show without a {{reflist|group=lower-alpha}} template or {{notelist}} template (see the help page).