rsync 3.1.0 and OS X extended attributes

Software

rsync's rather fabulous retro logo

With rsync 3.1.0, we got several new features, performance improvements and broken extended attribute syncing in OS X. Using the -X flag, we get this:

rsync error: protocol incompatibility (code 2) at io.c(599) [sender=3.1.0]
rsync: [sender] write error: Broken pipe (32)

Patches have been commited, though the success rate of using them seems to be mixed. Given how critical rsync is to my “workflow”, I’m sticking with 3.0.9.

If you’re on Homebrew, Keithbsmiley identified the last brew before 3.1.0:

% brew install https://raw.github.com/Homebrew/homebrew-dupes/109dca908c6499116e07483d7afe8a1c3ef63ad6/rsync.rb

Alternatively, you can build and install the old fashioned way. As an example, I build my own material under /opt:

% cd /opt/src
% curl -O "http://rsync.samba.org/ftp/rsync/src/rsync-3.0.9.tar.gz"
% tar xzvf rsync-3.0.9.tar.gz
% cd rsync-3.0.9
% ./configure --prefix=/opt
% sudo make install clean

Update

The early pre–releases of 3.1.1 indicate they’ve fixed the issue. I’ve decided to skip 3.1.0 entirely and wait for this release.

Author bio and support

Me!

Ruben Schade is a technical writer and IaaS engineer in Sydney, Australia who refers to himself in the third person in bios. Wait, not BIOS… my brain should be EFI by now.

The site is powered by Hugo, FreeBSD, and OpenZFS on OrionVM, everyone’s favourite cloud infrastructure provider.

If you found this post helpful or entertaining, you can shout me a coffee or buy some silly merch. Thanks!