--- foxridge-archiver/archivecheck.pl 2005/03/23 12:12:08 1.3 +++ foxridge-archiver/archivecheck.pl 2017/03/16 17:00:43 1.8 @@ -1,4 +1,4 @@ -#!/usr/local/bin/perl -w +#!/usr/bin/perl -w use strict; @@ -16,7 +16,7 @@ $|=1; # # program version -my $version = "0.4.1 (15.2.2005)"; +my $version = "0.4.5 (13.7.2009 ROC)"; # read command line parameters my $args = parseargs; @@ -29,8 +29,6 @@ my $namespace = ""; # archive name (archive-path element, usually == $docdir) my $archname; -# archive storage date -my $archdate; ####################################################### @@ -126,7 +124,10 @@ sub read_resource_meta { my $name = sstrip($fn->findvalue('child::name')); my $path = sstrip($fn->findvalue('child::path')); logger("DEBUG", "DIR: ($path)$name"); - my $f = ($path) ? "$path/$name" : "$name"; + my $f = "$name"; + if (($path)&&($path ne '.')) { + $f = "$path/$name"; + } $files{$f} = [$name]; } @@ -204,6 +205,7 @@ sub run_query { $archcmd .= " -description='$archname'"; $archcmd .= " '$dirquery'"; + logger('INFO', "querying TSM server for $dirquery, please wait..."); my $archcnt = 0; print LOG "CMD: $archcmd\n"; if (open ARCH, "$archcmd 2>&1 |") { @@ -341,8 +343,8 @@ sub compare_files { logger("INFO", "archivecheck $version"); # make shure the right user is running this program -my $user = getlogin; -if (($user ne "archive")&&($user ne "root")) { +my $user = getlogin || getpwuid($<) ; +if (not (($user eq "archive")||($user eq "root"))) { logger("ABORT", "you must be archive or root user to run this program!"); exit 1; } @@ -366,8 +368,9 @@ my %archived_files = (); my $archcnt = 0; if ($docdir =~ /\/mpiwg\/archive\/data\/(.*)/) { # TSM needs two different paths because of historical mount points :-( - my $docdir1 = "/mpiwg/archive/data/"; - $archcnt += run_query($docdir1, \%archived_files); + # ...doesn't work anymore since old filespace was renamed (13.7.2009) +# my $docdir1 = "/mpiwg/archivedataold/"; +# $archcnt += run_query($docdir1, \%archived_files); my $docdir2 = "/mpiwg/archive/"; $archcnt += run_query($docdir2, \%archived_files); } else {