418 Commits

Author SHA1 Message Date
adef351e9d dsnap-sync: refine eval calls
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
36a0c57971 dsnap-sync: make btrfs_quota usage an option
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
293dfba348 dsnap-sync: 0.5.8 version bump
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
37264eb4f5 dsnap-sync: inculde btrfs quota check
* get size of snapshot from 'btrfs qgroup show' function
* precise size information needs sync, which can take a while
  but is far cheeper then du --sum on big subvolume

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
c4244cb34d dsnap-sync: be more precise on completion message
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
831544f86d dsnap-sync: btrfs send/recieve pipe update
* always use btrfs with '-p flag' for sending incremental streams
  Andrei: https://www.spinics.net/lists/linux-btrfs/msg69369.html

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
a8b609ce94 dsnap-sync: correct lookup for common sync_id
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:58 +02:00
a433ee1a9b dsnap-sync: verbosity level update
- v1: Basic messages (main function calls)
- v2: Notice messages (feedback from main functions)
- v3: Informaional messages (feedback from helper functions)

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
3403ddc235 dsnap-sync: update pv handling
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
75c4f8c5bb dsnap-sync: function updates
* verify_structure() stat function evaluation cleanup
* get_disk_info() cmd alingnment

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
7e6ec2a997 dsnap-sync: cleanup global variable assignment
* declare defaults
* assign integer values
* evaluate command

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
b910ca6086 dsnap-sync: update btrfs type handling
* adapt dry-run output
* differenciate handling for btrfs-snapshot, btrfs-clone and btrfs-archive

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
9b39792fb9 dsnap-sync: automounter handling update
- use systemd unit and stat the file-system

Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
9c2c9c6194 dsnap-sync: code identation update
Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
2018-09-21 15:53:57 +02:00
d3b6c972c5 Markdown: introduce language specific versions
* new subdir lang to hold the language specific code
* introduce german README.md
2018-09-21 15:53:44 +02:00
9628a9a623 Markdown: update markup text to reflact changes for verson 0.5.7
* Basic description in README.md
* Example section in /usr/share/doc/Examples.md
2018-07-17 01:03:19 +02:00
f461599b2e dsnap-sync: 0.5.7 version bump 2018-07-17 01:03:19 +02:00
43cb219fb7 dsnap-sync: introduce support for automounter
- add parameter to set automounter-path
- handle start of systemd-unit on target
2018-07-17 01:03:19 +02:00
73b28575ef dsnap-sync template: changes to support CONFIG_TYPE 2018-07-17 01:03:19 +02:00
752cc32bfc dsnap-sync: structure update
- introduce verbosity level
- introduce colorized output for messages
- introduce snapper config types
  (btrfs-snaphot, btrfs-clone, btrfs-archive)
- order functions lexical ascending
- modify handling of failed snapshots
- get_snapper_config_value() - parse config-values from snapper-configs
- get_snapper_last_sync_id() - parse snapper config for last snapshots
  handle backups and last sync's
- quote_args() - prepare for ssh call
- get_backupdir() - parse out backupdir handling
- verify_backupdir() - parse given backupdir
- get_snapper_config_type() - parse the config type
- verify_archive_structure() - parsing btrfs-archive backups
- verify_snapper_structure() - parsing btrfs-clone and btrfs-snapshot
- destinction between snapper_source_sync_snapshots and
  snapper_target_sync_snapshots
- destinction between snapper_source_sync_id and
  snapper_target_sync_id
- destinction between snapper_source_id and
  snapper_target_id
- adapt pv options
2018-07-17 01:03:18 +02:00
3b43db5328 dsnap-sync: correct btrfs handling if subvolumes is in a subdir 2018-07-17 01:03:18 +02:00
e1bbe55784 dsnap-sync: coding cleanup 2018-07-17 01:03:18 +02:00
5a446e2d11 dsnap-sync: refine snapper template handling 2018-07-17 01:03:18 +02:00
66fa9251eb TODO.md: update open-tasks 2018-07-17 01:03:18 +02:00
a7b4a998ee dsnap-sync template: snapper options for derived dsnap-sync configs
- adapt to rely on systemd units
- enable timeline cleanups, since snapshots are marked to support
  this algorithm
- typo correction for SNAP_SYNC_EXCLUDE
2018-07-17 01:03:18 +02:00
66e40a0931 Makefile: update installing to DESTDIR structure 2018-07-17 01:03:18 +02:00
777aef5f8a dsnap-sync: 0.5.5 version bump 2018-07-17 01:03:17 +02:00
7793023c9d README.md:
o wording
o update to comply with tag 0.5.5
2018-07-17 01:03:17 +02:00
c23124e7f5 dsnap-sync: function updates
o run_backup: update printf parameters
o run_finalize: verbosity handling, update tagging
o verify_snapper_structure: updatecommenting, update command calls
2018-07-17 01:03:17 +02:00
2c3c6f1f59 dsnap-sync: pv option no using splice 2018-07-17 01:03:17 +02:00
ae3401135b dsnap-sync: command line-up 2018-07-17 01:03:17 +02:00
675fc77d64 dsnap-sync: cleanup run_finalize()
- structure source and target tagging
- hack to force update of snapper subvol listing
2018-07-17 01:03:17 +02:00
b0b192ab77 dsnap-sync: adapt src_uuid to respect target mountpoint 2018-07-17 01:03:16 +02:00
6c8f72dd1a dsnap-sync: cleanup snapper_target_config name 2018-07-17 01:03:16 +02:00
df8422fa93 dsnap-sync: cosmetic changes 2018-07-17 01:03:16 +02:00
7047775567 dsnap-sync: handle postfix to be appended to config
- snapper config will be created with given postfix
- make postfix a sectable option
2018-07-17 01:03:16 +02:00
d86282b27b dsnap-sync: args parser
- prepare arguments as string for ssh call
2018-07-17 01:03:16 +02:00
b607ae3eba dsnap-sync: introduce coloured output and verbosity level
- handle 'verbose' as integer
- introduce verbosity level selectable with multiple verbose arguments
- introduce color variables
- embed printf strings with color statements
- cleanup output line-up
2018-07-17 01:03:16 +02:00
ce062ea920 dsnap-sync: change notification to use int value 2018-07-17 01:03:16 +02:00
c66b21969d Update Config-Template dsnap-sync
o adapt defaultes for timeline handling
2018-07-17 01:03:15 +02:00
7ffd5bee31 update documentation path 2018-07-17 01:03:15 +02:00
fa24a6a19e .gitignore: ignore debian packaging subdir 2018-07-17 01:03:15 +02:00
bcbe5e1cd9 dsnap-sync: rebase to an FHS structure 2018-07-17 01:03:15 +02:00
b154c7def0 dsnap-sync: verify_snapper_structure() - cleanup
o use generic "stat" for local and ssh calls
2018-07-17 01:03:15 +02:00
b39f4b8b1e dsnap-sync: run_finalize() - cleanup handling of metadata tagging 2018-07-17 01:03:15 +02:00
3e9fefbd91 dsnap-sync: run_backup() - cleanup btrfs send-recieve part
o show actual command call in verbose mode
o use more generic cmd variable
2018-07-17 01:03:15 +02:00
d93a11ab70 dsnap-sync: introduce snapper config-types and config-postix
o snapper config-types
  enhance snapper config template which new fields
  CHILD_CONFIG=<true | false>  default: missing -> means false
  PARENT_CONFIG=<parent config name>
o Use the types for distinctable snapshot runs:
  disk2disk (1st stage snapshots  CHILD_CONFIG='false' or missing
  cloning   (2st stage snapshots  CHILD_CONFIG='true' or missing
o snapper config postfix
  to overcome snapper config name clashes, enable dsnap-sync with
  selectable postfix (default: .<hostname>)
  cloning a "home" config to remote host will not interfere with
  a "home" d2d-config on this remote host
o update the snapper template dsnap-sync
2018-07-17 01:03:14 +02:00
36bcc7877e dsnap-sync: make 'pv' output selectable 2018-07-17 01:03:14 +02:00
da2817b380 dsnap-sync: pre-check for working ssh, if remote is given
o user must have a working pubkey auth for remote backups via ssh
o be more precise and state the progname
2018-07-17 01:03:14 +02:00
811f3d43b6 dsnap-sync: search location for snapper config (etc/default/snapper)
o adapt to debian like systems (debian/ubuntu/arch-linux)
2018-07-17 01:03:14 +02:00