User Tools

Site Tools


shared_hosting:rsync_local
mkdir /usr/local/fsbackup
cd /usr/local/fsbackup
cat > rsync_local.sh
#!/bin/sh
`/usr/local/fsbackup/rlocal.sh /usr/local/fsbackup/rexclude.txt`
chmod +x rsync_local.sh
cat > rlocal.sh
#!/bin/sh
#
# need one parametr. It need for  root (/) directory rsync
# need set path to rsync. Default /usr/bin.
#
 
echo "::STARTING BACKUP PROCESS AT `date`"
 
RSYNC_PATH="/usr/local/bin/"
 
mkdir /mnt/root
mkdir /mnt/var
mkdir /mnt/home
mkdir /mnt/usr
 
if mount /dev/ad2s1a /mnt/root
        then echo "/dev/ad2s1a mounted ok"
             ${RSYNC_PATH}rsync --delete -a --exclude-from=${1}  / /mnt/root/ &&                                                                               echo "/mnt/root `date` successful" || echo "/mnt/root `date` FAILED"
        else echo "/dev/ad2s1a mount error... trying to fix"
             fsck -y /dev/ad2s1a && mount /dev/ad2s1a /mnt/root && ${RSYNC_PATH}                                                                              rsync --delete -a --exclude-from=${1}  / /mnt/root/ && echo "/mnt/root `date` su                                                                              ccessful" || echo "/mnt/root `date` FAILED"
fi
 
if mount /dev/ad2s1e /mnt/var
        then echo "/dev/ad2s1e mounted ok"
             ${RSYNC_PATH}rsync --delete -a /var/ /mnt/var/ && echo "/mnt/var `d                                                                              ate` successful" || echo "/mnt/var `date` FAILED"
        else echo "/dev/ad2s1e mount error... trying to fix"
             fsck -y /dev/ad2s1e && mount /dev/ad2s1e /mnt/var && ${RSYNC_PATH}r                                                                              sync --delete -a /var/ /mnt/var/ && echo "/mnt/var `date` successful" || echo "/                                                                              mnt/var `date` FAILED"
fi
 
if mount /dev/ad2s1f /mnt/home
        then echo "/dev/ad2s1f mounted ok"
             ${RSYNC_PATH}rsync --delete -a --exclude-from=${2} /home/ /mnt/home                                                                              / && echo "/mnt/home `date` successful" || echo "/mnt/home `date` FAILED"
        else echo "/dev/ad2s1f mount error... trying to fix"
             fsck -y /dev/ad2s1f && mount /dev/ad2s1f /mnt/home && ${RSYNC_PATH}                                                                              rsync --delete -a --exclude-from=${2} /home/ /mnt/home/ && echo "/mnt/home `date                                                                              ` successful" || echo "/mnt/home `date` FAILED"
fi
 
if mount /dev/ad2s1g /mnt/usr
        then echo "/dev/ad2s1g mounted ok"
             ${RSYNC_PATH}rsync --delete -a /usr/ /mnt/usr/ && echo "/mnt/usr `d                                                                              ate` successful" || echo "/mnt/usr `date` FAILED"
        else echo "/dev/ad2s1g mount error... trying to fix"
             fsck -y /dev/ad2s1g && mount /dev/ad2s1g /mnt/usr && ${RSYNC_PATH}r                                                                              sync --delete -a /usr/ /mnt/usr/ && echo "/mnt/usr `date` successful" || echo "/                                                                              mnt/usr `date` FAILED"
fi
 
umount -f /dev/ad2s1a
umount -f /dev/ad2s1e
umount -f /dev/ad2s1f
umount -f /dev/ad2s1g
 
rmdir /mnt/root
rmdir /mnt/var
rmdir /mnt/home
rmdir /mnt/usr
chmod +x rlocal.sh
cat > rexclude.txt
/mnt
/var
/home
/usr
/rescue
cat >> /etc/crontab
20      17      *       *       7       root    /usr/local/fsbackup/rsync_local.sh
shared_hosting/rsync_local.txt · Last modified: 2007/06/20 18:44 (external edit)