Commit Graph

106 Commits

Author SHA1 Message Date
Thomas Waldmann 37f237d3e0 remove PassphraseKey code and borg key migrate-to-repokey command
"passphrase" encryption mode repos can not be created since borg 1.0.
back then, users were advised to switch existing repos of that type
to repokey mode using the "borg key migrate-to-repokey" command.
that command is still available in borg 1.0, 1.1 and 1.2, but not
any more in borg >= 1.3.

while we still might see the PassphraseKey.TYPE byte in old repos,
it is handled by the RepoKey code since borg 1.0.
2022-03-06 15:26:18 +01:00
Julian Picht 091c48bc37
docs: Clarify on-disk order and size of log entry fields (#6357)
docs: clarify on-disk order and size of log entry fields

The order of the fields of a log entry on disk is CRC32 first, the docs had the size first.

I tried to make this list similar to the HashIndex struct description.
2022-02-25 12:53:58 +01:00
Thomas Waldmann 94e93ba7e6 formula is only approximately correct
the movement of the start of the hashing window stops at (file_size - window_size), thus THAT would be the factor in that formula, not just file_size.

for medium and big files, window_size is much smaller than file_size, so guess we can just say "approximately" for the general case.
2022-01-16 20:39:29 +01:00
enkore 79cb4e43e5
docs/data-structures: tie CDC back into dedup rationale 2021-11-27 18:45:19 +00:00
enkore 5b297849d3
docs/data-structures: add content-defined chunking explainer 2021-11-27 14:41:24 +00:00
Robert Blenis b2dea4422e add --json-lines option to diff command 2021-03-13 11:50:55 -05:00
Thomas Waldmann c3df6fcca4 fix docs about blake2 requirements / origin 2021-01-28 18:00:00 +01:00
Andrea Gelmini 72e7c46fa7 Fix typos 2021-01-07 17:54:33 +01:00
Thomas Waldmann b8bb0494f6 create --sparse, file map support for the "fixed" chunker, see #14
a file map can be:

- created internally inside chunkify by calling sparsemap, which uses
  SEEK_DATA / SEEK_HOLE to determine data and hole ranges inside a
  seekable sparse file.
  Usage: borg create --sparse --chunker-params=fixed,BLOCKSIZE ...
  BLOCKSIZE is the chunker blocksize here, not the filesystem blocksize!

- made by some other means and given to the chunkify function.
  this is not used yet, but in future this could be used to only read
  the changed parts and seek over the (known) unchanged parts of a file.

sparsemap: the generate range sizes are multiples of the fs block size.
           the tests assume 4kiB fs block size.
2020-12-27 22:06:08 +01:00
Thomas Waldmann b45874bead ObfuscateSize compressor 2020-12-02 14:21:42 +01:00
Guinness 61c92110e6 Change documentation inaccuracy on chunk size.
We know use only "target chunk size" when speaking of the chunk size
that is expected to happen most of the time. This removes statistical
and mathematical inacurracies that could be troublesome for mathematical
people.

Fixes #5336
2020-10-23 13:03:12 +02:00
TW 303c11f245
rephrase some warnings, fixes #5164 (#5241)
rephrase some warnings, fixes #5164

borg check --repair and borg recreate are now present in the code since rather long, so they are not experimental any more.

borg recreate might be used wrongly (e.g. accidentally excluding everything / not matching anything when recreating an archive). added some warning words in the docs, but it will not ask for confirmation any more.

borg check: there might be kinds of corruption borg check --repair can not fix and it might make things even worse while trying to fix. so this will still ask for confirmation, just with different wording.
2020-07-10 19:26:18 +02:00
Thomas Portmann dfc5e915cc
Fixed locking, issue #4923 (#4928)
locking: fix ExclusiveLock race condition bug, fixes #4923

- ExclusiveLock is now based on os.rename instead of os.mkdir.
- catch FileNotFoundError observed under race condition in ExclusiveLock.release()
  and .kill_stale_lock()
- added TestExclusiveLock.test_race_condition() which reveals issue #4923
- updated docs
- locking: use "raise LockTimeout from None" for prettier traceback

Co-authored-by: Thomas Portmann <thomas@portmann.org>
Co-authored-by: Thomas Waldmann <tw@waldmann-edv.de>
2020-07-03 10:09:32 +02:00
Thalian 25ab198d41
[DOCS] #4883 – Doc downplays severity of Nonce reuse issue (#5082)
docs: Borg documentation downplays severity of Nonce reuse issue, fixes #4883
2020-04-05 23:31:08 +02:00
TW 54df299604
Merge pull request #5034 from fantasya-pbem/docs/3428_Restore-after-corruption
docs: borg repo restore instructions needed, fixes #3428
2020-04-05 21:13:25 +02:00
Thalian 41ecd1ae30 [DOCS] #3428 – Borg repo restore instructions needed
Adapt FAQ to the new delete option.
2020-03-26 20:02:31 +01:00
Thalian 08a7661e67 [FEATURE] #4489 – Deprecate --nobsdflags option
Replaced by --noflags. In internal data structure the key 'bsdflags' is kept for backwards compatibility.
2020-03-25 06:35:15 +01:00
Thalian 04a25ba108 [DOCS] #4587 – Make Sphinx warnings break docs build
Add blank line to prevent Sphinx warning "WARNING: Explicit markup ends without a blank line; unexpected unindent.".
2020-03-16 19:06:00 +01:00
Thalian 0b5bb8dfec [DOCS] #4073 – PlaceholderError not printed as JSON
Add a warning for --log-json option that parsing errors will always be printed as plain text.
2020-03-15 20:37:28 +01:00
Milkey Mouse 1edf587bf3
Suppress Sphinx lexer warnings in frontends.rst
Because some of the JSON blocks in frontends.rst included non-JSON
contents (user replies, etc.) the blocks didn't parse/highlight and
`make html` complained:

borg/docs/internals/frontends.rst:28: WARNING: Could not lex literal_block as "json".

There's no easy way to enable and disable highlighting just for
specific lines, but individually unsetting the highlight language per
block suppresses the warnings.
2020-03-11 15:33:44 -07:00
Thomas Waldmann a8831f4978 fix ProgressIndicator msgids, fixes #4935
add some to code, fix docs.
2020-03-03 23:57:36 +01:00
Alexandr Kozlinskiy b780c36811 docs: fix spelling errors 2019-03-11 22:40:03 +01:00
Thomas Waldmann 7f46eb99aa update docs about fixed chunker and chunker algo spec needed 2019-02-13 06:30:13 +01:00
Thomas Waldmann fc6e81c8bb docs: --format is required for some expensive-to-compute values
borg list by default does not compute expensive values except when
they are needed. whether they are needed is determined by the format,
in standard mode as well as in --json mode.
2018-12-07 01:18:32 +01:00
Thomas Waldmann e6fcf4ea42 update docs about separated compaction 2018-07-14 14:53:23 +02:00
Thomas Waldmann 8ac272f35f security: describe chunk size / proximity issue, see #3687 2018-03-23 17:54:02 +01:00
TW 201c62430a
Merge pull request #3675 from ThomasWaldmann/crypto-compression-docs
security docs: add about combining compression and encryption
2018-03-17 19:46:42 +01:00
TW 1473ea708c
Merge pull request #3526 from borgbackup/enkore-patch-1
sec docs: explicitly note what happens OUTSIDE the attack model
2018-03-09 18:49:32 +01:00
Thomas Waldmann be8913a93c security docs: add about combining compression and encryption 2018-03-09 18:02:57 +01:00
Alexander 'Leo' Bergolth 74c10e4643 add chunker_params to archive info (at least to json output) 2018-01-25 21:02:39 +01:00
enkore 674ce72fda sec docs: explicitly note what happens OUTSIDE the attack model 2018-01-10 15:30:12 +01:00
TW 4b98393542
Merge pull request #3520 from pngwjpgh/doc/chunk-seed
Chunk seed is generated per /repository/
2018-01-10 07:26:26 +01:00
Gregor Kleen 1820e22c02 Chunk seed is generated per /repository/ 2018-01-09 18:17:46 +01:00
Gianfranco Costamagna 0980d6ac43 fixup allows one to, with suggestions from Dan Christensen 2018-01-03 15:54:52 +01:00
Gianfranco Costamagna 111a19f7fa fix typo: allows to -> allows one to 2018-01-03 11:42:38 +01:00
Josh Holland 95a05dbbf1
docs: Fix missing apostrophe 2017-12-22 21:44:12 +00:00
Thomas Waldmann 2588e50f0b readme / docs: mention zstd 2017-12-18 22:55:00 +01:00
Tom Denley c6591a7c06 Correct usage of "fewer" in place of "less" 2017-11-11 11:21:45 +00:00
8bit 8d830d069f Removed all |project_name
| instances, replaced with Borg
2017-10-17 11:50:55 -05:00
Thomas Waldmann 5e2de8ba67 implement files cache mode control, fixes #911
You can now control the files cache mode using this option:

--files-cache={ctime,mtime,size,inode,rechunk,disabled}*

(only some combinations are supported)

Previously, only these modes were supported:
- mtime,size,inode (default of borg < 1.1.0rc4)
- mtime,size (by using --ignore-inode)
- disabled (by using --no-files-cache)

Now, you additionally get:
- ctime alternatively to mtime (more safe), e.g.:
  ctime,size,inode (this is the new default of borg >= 1.1.0rc4)
- rechunk (consider all files as changed, rechunk them)

Deprecated:
- --ignore-inodes (use modes without "inode")
- --no-files-cache (use "disabled" mode)

The tests needed some changes:
- previously, we use os.utime() to set a files mtime (atime) to specific
  values, but that does not work for ctime.
- now use time.sleep() to create the "latest file" that usually does
  not end up in the files cache (see FAQ)
2017-10-01 00:52:32 +02:00
TW 133e847f8e document utf-8 locale requirement for json mode, #2273 (#3009) 2017-09-08 08:31:51 +02:00
Marian Beermann 10a7b6b727 docs/internals: note segment size limitation 2017-08-22 17:48:48 +02:00
Marian Beermann ab4981eff6 always use microseconds for ISO 8601 output 2017-08-22 17:32:25 +02:00
Marian Beermann a836f451ab one datetime formatter to rule them all
# Conflicts:
#	src/borg/helpers.py
2017-08-22 17:32:21 +02:00
Lukas Fleischer 0943b322e3 Detect non-upgraded Attic repositories
When opening a repository, always try to read the magic number of the
latest segment and compare it to the Attic segment magic (unless the
repository is opened for upgrading). If an Attic segment is detected,
raise a dedicated exception, telling the user to upgrade the repository
first.

Fixes #1933.
2017-08-15 19:58:30 +02:00
Zhuoyun Wei f0de6a4c90
Doc: add warning about changing segments_per_dir values 2017-07-21 12:26:24 -04:00
Zhuoyun Wei 7d07a9629e
Doc: update default values in sample config file 2017-07-21 12:26:17 -04:00
Marian Beermann d495b0fe75 docs: move introduction sentence 2017-06-19 10:01:55 +02:00
enkore 52da719d30 Merge pull request #2707 from narendravardi/master
Don't perform full Travis build on docs-only changes #2531
2017-06-19 09:58:41 +02:00
Marian Beermann 6e17ca7c3a docs: fix typo 2017-06-19 09:50:22 +02:00