Link to home
Start Free TrialLog in
Avatar of Robert Berke
Robert BerkeFlag for United States of America

asked on

nightly backup of client files from an SBS 2003 server

Every night my client's ShadowProtect backup software saves the entire server to H: which is an external USB drive that is rotated offsite the next morning.

Recently the client requested that files on the 10 client workstations be added to the nightly backup.

The only thing that needs to be backed up is each client's Outlook PST file.

So, I scheduled a  simple dos batch file which backs up all the different pst file names:  

===Csaveall.bat===
    call CSaveStart Cathy
   call  Csave Cathy "\\CPU0418\c$\Documents and Settings...archive.pst"
   call  Csave Cathy "\\CPU0418\c$\Documents and Settings\... inbox.pst"

    call CSaveStart John
    call Csave John "\\CPU0419\c$\Documents and Settings...archive.pst"
    call Csave John \\CPU0419\c$\Documents and Settings\... inbox.pst

… etc etc
    Call CsaveStart User10
    call Csave User10 "….archive..
    call  csave User10 " …inbox"

And, I wrote the following two supporting batch macros  Csave and CsaveStart which don't work quite the way I want.

The problem occurs when a user forgets to sign off at the end of the day.  When this happens, the master macro deletes the old backup then aborts before creating a new backup. Also none of the subsequent user files get saved.  

I can "solve" some of this problem by breaking master batch file into 10 individually scheduled batch files. And, I could probably solve some more by converting it to vbscript. But it seems obvious that this is not a satisfactory way of saving the files.  Does anybody have a more reilable way?

I know that there are third party programs to do this function, but the last time I checked it would have cost a couple thousand dollars for 10 workstations. That seems like overkill for saving 20 files.



Here are the batch files.

===CSAVESTART===
   ::  example CsaveStart janedoe
   echo y |del "h:\%1-1\*.*"
   rmdir "h:\%1-1"
   :: move actually renames a directory, even on very old DOS computers
   move "h:\%1" "h:\%1-1"
   md "h:\%1"  
   
===CSAVE===
   :: example Csave janedoe "\\cpu999\C$\Documents and Settings\janedoe\Local Settings\Application    Data\Microsoft\Outlook\janesoutlook.pst"
   copy %2 "h:\%1\*.*"
ASKER CERTIFIED SOLUTION
Avatar of Rob Williams
Rob Williams
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial