Server IP : 103.119.228.120 / Your IP : 3.133.128.171 Web Server : Apache System : Linux v8.techscape8.com 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64 User : nobody ( 99) PHP Version : 5.6.40 Disable Function : shell_exec,symlink,system,exec,proc_get_status,proc_nice,proc_terminate,define_syslog_variables,syslog,openlog,closelog,escapeshellcmd,passthru,ocinum cols,ini_alter,leak,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dl,dll,myshellexec,proc_open,socket_bind,proc_close,escapeshellarg,parse_ini_filepopen,fpassthru,exec,passthru,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,popen,show_source,proc_nice,proc_terminate,proc_get_status,proc_close,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,dl,symlink,shell_exec,system,dl,passthru,escapeshellarg,escapeshellcmd,myshellexec,c99_buff_prepare,c99_sess_put,fpassthru,getdisfunc,fx29exec,fx29exec2,is_windows,disp_freespace,fx29sh_getupdate,fx29_buff_prepare,fx29_sess_put,fx29shexit,fx29fsearch,fx29ftpbrutecheck,fx29sh_tools,fx29sh_about,milw0rm,imagez,sh_name,myshellexec,checkproxyhost,dosyayicek,c99_buff_prepare,c99_sess_put,c99getsource,c99sh_getupdate,c99fsearch,c99shexit,view_perms,posix_getpwuid,posix_getgrgid,posix_kill,parse_perms,parsesort,view_perms_color,set_encoder_input,ls_setcheckboxall,ls_reverse_all,rsg_read,rsg_glob,selfURL,dispsecinfo,unix2DosTime,addFile,system,get_users,view_size,DirFiles,DirFilesWide,DirPrintHTMLHeaders,GetFilesTotal,GetTitles,GetTimeTotal,GetMatchesCount,GetFileMatchesCount,GetResultFiles,fs_copy_dir,fs_copy_obj,fs_move_dir,fs_move_obj,fs_rmdir,SearchText,getmicrotime MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /scripts/ |
Upload File : |
#!/usr/local/cpanel/3rdparty/bin/perl # cpanel - scripts/upcp-running 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 warnings; use Cpanel::Unix::PID::Tiny (); use Cpanel::Usage (); my $invert_exit; my $logfile; my $pid; my $quiet; Cpanel::Usage::wrap_options( \@ARGV, \&print_usage_and_exit, { 'invert-exit' => \$invert_exit, 'logfile' => \$logfile, 'pid' => \$pid, 'quiet' => \$quiet, }, ); $invert_exit = $invert_exit ? 1 : 0; $quiet = $quiet ? 1 : 0; my $found_process; my $pid_matched; my $is_newest_logfile; my $pidfile = '/var/run/upcp.pid'; my $upid = Cpanel::Unix::PID::Tiny->new(); my $curpid = $upid->get_pid_from_pidfile($pidfile); if ($curpid) { if ( $upid->is_pid_running($curpid) ) { $found_process = 1; if ( $curpid eq $pid ) { $pid_matched = 1; } } } if ( $logfile && opendir my $dh, '/var/cpanel/updatelogs' ) { while ( my $entry = readdir $dh ) { next if $entry !~ m/^update\.\d+\.log$/; if ( $entry gt $logfile ) { undef $is_newest_logfile; last; } $is_newest_logfile = 1; } closedir $dh; } my $upcp_running = 0; if ( $pid && $logfile ) { if ( $pid_matched && $is_newest_logfile ) { $upcp_running = 1; } } elsif ($pid) { if ($pid_matched) { $upcp_running = 1; } } elsif ($logfile) { if ($is_newest_logfile) { $upcp_running = 1; } } elsif ($found_process) { $upcp_running = 1; } if ( !$quiet ) { if ($upcp_running) { print "upcp is running.\n"; } else { print "upcp is not running.\n"; } } exit( !$upcp_running ^ $invert_exit ); sub print_usage_and_exit { my ($error) = @_; my %options = ( 'help' => 'Brief help message', 'invert-exit' => 'Exit with an error value if upcp is running', ## internal usage parameters #'logfile' => 'Log file that target upcp is writing/wrote to', #'pid' => 'PID of the target upcp', ); if ( defined $error ) { print $error, "\n\n"; } print "Usage: $0 "; print "[options]\n\n"; print " Options:\n"; while ( my ( $opt, $desc ) = each %options ) { print " --$opt"; my $space = 12 - length $opt; ( 0 < $space ) ? print ' ' x $space : print ' '; print "$desc\n"; } exit 1 if defined $error; exit; }