1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-29 11:16:43 +00:00
Commit graph

53 commits

Author SHA1 Message Date
Björn Ketelaars
cf6a324afa borg2 - Support other OpenSSL versions on OpenBSD
`setup.py` hardcoded crypto library paths for OpenBSD, causing build
issue when OpenBSD drops specific OpenSSL version. Solution is to make
paths configurable.

Addresses #8553.
2024-11-23 23:01:44 +01:00
Thomas Waldmann
6adf18d97c
update URL docs 2024-10-14 23:30:12 +02:00
Thomas Waldmann
414f18a354
docs: better link modern return codes, fixes #8370 2024-10-05 14:12:53 +02:00
Thomas Waldmann
ecd0cd07e2
docs: fix typo 2024-10-02 17:28:21 +02:00
Thomas Waldmann
940ec7b455
docs: point to rclone docs 2024-10-02 17:27:42 +02:00
Thomas Waldmann
bd6caf835d
add support for rclone:// repositories (via borgstore) 2024-09-22 22:26:07 +02:00
Thomas Waldmann
a891559578
files cache improvements, fixes #8385, fixes #5658
- changes to locally stored files cache:

  - store as files.<H(archive_name)>
  - user can manually control suffix via env var
  - if local files cache is not found, build from previous archive.
- enable rebuilding the files cache via loading the previous
  archive's metadata from the repo (better than starting with
  empty files cache and needing to read/chunk/hash all files).
  previous archive == same archive name, latest timestamp in repo.
- remove AdHocCache (not needed any more, slow)
- remove BORG_CACHE_IMPL, we only have one
- remove cache lock (this was blocking parallel backups to same
  repo from same machine/user).

Cache entries now have ctime AND mtime.

Note: TTL and age still needed for discarding removed files.
      But due to the separate files caches per series, the TTL
      was lowered to 2 (from 20).
2024-09-20 00:40:49 +02:00
Thomas Waldmann
82a1d38bcc
docs: user@ and :port are optional in sftp and ssh URLs 2024-09-17 10:01:33 +02:00
Thomas Waldmann
04dfadbbd6
cli: rename r* commands to repo-*
also:
- adapt tests
- adapt BuildMan manpage generation
- adapt help strings / doc strings
- docs
2024-09-08 18:06:24 +02:00
Thomas Waldmann
22b68b0199
add sftp: to repository url format docs 2024-09-07 22:01:16 +02:00
Thomas Waldmann
c2890efdd1
docs: update the repository filesystem docs
In the end, it will all depend on the borgstore backend that will be used,
so we better point to the borgstore project for details.
2024-09-07 22:00:52 +02:00
Thomas Waldmann
d6a70f48f2
remove LocalCache
Note: this is the default cache implementation in borg 1.x,
it worked well, but there were some issues:

- if the local chunks cache got out of sync with the repository,
  it needed an expensive rebuild from the infos in all archives.
- to optimize that, a local chunks.archive.d cache was used to
  speed that up, but at the price of quite significant space needs.

AdhocCacheWithFiles replaced this with a non-persistent chunks cache,
requesting all chunkids from the repository to initialize a simplified
non-persistent chunks index, that does not do real refcounting and also
initially does not have size information for pre-existing chunks.

We want to move away from precise refcounting, LocalCache needs to die.
2024-09-07 22:00:31 +02:00
Dominik Tugend
e715b9f5af Add TIMESPAN to doc
- Closes borgbackup/borg#8310
2024-07-30 23:49:50 +02:00
Thomas Waldmann
ecddbc6691
make BORG_EXIT_CODES="modern" the default. 2024-07-19 17:31:36 +02:00
Thomas Waldmann
619a06a5ba
BORG_CACHE_IMPL defaults to "adhocwithfiles" now
Also: support a "cli" env var value, that does not determine
the implementation from the env var, but rather from cli options (similar to as it was before adding BORG_CACHE_IMPL).
2024-07-18 22:51:17 +02:00
Thomas Waldmann
5a500cddf8
rename NewCache -> AdHocWithFilesCache 2024-07-18 22:14:00 +02:00
Thomas Waldmann
616af8daa8
BORG_CACHE_IMPL environment variable added
BORG_CACHE_IMPL allows users to choose the client-side cache implementation from 'local', 'newcache' and 'adhoc'.
2024-07-15 12:45:16 +02:00
William Bonnaventure
de5d130dda Update docs for BORG_USE_CHUNKS_ARCHIVE 2024-07-13 21:26:18 +02:00
Thomas Waldmann
9de07ebd46
update "modern" error RCs (docs and code) 2024-02-13 22:58:02 +01:00
Łukasz Stelmach
c68a158ffb linux: use pkgconfig to find libacl
Using pkgconfig gives a more meaningful error message in case libacl
development files are missing.
2023-10-24 15:00:21 +02:00
Thomas Waldmann
3051473168
BORG_WORKAROUNDS=authenticated_no_key to extract from authenticated repos without key, fixes #7700 2023-07-20 17:17:28 +02:00
Thomas Waldmann
8db8fd601b
docs: OS X -> macOS 2023-07-04 23:59:44 +02:00
Thomas Waldmann
84b1ad6948
docs: remove info about borg 1.0 files per dir 2023-07-04 23:32:36 +02:00
Thomas Waldmann
7878a34fd4
add get_runtime_dir / BORG_RUNTIME_DIR, tests, docs 2023-06-06 11:58:48 +02:00
Thomas Waldmann
c8996aaf12
BORG_DATA_DIR / BORG_SECURITY_DIR docs update 2023-05-18 12:48:47 +02:00
Thomas Waldmann
9f4f2b42e3
implement BORG_<CMD>_FORMAT env vars, fixes #5166
for now for: prune, list, rlist.
2023-04-08 00:53:53 +02:00
Thomas Waldmann
d6e3d36ce1
BORG_KEY_FILE: clarify docs, fixes #7444 2023-03-22 18:17:29 +01:00
Thomas Waldmann
43cbe6d8b6
remove BORG_LIBB2_PREFIX (not used any more)
the code now uses hashlib.blake2b from python stdlib.
2023-01-10 14:10:34 +01:00
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
e57ff29f22 BORG_LOCK_WAIT=n env var to set default for --lock-wait option, fixes #5279 2022-09-27 17:09:19 +02:00
Thomas Waldmann
47c2672a64 ssh:// URLs: remove support for /~otheruser/, see #6855
If you used this, just replace it by:

ssh://user@host:port/home/otheruser/
2022-07-15 16:02:45 +02:00
Thomas Waldmann
e2f7087aa8 docs: remove reference to borg upgrade 2022-06-26 20:09:54 +02:00
Thomas Waldmann
51cf85e627 build_usage / build_man / doc updates 2022-06-25 21:58:19 +02:00
Thomas Waldmann
e0c64629d1 Merge branch 'master' into borg2
strange conflicts, automated patches seemed to not have applied correctly.
also had to fix some stuff manually, tests were failing.
2022-06-23 11:25:01 +02:00
Thomas Waldmann
61299d23db Revert "Remove scp syntax for locations (#6697)"
This reverts commit 1b4b84dfd8.
2022-05-18 17:31:10 +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
Emil M George
1b4b84dfd8
Remove scp syntax for locations (#6697)
remove scp syntax support from cli and from Location parser, add note about converting scp-style URLs to ssh-style, fixes #6691
2022-05-15 21:55:19 +02:00
Thomas Waldmann
78f0f3518e remove leftovers of BORG_HOSTNAME_IS_UNIQUE from docs
thanks to @snsmac for the hint: there is no code implementing this any more. it was replaced by
BORG_HOST_ID (if needed).
2022-01-20 23:38:43 +01:00
Reiko Asakura
e38f0b26b0
Workaround for volume shadow copy in WSL1 2021-12-24 15:15:23 -05:00
TW
e6811748b1 Merge pull request #5873 from ThomasWaldmann/disable-selftest-1.1
implement BORG_SELFTEST env variable, fixes #5871
2021-07-03 12:31:13 +02:00
Thomas Waldmann
f75c561e07 docs: add another case of attempted hardlink usage 2020-12-26 00:04:24 +01:00
Thomas Waldmann
3a828bea0b docs: fix description of borg upgrade hardlink usage, fixes #5518 2020-12-26 00:03:34 +01:00
Robin Schneider
fb38ba579f
Use HTTPS everywhere (mechanical edit using util from https-everywhere)
Ref: https://github.com/EFForg/https-everywhere/tree/master/utils/rewriter

```Shell
~/src/EFForg/https-everywhere/utils/rewriter/rewriter.js .
```

A few changes were reset/fixed manually before the commit.
2020-12-22 16:36:40 +01:00
TW
ac77dd491d
Merge pull request #5433 from luke-jr/files_cache_suffix
Allow appending the files cache filename with BORG_FILES_CACHE_SUFFIX env var
2020-11-16 18:51:40 +01:00
Luke Dashjr
561fbb748c docs: Document BORG_FILES_CACHE_SUFFIX environment variable 2020-11-15 17:01:36 +00:00
Thomas Waldmann
49b1421682 FUSE: support pyfuse3 additionally to llfuse, fixes #5407
FUSE implementation can be switched via env var BORG_FUSE_IMPL.
2020-10-31 22:04:44 +01: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
Thomas Waldmann
888949c641 Improve description of path variables
Original commit by @finefoot, re-applied due to merge conflict.
2020-04-01 18:54:45 +02:00