Commit Graph

505 Commits (3845fa5ec5220b5c27bb34b0b6268971c2bcb285)

Author SHA1 Message Date
Axel Burri ceb4dbf19c btrbk: add --print-schedule command line option 2016-04-09 14:16:14 +02:00
Axel Burri 78bfc5b885 btrbk: bugfix: use "/bin/false" as RSH if no config is available 2016-04-08 13:38:50 +02:00
Axel Burri ccc2a35520 ChangeLog: update missing items 2016-04-07 15:53:50 +02:00
Axel Burri a887e89732 btrbk: warn on receive targets at unexpected location (whole filesystem) when resuming missing backups (do not abort anymore); 2016-04-07 14:35:27 +02:00
Axel Burri 6b71b68fcb btrbk: bugfix: do not run "rm" command with no arguments (on raw targets) 2016-04-06 20:41:36 +02:00
Axel Burri 5d65748ffe btrbk: call init_transaction_log() at the beginning of every action, instead at global place 2016-04-06 20:27:27 +02:00
Axel Burri 211964f709 btrbk: parse btrbk_basename and btrbk_date in vinfo_child() instead of vinfo_subvol_list() 2016-04-06 20:24:56 +02:00
Axel Burri bfb556757d btrbk: get_latest_common(): use all brothers (snapshots with same parent) as candidates (older first, then newer) instead of only older; as last resort, use subvolumes in snapshot_dir matching btrbk file name scheme as candidates 2016-04-06 15:36:54 +02:00
Axel Burri 46e3aae857 btrbk: get_latest_common(): add strategy to find latest common for readonly and received subvolumes; add helper function cmp_date() 2016-04-06 15:36:51 +02:00
Axel Burri a26e8851b4 btrbk: btr_tree: return already assembled tree if a subvolume is already known in uuid_cache 2016-04-06 15:36:27 +02:00
Axel Burri ac0002bce8 btrbk: get_receive_targets() also returns matching source_received_uuid 2016-04-06 15:36:27 +02:00
Axel Burri 4b1983378f btrbk: add useful flags and parse date and basename of btrbk created files in vinfo_subvol_list(); replace parse_filename() calls by usage of new flags 2016-04-06 13:35:37 +02:00
Axel Burri 0bfb78b842 btrbk: remove trailing slash from NODE_SUBDIR 2016-04-03 21:41:41 +02:00
Axel Burri 899ca92026 btrbk: bugfix: untaint raw backup file list read by "find" command 2016-04-03 21:38:19 +02:00
Axel Burri 023004e9cc btrbk: bugfix: add '=' character to (regression introduced in a7cd4a99) 2016-04-03 21:09:30 +02:00
Axel Burri ea5cd06fbc btrbk: bugfix: get_receive_targets() for BTRFS_PROGS_COMPAT (regression introduced in 207e8868) 2016-04-03 21:09:30 +02:00
Axel Burri 302400d640 btrbk: bugfix: disallow snapshot_preserve_* in target section 2016-04-03 15:13:16 +02:00
Axel Burri a7cd4a994c btrbk: add some extra safety when running shell commands 2016-04-02 14:13:16 +02:00
Axel Burri 86170e6b21 btrbk: bugfix: untaint result of system_realpath() 2016-04-02 14:10:35 +02:00
Axel Burri 407d25f604 ssh_filter_btrbk: cosmetics: fix indentation (remove tabs) 2016-03-31 17:24:24 +02:00
Axel Burri ccb5ed5e71 ssh_filter_btrbk: allow "realpath" and "cat /proc/self/mounts" on targets 2016-03-31 17:24:24 +02:00
Axel Burri 90a3537433 documentation: add documentation for target propagation and target directories 2016-03-31 17:24:24 +02:00
Axel Burri 79caba4267 btrbk: rename %symlink -> %realpath_cache (returning real_path instead of real_url) 2016-03-31 17:24:24 +02:00
Axel Burri 7ee5778dee btrbk: bugfix: print correct target on "same backup target error" 2016-03-31 17:24:24 +02:00
Axel Burri c4073f6c53 btrbk: print target_path instead of target_subvol for "list {target,config}" 2016-03-31 17:24:24 +02:00
Axel Burri 3ada7c174e btrbk: allow targets to be directories (use mountpoint framework) 2016-03-31 17:24:24 +02:00
Axel Burri 06043cf800 btrbk: add btrfs mountpoint resolving functionality 2016-03-31 17:24:23 +02:00
Axel Burri de96f267b8 btrbk: propagate target sections to (sub-)subsections (allow target sections everywhere in the config) 2016-03-31 17:24:18 +02:00
Axel Burri f9ca7504c8 btrbk: add configuration option "rate_limit" (using pv -L)
Original patch provided by @janpascal: "Jan-Pascal van Best"
2016-03-23 11:58:35 +01:00
Axel Burri e6d46e8a02 btrbk: fix regression: correctly handle previously received subvolumes in get_latest_common()
regression from: 8819c67502
2016-03-22 19:30:21 +01:00
Axel Burri 7bb18050f8 btrbk: detect interrupted transfers of raw targets; delete incomplete raw targets on action "clean" 2016-03-22 19:28:05 +01:00
Moritz Ulrich d47cc25f60 btrbk-mail: bugfix: use `btrbk` instead of unbound variable `$btrbk` 2016-03-21 18:52:53 +01:00
Axel Burri c2b11775a0 btrbk: cosmetics: adapt debug/trace messages 2016-03-16 19:21:48 +01:00
Axel Burri 1adb318f02 documentation: cosmetics: change all url from www.digint.ch to digint.ch 2016-03-16 18:34:28 +01:00
Axel Burri cd8ac043a8 ChangeLog: add missing items 2016-03-16 18:34:28 +01:00
Axel Burri 247f023bab btrbk: allow wildcards in subvolume section; add option "wildcards" in check_file() 2016-03-16 18:17:44 +01:00
Axel Burri b9fa3e6e90 btrbk: add init_config(); use default config in action "diff"; use root config context for action "origin" 2016-03-15 16:54:54 +01:00
Axel Burri 8819c67502 btrbk: fixed raw targets 2016-03-15 14:53:51 +01:00
Axel Burri e9bc4950ac btrbk: re-ordering of functions (no functional changes) 2016-03-15 11:21:59 +01:00
Axel Burri 207e8868da btrbk: no more copy of node information in vinfo by vinfo_set_detail(); always use vinfo->{node}{key}; cleanup 2016-03-14 20:21:12 +01:00
Axel Burri 9a68ab6519 btrbk: use symlink hash instead of REAL_URL 2016-03-14 15:56:20 +01:00
Axel Burri cab2a88843 btrbk: move url_cache lookup to vinfo_subvol_list 2016-03-14 12:59:24 +01:00
Axel Burri 14d1ca1976 btrbk: add warning if a receive target of resume candidate exists at unexpected location 2016-03-12 19:16:07 +01:00
Axel Burri 1b45db3c59 btrbk: simplify btr_tree: SUBTREE is now list instead of hash; add TREE_ROOT pointer to every node; cleanup 2016-03-11 14:55:22 +01:00
Axel Burri 97caced09d btrbk: rename %btrfs_tree_cache -> %url_cache, %uuid_info -> %uuid_cache; cleanup 2016-03-10 22:21:55 +01:00
Axel Burri 84820933ed btrbk: remove %uuid_url_map (replace by get_cached_url_by_uuid() operating on %btrfs_tree_cache) 2016-03-10 22:21:55 +01:00
Axel Burri 743d7704f5 btrbk: correctly fill cache; fix vinfo_set_detail; add debug functionality (VINFO(), SUBTREE_LIST()); cleanup 2016-03-10 22:21:55 +01:00
Axel Burri e85b6dadf1 btrbk: data structure refactoring:
- remove %subvol_list_cache: may slow down aa bit, but makes possible
  to inject nodes correctly

- simplify subtree list (is now an array as it should have been from
  the beginning); correctly fill tree_cache

- fix vinfo_set_detail; cleanup
2016-03-10 22:19:36 +01:00
Axel Burri 1d054bf04a btrbk: refactoring of add global caches: reduce btrfs-progs calls, and make sure all root vinfo (especially targets) with same URL share the same SUBVOL_LIST reference.
- %btrfs_tree_cache (replaces %root_tree_cache)

- %subvol_list_cache (replaces %vinfo_cache):

- vinfo_init_root() (was: vinfo_root()) now lookups in cache before
  calling btrfs_subvolume_detail()

- vinfo_subvol_list() now lookups in cache before calling
  btrfs_subvolume_list()
2016-03-09 19:52:45 +01:00
Axel Burri ba90c13320 btrbk: fixed schedule() debug text 2016-03-08 18:22:58 +01:00