[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
- <!--x-content-type: text/plain -->
- <!--x-date: Thu, 28 Jul 2005 00:58:17 -0400 -->
- <!--x-from-r13: fgrcura ng orr.arg (Egrcura Qevfgby) -->
- <!--x-message-id: [email protected] -->
- <!--x-reference: 1122524193.8889.9.camel@localhost --> "http://www.w3.org/TR/html4/loose.dtd">
- <!--x-subject: [ale] Versioning backup solution -->
- <li><em>date</em>: Thu, 28 Jul 2005 00:58:17 -0400</li>
- <li><em>from</em>: stephen at bee.net (Stephen Cristol)</li>
- <li><em>in-reply-to</em>: <1122524193.8889.9.camel@localhost></li>
- <li><em>references</em>: <1122524193.8889.9.camel@localhost></li>
- <li><em>subject</em>: [ale] Versioning backup solution</li>
I currently use rsync to remotely backup some userspace data. I've been
experimenting with using additional rsync features (requiring rsync
2.6.1 or later) to preserve previous backups. In a nut shell, after
doing a first backup, that is named with a timestamp. I then create a
symbolic link named ".previous" to the that data set. Subsequent
backups with rsync have the following additional options:
--delete --link-dest=$path/.previous
where $path is the directory where this set of backups are stored. If
the backup is successful, ".previous" is repointed, logs are updated,
etc.
These options cause rsync to create a new backup that is an increment
relative to ".previous". Files in the previous backup that have not
changed are created in the new backup as links (real links, not
symbolic links) to the files in the previous backup (--link-dest).
Files that no longer exist in the source are not copied or linked in
the new backup (--delete).
The end result is a collection of directories in $path named with
timestamps indicating when that backup occurred. I've got a script that
mostly does this, but it still has some rough edges.
Upsides to this approach:
- all the security of rsync
- the efficiency of rsync in determining what to transfer
- efficient storage of native file formats
Downsides to this approach:
- this can create an enormous number of links and I know of no tools to
manage them easily (e.g., if you want to prune the data set)
- managing disk space becomes more challenging ("du" still gives
correct answers; if you ask the right questions, they can be useful
answers, too)
S
--
Stephen Cristol
cristol at emory.edu
</pre>
<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<hr>
<ul><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><a name="00403" href="msg00403.html">[ale] Versioning backup solution</a></strong>
<ul><li><em>From:</em> kaboom at oobleck.net (Chris Ricker)</li></ul></li>
</ul></li></ul>
<!--X-Follow-Ups-End-->
<!--X-References-->
<ul><li><strong>References</strong>:
<ul>
<li><strong><a name="00401" href="msg00401.html">[ale] Versioning backup solution</a></strong>
<ul><li><em>From:</em> jimpop at yahoo.com (Jim Popovitch)</li></ul></li>
</ul></li></ul>
<!--X-References-End-->
<!--X-BotPNI-->
<ul>
<li>Prev by Date:
<strong><a href="msg00401.html">[ale] Versioning backup solution</a></strong>
</li>
<li>Next by Date:
<strong><a href="msg00403.html">[ale] Versioning backup solution</a></strong>
</li>
<li>Previous by thread:
<strong><a href="msg00401.html">[ale] Versioning backup solution</a></strong>
</li>
<li>Next by thread:
<strong><a href="msg00403.html">[ale] Versioning backup solution</a></strong>
</li>
<li>Index(es):
<ul>
<li><a href="maillist.html#00402"><strong>Date</strong></a></li>
<li><a href="threads.html#00402"><strong>Thread</strong></a></li>
</ul>
</li>
</ul>
<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
</body>
</html>