Rsync 3.2.4 has already been released and these are its news

After a year and a half of development the launch of the new version of rsync 3.2.4, version in which a series of improvements and bug fixes have been made.

For those who are new to Rsync, you should know that this is a file synchronization and backup utility that offers efficient transmission of incremental data, which also operates with compressed and encrypted data.

Using a delta encoding technique, it allows you to synchronize files and directories between two machines over a network or between two locations on the same machine, minimizing the volume of transferred data.

An important feature of Rsync not found in most programs or protocols is that the copy takes place with only one transmission in each direction. Rsync can copy or display contained directories and copy files, optionally using compression and recursion.

Acting as a server daemon, Rsync listens by default on TCP port 873, serving files in the native Rsync protocol or via a remote terminal such as RSH or SSH. In the latter case, the Rsync client executable must be installed on both the local and remote host.

Main news of Rsync 3.2.4

In this new version that is presented of Rsync 3.2.4 a new argument protection method has been proposed from the command line that resembles the “–protect-args” (“-s”) option previously available, but does not break the rrsync script (rsync restricted).

The protection boils down to special escape characters, including spaces, when passing requests to an external shell. The new method does not escape special characters within a quoted block, allowing a filename to be quoted without further escaping, eg "rsync -aiv host: 'a simple file.pdf' is now allowed". To return the old behavior, the option “–old-args” and the environment variable “RSYNC_OLD_ARGS=1” are proposed.

Another change that stands out in this new version is that implemented ability to update xattrs attributes for files in read-only mode if the user has permission to change access rights (for example, when running as root).
Added and enabled by the default parameter “–info=NONREG” to display warnings about transferring special files.

The script atomic-rsync has been rewritten in Python and extended with the ability to ignore codes return non-zero. The default is to ignore code 24, which is returned when files go missing while rsync is running (for example, code 24 is returned for temporary files that were present at the time of initial indexing but were removed at the time of initial indexing). of migration).

Resolved a longstanding issue with the handling of decimal point characters based on the current locale. For scripts designed to process only the character "." in numbers, in case of compatibility violation, you can set the “C” locale.

In addition, a vulnerability (CVE-2018-25032) in the included code of the zlib library that causes a buffer overflow when trying to compress a specially prepared character sequence has also been fixed.

Of the other changes that stand out from this new version:

  • Implemented the “–fsync” option to call the fsync() function on every file operation to flush the disk cache.
  • The rsync-ssl script uses the "-verify_hostname" option when accessing openssl.
  • Added “–copy-devices” option to copy device files as normal files.
  • Reduced memory consumption when incrementally transferring a large number of small directories.
  • On the macOS platform, the “–atimes” option is enabled.
  • The rrsync (restricted rsync) script has been rewritten in Python.
  • Added new options "-munge", "-no-lock" and "-no-del".
  • The block options “–copy-links” (-L), “–copy-dirlinks” (-k) and “–keep-dirlinks” (-K) are enabled by default so that attacks that manipulate symbolic links to directories be more difficult.
  • The munge-symlinks script has been rewritten in Python.

Finally, if you are interested in being able to know more about it, you can consult the details in the following link


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.