LinuxParty

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado
 

Aquí te vamos a dar algunos ejemplos para que puedas comprobar si tu ordenador, servidor o dispositivo está funcionando y la posibilidad que te lo reporte, en principio te lo vamos a dejar a tí.

Aquí te vamos a dar algunos ejemplos para que puedas comprobar si tu ordenador, servidor o dispositivo está funcionando y la posibilidad que te lo reporte, en principio te lo vamos a dejar a tí.

Utilizando ping.

Para información adicional use "man ping".

URL="myserver.com"

if ping -c 1 $URL; then
    echo "server live"
else
    echo "server down"
fi

La versión corta del script anterior es:

ping -c5 $SERVER || echo 'Server down'

Utilizando el comando wget, del que extraeremos a local una respuesta si el servidor responde.

Utilizando wget

Para información adicional use "man wget".

serverResponse=`wget --server-response --max-redirect=0 ${URL} 2>&1`

if [[ $serverResponse == *"Connection refused"* ]]
then
    echo "Unable to reach given URL"
    exit 1
fi

Utilizando el comando curl, del que extraeremos a local una respuesta si el servidor responde.

Utilizando curl

Para información adicional use "man curl".

check=$(curl -s -w "%{http_code}\n" -L "${HOST}${PORT}/" -o /dev/null)
if [[ $check == 200 || $check == 403 ]]
then
    # Service is online
    echo "Service is online"
    exit 0
else
    # Service is offline or not working correctly
    echo "Service is offline or not working correctly"
    exit 1
fi

Donde:

HOST = [ip o dns-name de su host]
(opcional) PORT = [opcional un puerto; no olvides comenzar con : ]
200 es el éxito normal http_response

403 es una redirección, por ejemplo, tal vez a una página de inicio de sesión, por lo que también es accesible y probablemente significa que el servicio se ejecuta correctamente

-s Modo silencioso o silencioso.
-L define la ubicación
-w En qué formato desea mostrar la respuesta
-> %{http_code}\n solo queremos el http_code
-o el archivo de salida
-> /dev/null redirige cualquier salida a /dev/null para que no se escriba en stdout o la variable de check. Por lo general, obtendría el código fuente html completo antes de http_response, por lo que también debe silenciar esto. 

Utilizando el comando nc, del que extraeremos a local una respuesta si el servidor responde.

Utilizando nc

Para información adicional use "man nc".

nc -4 -d -z -w 1 &{HOST} ${PORT} &> /dev/null
if [[ $? == 0 ]]
then
    # Port is reached
    echo "Service is online!"
    exit 0
else
    # Port is unreachable
    echo "Service is offline!"
    exit 1
fi

Donde:

HOST = [ip o dns-name de su host]
PORT = [ NO es opcional el puerto]
-4 forzar IPv4 (o -6 para IPv6)
-d No intente leer desde stdin
-z Solo escucha, no envíes datos
-w tiempo de espera
    Si una conexión y stdin están inactivos durante más de segundos de tiempo de espera, la conexión se cierra silenciosamente. (En este caso, nc saldrá 1 -> falla).

(opcional) -n Si solo usa una IP: No realice ninguna búsqueda de DNS o servicio en ninguna dirección, nombre de host o puerto especificados.

&> /dev/null No imprima ninguna salida del comando 

============================

Pin It

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Filtro por Categorías

We use cookies

Usamos cookies en nuestro sitio web. Algunas de ellas son esenciales para el funcionamiento del sitio, mientras que otras nos ayudan a mejorar el sitio web y también la experiencia del usuario (cookies de rastreo). Puedes decidir por ti mismo si quieres permitir el uso de las cookies. Ten en cuenta que si las rechazas, puede que no puedas usar todas las funcionalidades del sitio web.