Michael Eischer
8731667156
restore: do not delete target if it is a file
...
This is implicitly achieved by creating the target directory as the
first step, which will fail if a file already exist in its place.
2024-07-10 22:08:49 +02:00
Michael Eischer
d8dbc71deb
Merge pull request #4908 from MichaelEischer/improve-anonymous-s3
...
S3: Improve anonymous access
2024-07-10 20:19:23 +02:00
Michael Eischer
f74e70cc36
s3: forbid anonymous authentication unless explicitly requested
2024-07-10 20:10:27 +02:00
Michael Eischer
4b364940aa
s3: use http client with configured timeouts for s3 IAM communication
...
The default client has no timeouts configured opening network
connections. Thus, if 169.254.169.254 is inaccessible, then the client
would wait for until the operating system gives up, which will take
several minutes.
2024-07-07 11:32:40 +02:00
Michael Eischer
a2a2401a68
s3: prevent repeated credential queries with anonymous authentication
2024-07-07 11:31:04 +02:00
Michael Eischer
aedead2823
ui/termstatus: fix clearing status lines
...
To clear the status lines, they should be set to an empty array to
prevent future updates of those lines. Setting the status lines to an
array containing an empty string is wrong as this causes the output to
continuously add that empty status line after each message.
2024-07-06 11:27:35 +02:00
Michael Eischer
868219aad1
restore: test --dry-run plus --delete
2024-07-05 22:38:39 +02:00
Michael Eischer
aa8e18cf32
restore: add deletions to progress output
2024-07-05 22:38:39 +02:00
Michael Eischer
f4b15fdd96
restore: allow deleting a directory to replace it with a file
...
When the `--delete` option is specified, recursively delete directories
that should be replaced with a file.
2024-07-05 22:38:39 +02:00
Michael Eischer
168fc09d5f
restore: use case insensitive file name comparison on windows
2024-07-05 22:38:39 +02:00
Michael Eischer
013a6156bd
restore: remove unused parameter from SelectFilter
2024-07-05 22:38:39 +02:00
Michael Eischer
ac44bdf6dd
restore: add --delete option to remove files that are not in snapshot
2024-07-05 22:38:39 +02:00
Michael Eischer
144e2a451f
restore: track expected filenames in a folder
2024-07-05 21:03:35 +02:00
Michael Eischer
d762f4ee64
restore: simplfy selectFilter arguments
2024-07-05 21:03:35 +02:00
Michael Eischer
a9a60f77ce
restore: optimize memory usage
2024-07-05 21:03:35 +02:00
Michael Eischer
1369658a32
archiver: extract Readdirnames to fs package
2024-07-05 21:03:34 +02:00
Michael Eischer
ae978d60cc
restore: pass action enum to restore progress
2024-07-05 20:41:27 +02:00
Michael Eischer
83351f42e3
restore: add dry-run support
2024-07-05 20:41:27 +02:00
Michael Eischer
c47bf33884
restore: print processed files at maximum verbosity
2024-07-05 20:41:27 +02:00
Michael Eischer
c9a4a95848
check: suggest using repair packs
to repair truncated pack files
...
Previously, that help message was only shown for running `check
--read-data`.
2024-07-05 20:04:25 +02:00
Viktor Szépe
ac00229386
Fix typos
2024-07-03 20:02:06 +02:00
Michael Eischer
132965fd5c
Merge pull request #4864 from MichaelEischer/restore-delete
...
restore: improve file type mismatch handling
2024-06-26 21:27:57 +02:00
Michael Eischer
9817126341
Merge pull request #4863 from MichaelEischer/safer-repo-init2
...
repository: prevent initialization if a snapshot exists
2024-06-26 21:11:11 +02:00
Michael Eischer
c01b655229
backup: fix reading xattrs on Windows for root disks as regular user
...
Unprivileged users cannot open the root disks with write permissions for
xattrs. Thus, only request read permissions for reading the xattrs.
2024-06-26 20:13:50 +02:00
Michael Eischer
20a6c526e5
restic: also fix file path when reading windows xattrs
2024-06-14 22:40:25 +02:00
Michael Eischer
b80aa7b1cc
repository: prevent initialization if a snapshot exists
2024-06-14 20:37:01 +02:00
Michael Eischer
deca7d08ac
restorer: cleanup unexpected xattrs on windows
2024-06-14 20:17:06 +02:00
Michael Eischer
9572b7224f
restorer: windows test fixes
2024-06-13 23:20:09 +02:00
Michael Eischer
ca41c8fd11
restore: use fs function wrappers
...
This ensures proper path handling on Windows.
2024-06-13 22:40:37 +02:00
Michael Eischer
4d6042fe95
restore: remove unexpected xattrs from files
2024-06-13 22:21:00 +02:00
Michael Eischer
ebbd4e26d7
restorer: allow directory to replace existing file
2024-06-13 21:57:48 +02:00
Michael Eischer
ac729db3ce
restorer: fix overwriting of special file types
...
An attempt to replace an existing file with a hardlink previously ended
with a missing file.
Remove an existing file before trying to restore a special node. This
generalizes the existing behavior for symlinks to all special node
types.
2024-06-13 21:56:18 +02:00
Michael Eischer
c7902b7724
restorer: cleanup overwrite tests
2024-06-13 21:55:33 +02:00
Michael Eischer
c598a751c2
restore: fine-grained sparse support for windows
2024-06-13 21:55:33 +02:00
Michael Eischer
d265ec64f2
restore: correctly handle existing hardlinks
...
With hardlinks there's no efficient way to detect which files are linked
with each other. Thus, just start from scratch when restore has to
modify a hardlinked file.
2024-06-13 21:55:33 +02:00
Michael Eischer
f19b69af25
restore: allow overwrite to replace empty directories and symlinks
...
With an already existing file tree an old directory or symlink may exist
in a place where restore wants to create a new file. Thus, check for
unexpected file types and clean up if necessary.
2024-06-13 21:55:33 +02:00
Michael Eischer
f1c76a8286
restore: fix corrupted sparse files
2024-06-13 21:17:30 +02:00
Michael Eischer
1eccd6504b
restore: test restore only changed parts functionality
2024-06-13 21:17:30 +02:00
Michael Eischer
5c3709e17a
restore: add --overwrite=if-changed to skip files if their mtime&size matches
...
--overwrite=always still checks the file content
2024-06-13 21:17:30 +02:00
Michael Eischer
a66658b4c9
restore: only restore changed file parts
...
For files that should be overwritten, first check whether their content
matches the snapshot and only restore diverging parts.
2024-06-13 21:17:30 +02:00
Michael Eischer
62e0e5e8d8
restore: cleanup options handling
2024-06-12 22:53:53 +02:00
Michael Eischer
8733cd21b9
restore: fix file encryption on windows
...
The assumption that a file is not readonly is no longer valid.
2024-06-12 22:53:53 +02:00
Michael Eischer
8aa3ab6ef8
restore: check file type in verify
2024-06-12 22:53:53 +02:00
Michael Eischer
7f7c995977
fix linter warnings
2024-06-12 22:36:52 +02:00
Michael Eischer
ba53a2abb5
test overwrite behavior
2024-06-12 22:36:52 +02:00
Michael Eischer
e47e08a688
restorer: separately track skipped files
2024-06-12 22:36:52 +02:00
Michael Eischer
64b7b6b975
restore/ui: refactor for extensibility
2024-06-12 22:36:52 +02:00
Michael Eischer
6a4ae9d6b1
restore: configurable overwrite behavior
2024-06-12 22:36:52 +02:00
Michael Eischer
a23cb3a428
restore: reduce memory usage
2024-06-12 22:36:52 +02:00
Michael Eischer
2b50c2606c
restorer: use options struct
2024-06-12 22:36:52 +02:00