1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-25 17:27:31 +00:00
Commit graph

143 commits

Author SHA1 Message Date
Paul D
253d8e8d4e Docs grammar fixes
joined split infinitives, and relocated adverbs appropriately.
2022-12-29 22:26:54 +00:00
Paul D
a85b643866 Docs grammar fixes.
One cannot "to not x", but one can "not to x".
Avoiding split infinitives gives the added bonus that machine
translation yields better results.

setup (n/adj) vs set(v) up. We don't "I setup it" but "I set it up".

Likewise for login(n/adj) and log(v) in, backup(n/adj) and back(v) up.
2022-12-29 00:01:48 +00:00
Thomas Waldmann
c8830cde44 update docs 2022-09-08 22:26:23 +02:00
TW
c2bcecf2eb
Merge pull request #6942 from mh4ckt3mh4ckt1c4s/doc-shift-odg
update diagrams to odg format, fixes #6928
2022-08-09 22:03:09 +02:00
mh4ckt3mh4ckt1c4s
15a450c7e8 Fix transparency level 2022-08-09 21:20:44 +02:00
mh4ckt3mh4ckt1c4s
259d3fdc76 Tiny fix of transparency bug 2022-08-09 19:33:30 +02:00
mh4ckt3mh4ckt1c4s
be9e99e346 Fix size of images to match old ones 2022-08-09 19:21:16 +02:00
mh4ckt3mh4ckt1c4s
3e40f68409 Added the transparency thing to compaction schema 2022-08-09 19:15:09 +02:00
mh4ckt3mh4ckt1c4s
45663552bf Updated compaction to an odg file 2022-08-07 22:13:33 +02:00
Thomas Waldmann
8148d4e400 fix sphinx warnings 2022-08-07 19:14:03 +02:00
mh4ckt3mh4ckt1c4s
cd27313693 Changed structure schema to odg format 2022-08-07 00:55:22 +02:00
mh4ckt3mh4ckt1c4s
085b244bb7 Removed object-graph.vdg and added 'simplified' mention in schema 2022-08-07 00:25:31 +02:00
Thomas Waldmann
fb74fdb710 massively increase per archive metadata stream size limit, fixes #1473
implemented by introducing one level of indirection, the limit is now
very high, so it is not practically relevant any more.

we always use the indirection (storing the metadata stream chunk ids list not
directly into the archive item, but into some repo objects referenced by the new
ArchiveItem.item_ptrs list).

thus, the code behaves the same for all archive sizes.
2022-08-06 19:01:41 +02:00
mh4ckt3mh4ckt1c4s
7ed3fad470 Updated object-graph to an odg file 2022-08-06 11:32:32 +02:00
Thomas Waldmann
f621b21ec1 docs: update security.rst 2022-08-03 22:19:28 +02:00
Thomas Waldmann
d5df53732d increase Key.version to 2
Old borg (< 2.0) can not read/process the new keys that have crypt_key instead of enc_key and enc_hmac_key.
2022-08-03 12:25:58 +02:00
Thomas Waldmann
89e4a52c56 docs: misc. updates
- remove outdated stuff
- fix infos for borg 2.0
2022-08-03 11:35:25 +02:00
Jonas Schäfer
33b846e292 docs: update encryption drawing for new compression bytes
Since compression type identification has been split into type and
level, the graphic needed a slight update.

Unfortunately, I don't have access to Visio, so I converted this to odg.
2022-07-30 19:24:26 +02:00
Jonas Schäfer
c8ab490017 docs: provide more details on object layout
While writing my own out-of-band decoder, I had a hard time figuring out
how to unpack the manifest. From the description, I was only able to
read that the manifest is msgpack'd, but I had not been able to figure
out that it's also going through the same encryption+compression logic
as all other things do.

This should make it a little clearer and provide the necessary
information to understand how the compression works.
2022-07-30 19:24:26 +02:00
Thomas Waldmann
ad7c7159b2 Merge branch 'master' into borg2 2022-07-27 13:49:50 +02:00
Thomas Waldmann
c7e719f209 docs: update archive_progress json description about "finished", see #6570 2022-07-25 13:05:16 +02:00
a1346054
160dd877ab
fix typos 2022-07-22 15:51:46 +00:00
Thomas Waldmann
9d6c98d9f9 docs: remove _assert_id() call for new crypto 2022-07-20 14:31:37 +02:00
Thomas Waldmann
5e0c4a8fd4 document hlid, fixes #2388 2022-07-05 22:27:08 +02:00
Thomas Waldmann
c7ed985ffd Merge branch 'master' into borg2 2022-07-02 23:28:39 +02:00
Thomas Waldmann
ea4ed6b98f docs: json progress_percent: some values are optional, fixes #4074
in the finished == true message, these are missing:
- message
- current / total
- info

This is to be somewhat consistent with #6683 by only providing a
minimal set of values for the finished case.

The finished messages is primarily intended for cleanup purposes,
e.g. clearing the progress display.
2022-07-01 14:35:44 +02:00
Thomas Waldmann
51cf85e627 build_usage / build_man / doc updates 2022-06-25 21:58:19 +02:00
Thomas Waldmann
1393e4f391 remove csize references from docs 2022-06-12 18:01:57 +02:00
Thomas Waldmann
421d4bdfb0 docs: fix bytes -> str in data-structures docs 2022-06-09 17:57:28 +02:00
Thomas Waldmann
6bfdb3f630 refactor hardlink_master processing globally
borg now has the chunks list in every item with content.
due to the symmetric way how borg now deals with hardlinks using
item.hlid, processing gets much simpler.

but some places where borg deals with other "sources" of hardlinks
still need to do some hardlink management:
borg uses the HardLinkManager there now (which is not much more
than a dict, but keeps documentation at one place and avoids some
code duplication we had before).

item.hlid is computed via hardlink_id function.

support hardlinked symlinks, fixes #2379
as we use item.hlid now to group hardlinks together,
there is no conflict with the item.source usage for
symlink targets any more.

2nd+ hardlinks now add to the files count as did the 1st one.
for borg, now all hardlinks are created equal.
so any hardlink item with chunks now adds to the "file" count.

ItemFormatter: support {hlid} instead of {source} for hardlinks
2022-05-18 14:20:01 +02:00
Andrea Gelmini
c79fd61b5c
Fix typos (#6688)
fix typos

Co-authored-by: Thomas Waldmann <tw@waldmann-edv.de>
2022-05-15 21:23:48 +02:00
Christopher Klooz
594d83aad5
docs: authentication primitives: improved security and performance infos (master) (#6667)
docs: authentication primitives: improved security and performance infos
2022-05-14 22:57:22 +02:00
ReethuVinta
c85bcfd3ad
documented secret key usage against fingerprinting (#6345)
docs: secret key usage against fingerprinting

Co-authored-by: Thomas Waldmann <tw@waldmann-edv.de>
2022-05-10 21:18:40 +02:00
Thomas Waldmann
85d4b98a16 docs: updated for repository version 2, PUT2 tag 2022-04-09 18:58:47 +02:00
Thomas Waldmann
10cbdcc67e add encryption-aead diagram 2022-03-26 17:05:57 +01:00
Thomas Waldmann
298c5ee539 docs: security infos only applying to legacy encryption 2022-03-26 17:05:57 +01:00
Thomas Waldmann
f4a6ad080b docs: add new AEAD modes to security docs 2022-03-26 17:05:57 +01:00
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