question abount pre-xfer exec

dotdeb at gmail.com dotdeb at gmail.com
Sat Sep 24 13:15:06 UTC 2022


I've been using rsync for years to backup my machines both at work and at
home.
These days I faced a new "challenge": at work I connect my laptop to a
docking station with an external usb disk. I'd like to use this disk as a
backup volume.

I put my disk in /etc/fstab to be mounted at boot (with 'nofail' option to
avoid errors when I'm at home). I have no problems if the laptop is booted
after the connection to the docking station but, if I work at home, suspend
the laptop and then go to work and connect it to the docking station and
resume it, the /backup volume will not be mounted automatically.

I found that rsyncd.conf can execute scripts before and I tried to create a
script to be executed (as early stage or pre transfer? a bit confuser about
it) to check if /backup is mounted and mount it if not.

I verified that the script is executed (I put there some debugging "echo"
sent to the log file) but the mount command within it does not mount
anything.

Here it is the rsyncd.conf

##################################
read only = false
write only = false
usechroot = true
uid = 0
gid = 0

early exec = /tmp/test-pre-exec

[rsync-backup-xxx]
        comment Local rsync-backup of xxx
        path = /backup/xxx
        log file = /var/log/rsyncd.log
##################################

and the script /tmp/test-pre-exec

##################################
#!/bin/sh

echo -n "executing pre-xfer script ..." >> /var/log/rsyncd.log

if ! grep -qs '/backup ' /proc/mounts
then
    echo -n "mounting /backup ..." >> /var/log/rsyncd.log
    /usr/bin/mount >> /var/log/rsyncd.log
fi

echo " done" >> /var/log/rsyncd.log

exit 0
##################################
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.samba.org/pipermail/rsync/attachments/20220924/68882ba7/attachment.htm>


More information about the rsync mailing list