version 1.1, 2002/11/06 19:10:09
|
version 1.5, 2007/04/20 22:00:40
|
Line 31
|
Line 31
|
|
|
=head1 NAME |
=head1 NAME |
|
|
cleanup_prtspool.pl - Remove temporary files from the LON-CAPA print spool. |
cleanup_file_caches.pl - Remove temporary files from the LON-CAPA print |
|
spool, the multidownload zip spool, and userfiles cache. |
|
|
=head1 SYNOPSIS |
=head1 SYNOPSIS |
|
|
cleanup_prtspool.pl deletes files from /home/httpd/prtspool that have not |
cleanup_file_caches.pl deletes files from lonPrtDir, lonZipDir and |
been accessed in 24 hours. |
lonDocRoot/userfiles that have not been accessed in 24 hours. |
|
|
=head1 DESCRIPTION |
=head1 DESCRIPTION |
|
|
cleanup_prtspool.pl examines each file in /home/httpd/prtspool and checks |
cleanup_file_caches.pl examines each file in lonPrtDir, lonZipDir and |
its last access time. Those files which have not been accessed in 24 hours |
lonDocRoot/userfiles and checks its last access time. Those |
are unlinked. |
files which have not been accessed in 24 hours are unlinked. |
|
|
=cut |
=cut |
|
|
Line 52 use strict;
|
Line 53 use strict;
|
use lib '/home/httpd/lib/perl/'; |
use lib '/home/httpd/lib/perl/'; |
use File::Find; |
use File::Find; |
use File::stat; |
use File::stat; |
|
use LONCAPA::Configuration; |
my $help = 0; |
my $conf = LONCAPA::Configuration::read_conf('loncapa.conf'); |
my $killtime = time - 24 * 60 * 60; |
my $killtime = $conf->{'lonExpire'}; |
|
my $prt_spool_dir = $conf->{'lonPrtDir'}; |
|
my $zip_spool_dir = $conf->{'lonZipDir'}; |
|
my $userfile_dir = $conf->{'lonDocRoot'}.'/userfiles'; |
sub kill_if_old { |
sub kill_if_old { |
my $filename = $File::Find::name; |
my $filename = $File::Find::name; |
return if (! -f $filename); # We only want files |
return if (! -f $filename); # We only want files |
my $inode =stat($filename); |
my $inode = stat($filename); |
if ($inode->atime < $killtime) { |
if ((time-$inode->atime) > $killtime) { |
unlink($filename) || print "Unable to unlink $filename"; |
unlink($filename); |
} |
} |
} |
} |
|
|
find (\&kill_if_old,'/home/httpd/prtspool'); |
find (\&kill_if_old,$prt_spool_dir); |
|
find (\&kill_if_old,$zip_spool_dir); |
|
find (\&kill_if_old,$userfile_dir); |