-first_root=$(awk '$2 == "/mnt/root" {print $1}' /etc/mtab)
-
-# make $primary have the rw snapshot
-if [[ $primary ]] && ! $dry_run; then
- fstab=()
- for m in ${mountpoints[@]}; do
- last-snap $m
- fstab+=("$first_root $m btrfs noatime,subvol=$last_snap 0 0")
- done
-
- printf "%s\n" "${fstab[@]}" | cedit /etc/fstab
- for d in ${mountpoints[@]}; do
- mount $d
- btrfs sub del /mnt/root$d
- done
- ssh root@primary bash -s "${mountpoints[*]}" "${last_snaps[*]}" <<'EOF'
-set -xe
-mountpoints=($1)
-last_snaps=($2)
-first_root=$(awk '$2 == "/mnt/root" {print $1}' /etc/mtab)
-for ((i=0; i < ${#mountpoints[@]}; i++)); do
- m=${mountpoints[i]}
- vol=${m##*/}
- fstab+=("$first_root $m btrfs noatime,subvol=$vol 0 0")
- cd /mnt/root
- btrfs sub snapshot ${last_snaps[i]} $vol
- mount $m
-done
+if ! $dry_run; then
+ for tg in ${targets[@]}; do
+ scp $script_dir/{mount-latest-subvol,check-subvol-stale} \
+ root@tg:/usr/local/bin
+ ssh root@$tg bash <<'EOF'
+set -e
+chmod +x /usr/local/bin/{mount-latest-subvol,check-subvol-stale}
+mount-latest-subvol