--- foxridge-archiver/unarchiver.pl 2005/09/20 17:30:34 1.5 +++ foxridge-archiver/unarchiver.pl 2009/08/11 14:34:59 1.8 @@ -18,7 +18,7 @@ $|=1; # # program version -my $version = "0.3.1 (21.6.2005)"; +my $version = "0.3.4 (11.8.2009)"; # read command line parameters my $args = parseargs; @@ -200,11 +200,13 @@ sub run_retrieve { print LOG "START unarchive $version on ", scalar localtime, "\n"; my $archcmd = $archprog; - $archcmd .= " retrieve -subdir=yes -replace=all"; + $archcmd .= " retrieve -subdir=yes -replace=all -ifnewer"; $archcmd .= " -description='$archname'"; # archive name $archcmd .= " '$archmount/'"; # archive mount point $archcmd .= " '$archparent/'"; # destination dir name + logger('INFO', "querying TSM server for $archmount, please wait..."); + my $archcnt = 0; my $numfiles = 0; print LOG "CMD: $archcmd\n"; @@ -297,7 +299,7 @@ sub check_files { logger("INFO", "unarchiver $version"); # make shure the right user is running this program -my $user = getlogin; +my $user = getlogin || getpwuid($<); if (($user)&&($user ne "archive")&&($user ne "root")) { logger("ABORT", "you must be archive or root user to run this program!"); exit 1;