[X-Unix] Re: X-Unix Digest, Vol 18, Issue 2
Robert Frank
robert.frank at unibas.ch
Thu Feb 23 23:43:51 PST 2006
On 24/02/2006, at 6:35 , x-unix-
request at listserver.themacintoshguy.com wrote:
> Hi,
> This is rather long, sorry.
>
> Rather than use a 'third-party' application to do my backups, I have
> written a bash script to backup my important files to another
> computer on my home lan. Why? Just because I can.
>
> It's working well, with the exception of a couple of things I would
> like some input on.
>
> First, I'm not satisfied with how I'm verifying that the backup
> volume on the remote server is mounted or not. Can anyone help make
> that section 'bullet-proof'?
>
> Second, [...]
>
> Here is my script...
> *****
> #!/bin/bash
>
> ## NOTE: ADD 'n' TO THE cmd OPTIONS WHEN TESTING
>
> dc=`date +%m%d%y`
> file='/Users/Charles/Documents/backup.log.'$dc'.txt'
> cmd='rsync -uvrtp --delete-after'
> src=/Users/Charles
> dest=/Users/charles/mnt
>
> # Is the server on?
> ping -o -t 5 moe > /dev/null 2>&1
> if [ "$?" -ne 0 ] ; then
> # Assume server is not on, display alert and quit
> echo "Cannot ping server, exiting" >> $file
> mail -s "Weekly Backup results" charles < $file
> exit
> else
> # The server is on, is the backup volume mounted?
> if [ `ls /Users/charles/mnt/FreeBSD > /dev/null 2>&1` ] ; then
> #Volume is mounted, continue
> ...
> else
> # Volume is not mounted, mount it and continue
> mount -t nfs moe:/backup /Users/charles/mnt > /dev/null 2>&1
as proposed, save the return code here
> if [ "$?" -eq 0 ] ; then
> # Mounted OK
> echo `date` > $file
> echo >> $file
> echo "Mounted volume successfully, continuing." >> $file
> echo >> $file
> else
> # Mount failed
> if [ "$?" ! -eq 0 ] ; then
use '-ne' instead of '! -eq'
'!' tries to negate the following *expression* (c.f. man test) and '-
eq 0' isn't an expression, so thigs will go wrong here!
If you insist on using '!' then it's '! "$?" -eq 0'.
> echo `date` > $file
> echo >> $file
> echo "Mount returned" "$?" ", exiting." >> $file
use the saved return value here
> mail -s "Weekly Backup results" charles < $file
> exit
> fi
> fi
> fi
> fi
Robert
Departement Informatik FGB tel +41 (0)61 267 14 66
Universität Basel fax. +41 (0)61 267 14 61
Robert Frank
Klingelbergstrasse 50 Robert.Frank at unibas.ch
CH-4056 Basel
Switzerland http://
www.informatik.unibas.ch/personen/frank_r.html
More information about the X-Unix
mailing list