<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
On 01/13/2011 06:14 PM, Wayne Davison wrote:
<blockquote
cite="mid:AANLkTikDeapZ1P-nJHDXPmkcrhSDhN7w-pHcX8wupTnM@mail.gmail.com"
type="cite">
<div class="gmail_quote">On Thu, Jan 13, 2011 at 10:24 AM, Jeff
Hansen <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:jhansen@cardaccess-inc.com">jhansen@cardaccess-inc.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
0.8ex; border-left: 1px solid rgb(204, 204, 204);
padding-left: 1ex;">
<div bgcolor="#ffffff" text="#000000"> This patch allows one
to repeat the '-x' option a third time to stop rsync from
traversing potentially cyclic bind mounts that are on the
same filesystem.</div>
</blockquote>
<div><br>
</div>
<div>See the support/mnt-excl script for one way exclude all
mounts (including bind mounts) from an rsync. The script also
recommends an awk command piped into an absolute-anchored
exclude, but does get some of the details wrong. Here's a
better explanation:</div>
<div><br>
</div>
<div>
<div>awk '{print $2}' /proc/mounts | rsync -avf 'merge,/- -'
/dir host:/dest/</div>
</div>
<div><br>
</div>
</div>
The above will get a list of all mount points on the system and
use it as an exclude list to prevent any mounts from being
traversed. However, what it will not do is to protect the related
mount points on the receiving side from deletion unless you happen
to be copying into an exactly-the-same path on the destination.
If you want the excluded directories to be protected on the
receiving side, you're better off using the mnt-excl script (which
tweaks the excludes to be relative to the transfer).<br
clear="all">
<br>
..wayne..<br>
</blockquote>
I hate to beat an (apparently) dead horse, but I've tested this
patch on several systems and I would really appreciate it if this
patch (or some variation of it) went into mainline. It correctly
syncs up whether the side with bind-mounts is local or remote.
Using scripts feels like an ugly work-around to the initial problem.<br>
<br>
-Jeff<br>
<br>
<div class="moz-signature">-- <br>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<p class="MsoNormal"><strong><b><font size="3" face="Times New
Roman"><span style="font-size: 12pt;"></span></font></b></strong>Jeff
Hansen<br>
</p>
<em><i><font size="2" face="Arial"><span style="font-size: 10pt;
font-family: Arial;">
</span></font></i></em><em><i><font size="2" face="Arial"><span
style="font-size: 10pt; font-family: Arial;"></span></font></i></em>
</div>
</body>
</html>