X-Git-Url: https://iankelling.org/git/?p=distro-setup;a=blobdiff_plain;f=btrbk-run;h=602422987946e1c87b4dbf3e86094108056706c2;hp=4762b2fd553319a0bfaca886f893ea29d85ac2c0;hb=af37f71b1c4e1dfa9ebe9a270f4b839cd742cad5;hpb=a8aa03c1f901a6176f289ec41541b0897944a96c diff --git a/btrbk-run b/btrbk-run index 4762b2f..6024229 100755 --- a/btrbk-run +++ b/btrbk-run @@ -53,7 +53,7 @@ if [[ -s $default_args_file ]]; then set -- $(< $default_args_file) "$@" fi -temp=$(getopt -l help cl:m:npt:vh "$@") || usage 1 +temp=$(getopt -l help cl:m:nps:t:vh "$@") || usage 1 eval set -- "$temp" while true; do case $1 in @@ -87,7 +87,7 @@ if [[ -s $default_args_file ]]; then sleep 5 fi -if [[ -v targets && -v source ]]; then +if [[ -v targets && $source ]]; then echo "$0: error: -t and -s are mutually exclusive" >&2 exit 1 fi @@ -95,7 +95,7 @@ fi echo -e "$0: options: conf_only=$conf_only\ndry_run=$dry_run\nrate_limit=$rate_limit\nverbose=$verbose\ncmd_arg=$cmd_arg" # set default targets -if [[ ! -v targets && ! -v source ]]; then +if [[ ! -v targets && ! $source ]]; then case $HOSTNAME in x2|kw) if [[ $HOSTNAME == "$MAIL_HOST" ]]; then @@ -124,7 +124,7 @@ if [[ -v targets ]]; then echo "targets: ${targets[*]}" fi -if [[ -v source ]]; then +if [[ $source ]]; then echo "source: $source" fi @@ -222,7 +222,7 @@ EOF -for tg in ${targets[@]:-localhost}; do +for tg in ${targets[@]:-$HOSTNAME}; do # for an initial run, btrbk requires the dir to exist. ssh root@$tg mkdir -p /mnt/root/btrbk done @@ -232,9 +232,9 @@ done vol=/mnt/root for m in ${mountpoints[@]}; do sub=${m##*/} - if [[ -v source ]]; then + if [[ $source ]]; then cat >>/etc/btrbk.conf </dev/null; then @@ -294,12 +294,13 @@ if mountpoint $rsync_mountpoint >/dev/null; then done fi -if ! $dry_run; then - # note, targets will be empty if source is set. - m $script_dir/mount-latest-remote ${targets[@]} +PATH=$script_dir:$PATH +if [[ $source ]]; then + m mount-latest-subvol +else + m mount-latest-remote ${targets[@]} fi - # todo: move variable data we don't care about backing up # to /nocow and symlink it.