diff --git a/README.rst b/README.rst index 44551953b..229ef9901 100644 --- a/README.rst +++ b/README.rst @@ -1,6 +1,20 @@ -|screencast_basic| +This is borg2! +-------------- -More screencasts: `installation`_, `advanced usage`_ +Please note that this is the README for borg2 / master branch. + +borg2 is currently in beta testing. + +For the stable version's docs, please see there: + +https://borgbackup.readthedocs.io/en/stable/ + +TODO: the screencasts need a remake using borg2, see there: + +https://github.com/borgbackup/borg/issues/6303 + +.. |screencast_basic| +.. More screencasts: `installation`_, `advanced usage`_ What is BorgBackup? ------------------- @@ -56,8 +70,9 @@ Main features * quick detection of unmodified files **Data encryption** - All data can be protected using 256-bit AES encryption, data integrity and - authenticity is verified using HMAC-SHA256. Data is encrypted clientside. + All data can be protected client-side using 256-bit authenticated encryption + (AES-OCB or chacha20-poly1305), ensuring data confidentiality, integrity and + authenticity. **Obfuscation** Optionally, borg can actively obfuscate e.g. the size of files / chunks to @@ -86,7 +101,7 @@ Main features you can just run them on these platforms: * Linux - * Mac OS X + * macOS * FreeBSD * OpenBSD and NetBSD (no xattrs/ACLs support or binaries yet) * Cygwin (experimental, no binaries yet) @@ -100,35 +115,31 @@ Main features Easy to use ~~~~~~~~~~~ -Initialize a new backup repository (see ``borg init --help`` for encryption options):: +For ease of use, set the BORG_REPO environment variable:: - $ borg init -e repokey /path/to/repo + $ export BORG_REPO=/path/to/repo -Create a backup archive:: +Create a new backup repository (see ``borg rcreate --help`` for encryption options):: - $ borg create /path/to/repo::Saturday1 ~/Documents + $ borg rcreate -e repokey-aes-ocb + +Create a new backup archive:: + + $ borg create Monday1 ~/Documents Now doing another backup, just to show off the great deduplication:: - $ borg create -v --stats /path/to/repo::Saturday2 ~/Documents - ----------------------------------------------------------------------------- - Archive name: Saturday2 - Archive fingerprint: 622b7c53c... - Time (start): Sat, 2016-02-27 14:48:13 - Time (end): Sat, 2016-02-27 14:48:14 - Duration: 0.88 seconds - Number of files: 163 - ----------------------------------------------------------------------------- - Original size Compressed size Deduplicated size - This archive: 6.85 MB 6.85 MB 30.79 kB <-- ! - All archives: 13.69 MB 13.71 MB 6.88 MB + $ borg create -v --stats Monday2 ~/Documents + Repository: /path/to/repo + Archive name: Monday2 + Archive fingerprint: 7714aef97c1a24539cc3dc73f79b060f14af04e2541da33d54c7ee8e81a00089 + Time (start): Mon, 2022-10-03 19:57:35 +0200 + Time (end): Mon, 2022-10-03 19:57:35 +0200 + Duration: 0.01 seconds + Number of files: 24 + Original size: 29.73 MB + Deduplicated size: 520 B - Unique chunks Total chunks - Chunk index: 167 330 - ----------------------------------------------------------------------------- - - -For a graphical frontend refer to our complementary project `BorgWeb `_. Helping, Donations and Bounties, becoming a Patron -------------------------------------------------- diff --git a/Vagrantfile b/Vagrantfile index 209200990..af0923474 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -161,8 +161,8 @@ def install_pythons(boxname) return <<-EOF . ~/.bash_profile pyenv install 3.11.0rc2 # tests - pyenv install 3.10.2 # tests - pyenv install 3.9.14 # tests, binary build + pyenv install 3.10.7 # tests, binary build + pyenv install 3.9.1 # tests pyenv rehash EOF end @@ -179,9 +179,9 @@ def build_pyenv_venv(boxname) return <<-EOF . ~/.bash_profile cd /vagrant/borg - # use the latest 3.9 release - pyenv global 3.9.14 - pyenv virtualenv 3.9.14 borg-env + # use the latest 3.10 release + pyenv global 3.10.7 + pyenv virtualenv 3.10.7 borg-env ln -s ~/.pyenv/versions/borg-env . EOF end @@ -228,8 +228,8 @@ def run_tests(boxname, skip_env) . ../borg-env/bin/activate if which pyenv 2> /dev/null; then # for testing, use the earliest point releases of the supported python versions: - pyenv global 3.9.14 3.10.2 3.11.0rc2 - pyenv local 3.9.14 3.10.2 3.11.0rc2 + pyenv global 3.9.1 3.10.7 3.11.0rc2 + pyenv local 3.9.1 3.10.7 3.11.0rc2 fi # otherwise: just use the system python # some OSes can only run specific test envs, e.g. because they miss FUSE support: diff --git a/docs/quickstart.rst b/docs/quickstart.rst index 1711fee2d..de9d501af 100644 --- a/docs/quickstart.rst +++ b/docs/quickstart.rst @@ -200,12 +200,12 @@ backed up and that the ``prune`` command is keeping and deleting the correct bac # limit prune's operation to this machine's archives and not apply to # other machines' archives also: - borg prune \ - --list \ - --glob-archives '{hostname}-*' \ - --show-rc \ - --keep-daily 7 \ - --keep-weekly 4 \ + borg prune \ + --list \ + --match-archives 'sh:{hostname}-*' \ + --show-rc \ + --keep-daily 7 \ + --keep-weekly 4 \ --keep-monthly 6 prune_exit=$? diff --git a/docs/usage.rst b/docs/usage.rst index 9b9a72162..658a40df0 100644 --- a/docs/usage.rst +++ b/docs/usage.rst @@ -39,6 +39,7 @@ Usage usage/rcreate usage/rlist usage/rinfo + usage/rcompress usage/rdelete usage/serve usage/compact diff --git a/src/borg/remote.py b/src/borg/remote.py index 35d2f7219..a0e7c75b0 100644 --- a/src/borg/remote.py +++ b/src/borg/remote.py @@ -989,7 +989,7 @@ This problem will go away as soon as the server has been upgraded to 1.0.7+. def list(self, limit=None, marker=None, mask=0, value=0): """actual remoting is done via self.call in the @api decorator""" - @api(since=parse_version("2.0.0b2")) + @api(since=parse_version("2.0.0b3")) def scan(self, limit=None, state=None): """actual remoting is done via self.call in the @api decorator"""