Script Perl para Gestionar Servicios

d
Autor: @danielmichele

Fuente: danieldemichele.com.ar

Descripcion:
Las operaciones de control a realizar antes de ejecutar el comando  2:
1) El script debía verificar que quien lo ejecutara fuera Root, de otro modo a rootearse.
2) Además, necesitaba verificar que el servicio pasado como primer flag fuese un archivo existente de hecho en /etc/init.d/

Nota: Pa correr se debe de hacer lo siguiente services mysql restart
#!/usr/bin/perl
# Tiny scripts to make your life a bit easier by carp (www.danieldemichele.com.ar)

# Get Flags:
$service = $ARGV[0];
$task = $ARGV[1];

# Only allow to run script if Root
if ( $< == 0 ){

#Check if service exists
$requested_service = '/etc/init.d/'.$service;

    if(!(-e $requested_service)){
    # No Service at init.d, return error ...
    print "El servicio ".$service." no existe en /etc/init.d/\n";
    }else{
    # We do have a service, lets shoot the Flag (System will give valid options if bad Flag):
    system "/etc/init.d/".$service." ".$task;
    }

}else{
# No Root? =(
print "Permisos insuficientes. Corra este script como Root!.\n";  
}

Script realizado en Bash pueden verlo aqui

0 comentarios: