Mini Shell
Direktori : /scripts/ |
|
Current File : //scripts/cpanelsync_postprocessor |
#!/usr/local/cpanel/3rdparty/bin/perl
# cpanel - scripts/cpanelsync_postprocessor Copyright 2022 cPanel, L.L.C.
# All rights reserved.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
use strict;
use Cpanel::Binaries ();
use Cpanel::LoadFile ();
my $saferoot = $ARGV[0];
if ( $saferoot =~ /^\/usr\/local\/cpanel$/ ) {
if ( -e $saferoot . '/.cpanelsync.new' && -s _ ) {
my $newfiles = Cpanel::LoadFile::loadfile( $saferoot . '/.cpanelsync.new' );
my @OPT = ();
if ( $newfiles =~ /Cpanel/ ) { push @OPT, '/usr/local/cpanel/Cpanel'; }
if ( $newfiles =~ /unprotected/ ) { push @OPT, '/usr/local/cpanel/base/unprotected'; }
if ( $newfiles =~ /yui/ ) { push @OPT, '/usr/local/cpanel/base/yui'; }
if ( $newfiles =~ /cjt/ ) { push @OPT, '/usr/local/cpanel/base/cjt'; }
_chattr(@OPT) if (@OPT);
}
}
if ( $saferoot =~ /^\/(?:scripts|usr\/local\/cpanel\/bin|usr\/local\/cpanel\/bin)$/ ) {
if ( -e $saferoot . '/.cpanelsync.new' && -s _ ) {
_chattr($saferoot);
}
}
elsif ( $saferoot =~ /^\/usr\/local\/cpanel\/base\/frontend/ ) {
if ( -e $saferoot . '/.cpanelsync.new' && -s _ ) {
_chattr($saferoot);
}
}
sub _chattr {
my @dirs = @_;
my $chattr_bin = Cpanel::Binaries::path('chattr');
-x $chattr_bin or exit;
print "Optimizing File Access in " . join( ',', @dirs ) . "....";
system $chattr_bin, '-R', '+A', @dirs;
print "Done\n";
}
Zerion Mini Shell 1.0