#!/bin/bash
-source /a/bin/errhandle/err
+source /a/bin/bash-bear-trap/bash-bear
err-cleanup() {
echo 1 >~/.local/conflink
}
common-file-setup() {
local dir fs x f reload_systemd
- local -a reload_services
local -a restart_services
reload_systemd=false
# note, i ran chmod -R g-s on the filesystem dirs
# we dont want t, instead c for checksum.
# That way we dont set times on directories.
# -a = -rlptgoD
- cmd=( s rsync -rclpgoDiSAX --chown=root:root
+ # -A is acls, implies -p
+ cmd=( s rsync -rclgoDiSAX --chmod=Dg-s --chown=root:root
--exclude=/etc/dovecot/users
--exclude='/etc/exim4/passwd*'
--exclude='/etc/exim4/*.pem'
#### begin special extra stuff ####
install -d -m700 ~/gpg-agent-socket
- if [[ -e /etc/bitcoin ]] && getent group bitcoin &>/dev/null; then
- s chown bitcoin:bitcoin /etc/bitcoin
- fi
-
f=/var/lib/bind
if [[ -e $f ]]; then
# reset to the original permissions.
if [[ -e /var/lib/znc ]] && getent group znc; then
s chown -R znc:znc /var/lib/znc
fi
- for f in /etc/prometheus-{,export-}htpasswd; do
- if [[ -e $f ]]; then
- # note: this is duplicative of the file's own permissions
- s chmod 640 $f
- if getent passwd www-data &>/dev/null; then
- s chown root:www-data $f
- fi
- fi
- done
- f=/etc/prometheus-pass
- if [[ -e $f ]]; then
- # note: this is duplicative of the file's own permissions
- s chmod 640 $f
+ if [[ -e /p/c/user-specific ]]; then
if getent passwd prometheus &>/dev/null; then
- s chown root:prometheus $f
+ v s rsync -clpgoDiSAX --chmod=Dg-s --chown=root:prometheus /p/c/user-specific/prometheus/prometheus-pass /etc
+ v s rsync -clpgoDiSAX --chmod=Dg-s --chown=root:prometheus /p/c/user-specific/prometheus/prometheus/ssl/* /etc/prometheus/ssl
fi
- fi
- f=/etc/nagios4/htdigest.users
- if [[ -e $f ]]; then
- # note: this is duplicative of the file's own permissions
- s chmod 640 $f /etc/prometheus-pass
- if getent passwd nagios &>/dev/null; then
- s chown nagios:www-data $f
+ if getent passwd www-data &>/dev/null; then
+ v s rsync -clpgoDiSAX --chmod=Dg-s --chown=root:www-data /p/c/user-specific/www-data/* /etc
fi
fi
- f=/var/lib/bitcoind/settings.json
- if [[ -e $f ]]; then
- if getent passwd bitcoin &>/dev/null; then
- s chown bitcoin:bitcoin $f
- fi
+
+ if [[ -d /var/lib/bitcoind && -d /p/c/user-specific/bitcoin ]]; then
+ s rsync -clpgoDiSAX --chmod=Dg-s --chown=bitcoin:bitcoin /p/c/user-specific/bitcoin/settings.json /var/lib/bitcoind
+ s rsync -rclpgoDiSAX --chmod=Dg-s --chown=root:bitcoin /p/c/user-specific/bitcoin/bitcoin /etc
fi
##### end special extra stuff #####