code-dumps/sh/rsync-job.sh

30 lines
898 B
Bash

#!/usr/bin/env bash
function log() {
echo "$(date -u): /opt/rxt/nfs-rsync.sh - $@" >> /var/log/nfs-rsync-job.log
}
# Empty previous log
truncate -s0 /var/log/nfs-rsync.log
# First check that /content is mounted
if grep -q /content /proc/mounts ; then
log target mount exist, continuing.
else
log FAILED. target mount is missing.
exit 1
fi
# Check if rsync is already running
if pgrep -f 'rsync.*/var/log/nfs-rsync.log'; then
log WARNING. another instance of /opt/rxt/nfs-rsync.sh is already running. skipping this run.
exit 1
fi
if rsync -axz --delete-delay --ignore-missing-args --stats --log-file=/var/log/nfs-rsync.log 192.168.102.62:/san/nfs-fs/ /content/; then
log OK. rsync completed successfully
else
log FAILED. rsync did not complete with exit code $?. please refer to /var/log/nfs-rsync.log for additional details.
fi