version 1.4, 2005/12/09 16:26:48
|
version 1.5, 2015/03/16 05:25:47
|
Line 36 http://www.lon-capa.org/
|
Line 36 http://www.lon-capa.org/
|
<target dist="default">/home/httpd/lonUsers</target> |
<target dist="default">/home/httpd/lonUsers</target> |
<perlscript mode="fg"> |
<perlscript mode="fg"> |
|
|
print "\nCleaning up file_permissions.db\n"; |
my $cleanup; |
|
if (-e '/etc/loncapa-release') { |
|
if (open(PIPE,"cat /etc/loncapa-release.prev |grep '^LON-CAPA release' |")) { |
|
if (<PIPE> =~ /^\QLON-CAPA release \E(CVS_HEAD|\d+\.\d+\.\d+\.?\w*)\-\d+$/) { |
|
my $previous = $1; |
|
unless ($previous eq 'CVS_HEAD') { |
|
my ($major,$minor) = ($previous =~ /^(\d+)\.(\d+)\./); |
|
if (($major ne '') && ($minor ne '')) { |
|
if (($major == 2) && ($minor < 10)) { |
|
$docleanup = 1; |
|
} |
|
} |
|
} |
|
} |
|
close(PIPE); |
|
} |
|
} |
|
|
|
if ($docleanup) { |
|
print "\nCleaning up file_permissions.db\n"; |
|
|
my $logfile = '/tmp/clean_file_permissions_log.txt'; |
my $logfile = '/tmp/clean_file_permissions_log.txt'; |
|
|
# get a list of all user directories |
# get a list of all user directories |
print "Getting directory listing.\n"; |
print "Getting directory listing.\n"; |
my @dirs=`find <TARGET /> -type d `; |
my @dirs=`find <TARGET /> -type d `; |
my @userdirs=grep(m|/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*|, @dirs); |
my @userdirs=grep(m|/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*/[^/]*|, @dirs); |
|
|
my $count = 0; |
my $count = 0; |
my $countby = 100; |
my $countby = 100; |
print "Updating ".scalar(@userdirs)." files.\n"; |
print "Updating ".scalar(@userdirs)." files.\n"; |
my $char_count=0; |
my $char_count=0; |
foreach my $udir (@userdirs) { |
foreach my $udir (@userdirs) { |
if (++$count % $countby == 0) { |
if (++$count % $countby == 0) { |
print("\b" x $char_count); |
print("\b" x $char_count); |
print($count."/".scalar(@userdirs)); |
print($count."/".scalar(@userdirs)); |
$char_count = length($count."/".scalar(@userdirs)); |
$char_count = length($count."/".scalar(@userdirs)); |
|
} |
|
chomp($udir); |
|
my $file = $udir.'/file_permissions.db'; |
|
next if (! -e $file); |
|
system('/home/httpd/perl/debug/clean_db.pl '.$file. |
|
' "error%3a%202%20tie%28GDBM%29%20Failed%20while%20attempting%20dump" 2>>'.$logfile); |
} |
} |
chomp($udir); |
print("\b" x $char_count); |
my $file = $udir.'/file_permissions.db'; |
print($count."/".scalar(@userdirs)); |
next if (! -e $file); |
print "\nCompleted!\n"; |
system('/home/httpd/perl/debug/clean_db.pl '.$file. |
} else { |
' "error%3a%202%20tie%28GDBM%29%20Failed%20while%20attempting%20dump" 2>>'.$logfile); |
print("Clean up of file_permissions.db files not required.\n"); |
} |
} |
print("\b" x $char_count); |
|
print($count."/".scalar(@userdirs)); |
|
print "\nCompleted!\n"; |
|
</perlscript> |
</perlscript> |
</file> |
</file> |
</files> |
</files> |