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 

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

No estás registrado para postear comentarios



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