From 7e9fefd92a33c91fb5af24a5cc7b3e7bb1b54a9b Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Fri, 22 May 2015 23:28:55 +0200 Subject: [PATCH 1/4] updated CHANGES --- CHANGES | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index 95f5b9e03..245559d1b 100644 --- a/CHANGES +++ b/CHANGES @@ -19,7 +19,7 @@ Version - less memory usage: add global option --no-cache-files - fix traceback when trying to do unsupported passphrase change, fixes attic #189 - datetime does not like the year 10.000, fixes attic #139 -- docs improvements, fixes, updates +- docs and faq improvements, fixes, updates - cleanup crypto.pyx, make it easier to adapt to other modes - extract: if --stdout is given, write all extracted binary data to stdout - create: if "-" is given as path, read binary from stdin @@ -40,9 +40,16 @@ Version - implement rename repo::oldname newname - implement create --progress - source: refactor indicator (status) and item processing -- implement delete (also deletes local cache) +- implement delete repo (also deletes local cache) - better create -v output -- upgraded versioneer, fixes attic #257 +- upgraded versioneer, PEP440 compliance, fixes attic #257 +- source: use py.test for better testing, flake8 for code style checks +- source: fix tox >=2.0 compatibility +- toplevel error handler: show tracebacks for better error analysis +- sigusr1 / sigint handler to print current file infos - attic PR #286 +- pypi package: add python version classifiers, add FreeBSD to platforms +- fix Repository._active_txn state when lock upgrade fails +- RPCError: include the exception args we get from remote Attic Changelog From 9d1560f830c5113224b30b67000b7661eb4a1410 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Fri, 22 May 2015 23:56:29 +0200 Subject: [PATCH 2/4] faq: updates, fixes --- docs/faq.rst | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/docs/faq.rst b/docs/faq.rst index a99fd8f39..49d100598 100644 --- a/docs/faq.rst +++ b/docs/faq.rst @@ -16,16 +16,16 @@ Can I backup VM disk images? Also, we have optional simple sparse file support for extract. Can I backup from multiple servers into a single repository? - Yes, but in order for the deduplication used by Borg to work, it + Yes, but in order for the deduplication used by |project_name| to work, it needs to keep a local cache containing checksums of all file chunks already stored in the repository. This cache is stored in - ``~/.cache/borg/``. If Borg detects that a repository has been + ``~/.cache/borg/``. If |project_name| detects that a repository has been modified since the local cache was updated it will need to rebuild the cache. This rebuild can be quite time consuming. So, yes it's possible. But it will be most efficient if a single repository is only modified from one place. Also keep in mind that - Borg will keep an exclusive lock on the repository while creating + |project_name| will keep an exclusive lock on the repository while creating or deleting archives, which may make *simultaneous* backups fail. Which file types, attributes, etc. are preserved? @@ -62,8 +62,18 @@ How can I specify the encryption passphrase programmatically? key file based encryption with a blank passphrase. See :ref:`encrypted_repos` for more details. -When backing up to remote servers, is data encrypted before leaving the local machine, or do I have to trust that the remote server isn't malicious? - Yes, everything is encrypted before leaving the local machine. +When backing up to remote encrypted repos, is encryption done locally? + Yes, file and directory metadata and data is locally encrypted, before + leaving the local machine. We do not mean the transport layer encryption + by that, but the data/metadata itself. Transport layer encryption (e.g. + when ssh is used as a transport) applies additionally. + +When backing up to remote servers, do I have to trust the remote server? + Yes and No. + No, as far as data confidentiality is concerned - all your files/dirs data + and metadata are stored in their encrypted form into the repository. + Yes, as an attacker with access to the remote server could delete (or + otherwise make unavailable) all your backups. If a backup stops mid-way, does the already-backed-up data stay there? I.e. does |project_name| resume backups? Yes, during a backup a special checkpoint archive named ``.checkpoint`` is saved every 5 minutes @@ -75,11 +85,17 @@ If it crashes with a UnicodeError, what can I do? export LANG=en_US.UTF-8 # or similar, important is correct charset +If I want to run |project_name| on a ARM CPU older than ARM v6? + You need to enable the alignment trap handler to fixup misaligned accesses: + + echo "2" > /proc/cpu/alignment + Why was Borg forked from Attic? - Borg was created in may 2015 in response to the difficulty of - getting new merge requests and larger changes incorporated into - attic. more details can be found in the fairly long discussion - in attic issue queue (found in `ticket 217 + Borg was created in May 2015 in response to the difficulty of + getting new code or larger changes incorporated into Attic and + establishing a bigger developer community / more open development. + + More details can be found in `ticket 217 `_) that led to the fork. Borg intends to be: @@ -93,7 +109,7 @@ Why was Borg forked from Attic? * give feedback on PRs that can't be accepted "as is" * discuss openly, don't work in the dark * changing: + * Borg is not compatible with Attic * do not break compatibility accidentally, without a good reason - or without warning - * Borg is not backwards-compatible with attic - * major versions may not be compatible with older releases + or without warning. allow compatibility breaking for other cases. + * if major version number changes, it may have incompatible changes From f6442fe7f0a137e929f0b27381568a48f12a4eb0 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Sat, 23 May 2015 00:12:17 +0200 Subject: [PATCH 3/4] automate updating the borgbackup.github.io repo/website cd docs ; make gh-io --- docs/Makefile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/Makefile b/docs/Makefile index 21d6d69c7..5c5469597 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -138,5 +138,13 @@ gh-pages: html (cd $$GH_PAGES_CLONE && git add -A && git commit -m 'Updated gh-pages' && git push) && \ rm -rf $$GH_PAGES_CLONE +gh-io: html + GH_IO_CLONE="`mktemp -d`" && \ + git clone git@github.com:borgbackup/borgbackup.github.io.git $$GH_IO_CLONE && \ + (cd $$GH_IO_CLONE && git rm -r *) && \ + cp -r _build/html/* $$GH_IO_CLONE && \ + (cd $$GH_IO_CLONE && git add -A && git commit -m 'Updated borgbackup.github.io' && git push) && \ + rm -rf $$GH_IO_CLONE + inotify: html while inotifywait -r . --exclude usage.rst --exclude '_build/*' ; do make html ; done From cd3a76909d22e43b77494c4e29636d8da0630593 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Sat, 23 May 2015 00:15:58 +0200 Subject: [PATCH 4/4] faq: markup fixes, typos --- docs/faq.rst | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/faq.rst b/docs/faq.rst index 49d100598..180ac0edb 100644 --- a/docs/faq.rst +++ b/docs/faq.rst @@ -86,7 +86,7 @@ If it crashes with a UnicodeError, what can I do? export LANG=en_US.UTF-8 # or similar, important is correct charset If I want to run |project_name| on a ARM CPU older than ARM v6? - You need to enable the alignment trap handler to fixup misaligned accesses: + You need to enable the alignment trap handler to fixup misaligned accesses:: echo "2" > /proc/cpu/alignment @@ -96,19 +96,22 @@ Why was Borg forked from Attic? establishing a bigger developer community / more open development. More details can be found in `ticket 217 - `_) that led to the fork. + `_ that led to the fork. Borg intends to be: * simple: + * as simple as possible, but no simpler * do the right thing by default, but offer options * open: + * welcome feature requests * accept pull requests of good quality and coding style * give feedback on PRs that can't be accepted "as is" * discuss openly, don't work in the dark * changing: + * Borg is not compatible with Attic * do not break compatibility accidentally, without a good reason or without warning. allow compatibility breaking for other cases.