%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /scripts/
Upload File :
Create Path :
Current File : //scripts/restartsrv_inetd

#!/usr/local/cpanel/3rdparty/bin/perl

# cpanel - scripts/restartsrv_inetd                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 cPstrict;

use Cpanel::RestartSrv        ();
use Cpanel::RestartSrv::Lock  ();
use Cpanel::Services::Enabled ();
use Cpanel::OS                ();
use Cpanel::Exception         ();

eval {
    local $SIG{'__DIE__'};
    require Cpanel::Rlimit;
    Cpanel::Rlimit::set_rlimit_to_infinity();
};

Cpanel::RestartSrv::setuppath();

my ( $action, $check, $status ) = Cpanel::RestartSrv::parseargv();

my $iscript        = '';
my $initdir        = '';
my $service        = 'xinetd';
my $processowner   = 'root';
my $overridercconf = '';
my $manualstart    = 0;
my $servicebin     = '';
my $serviceflags   = '';
my $disabled       = 0;

if ( !Cpanel::OS::supports_inetd() ) {
    die Cpanel::Exception::create( 'Services::Deprecated', [ service => $service ] )->to_string . "\n";
}

$disabled = scalar grep { !Cpanel::Services::Enabled::is_enabled($_) } qw(inetd xinetd);
$iscript  = Cpanel::RestartSrv::getinitfile($service);

my $installed = $iscript ? 1 : 0;

if ( $action && !$disabled ) {

    die Cpanel::Exception::create( 'Services::NotInstalled', [ service => $service ] ) if !$installed;
    my $lock = Cpanel::RestartSrv::Lock->new($service);

    Cpanel::RestartSrv::nooutputsystem( $iscript, 'stop' );
    Cpanel::RestartSrv::doomedprocess($service);
    if ( $action != $Cpanel::RestartSrv::STOP ) {
        Cpanel::RestartSrv::logged_startup( $service, 1, [ $iscript, 'start' ] );
    }

    $lock->release() if $lock;

}
elsif ($status) {

    #--status (show ps)
    if ($disabled) {
        print "$service is disabled\n";
    }
    else {
        die Cpanel::Exception::create( 'Services::NotInstalled', [ service => $service ] ) if !$installed;
        print Cpanel::RestartSrv::check_service( 'service' => $service, 'user' => $processowner, 'pidfile' => '/var/run/' . $service . '.pid' );
    }
}
elsif ($check) {
    exit if ($disabled);

    die Cpanel::Exception::create( 'Services::NotInstalled', [ service => $service ] ) if !$installed;
    if ( Cpanel::RestartSrv::check_service( 'service' => $service, 'user' => $processowner, 'pidfile' => '/var/run/' . $service . '.pid' ) eq '' ) {
        print "$service is not running\n";
    }
}

Zerion Mini Shell 1.0