Réorganisation repo SHELL
This commit is contained in:
parent
23af032737
commit
f90b4d236c
@ -1,100 +1,100 @@
|
|||||||
#!/bin/ksh
|
#!/bin/ksh
|
||||||
|
|
||||||
# TITRE check_nbproc.sh
|
# TITRE check_nbproc.sh
|
||||||
# DESCRIPTION : Script de check du nombre de processus
|
# DESCRIPTION : Script de check du nombre de processus
|
||||||
# USAGE : lancement du script en ajoutant l'argument -p <nom du processus> -c <nombre de processus voulu>
|
# USAGE : lancement du script en ajoutant l'argument -p <nom du processus> -c <nombre de processus voulu>
|
||||||
# HISTORIQUE :
|
# HISTORIQUE :
|
||||||
# T | Date | Auteur | Description
|
# T | Date | Auteur | Description
|
||||||
#---+------------+------------------------------+------------------------------------
|
#---+------------+------------------------------+------------------------------------
|
||||||
# A | 16/07/21 | Demonic | Création
|
# A | 16/07/21 | Demonic | Création
|
||||||
# -----------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES VARIABLES ##
|
## DECLARATION DES VARIABLES ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# INITIALISATION DESCRIPTION ALERTE NAGIOS
|
# INITIALISATION DESCRIPTION ALERTE NAGIOS
|
||||||
statusReport=""
|
statusReport=""
|
||||||
# INITIALISATION SEVERITE ALERTE NAGIOS (OK PAR DEFAUT)
|
# INITIALISATION SEVERITE ALERTE NAGIOS (OK PAR DEFAUT)
|
||||||
severityReport=0
|
severityReport=0
|
||||||
# INITIALISATION VARIABLE DU NOM DU PROCESSUS
|
# INITIALISATION VARIABLE DU NOM DU PROCESSUS
|
||||||
NOMPROC=""
|
NOMPROC=""
|
||||||
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE PROCESSUS VOULU
|
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE PROCESSUS VOULU
|
||||||
NBOK=""
|
NBOK=""
|
||||||
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE PROCESSUS PRESENT
|
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE PROCESSUS PRESENT
|
||||||
NBPROC=""
|
NBPROC=""
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES FONCTIONS ##
|
## DECLARATION DES FONCTIONS ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# decho(){
|
# decho(){
|
||||||
# [ ${debug} -gt 0 ] && echo $*
|
# [ ${debug} -gt 0 ] && echo $*
|
||||||
# }
|
# }
|
||||||
|
|
||||||
# FONCTION POUR DEFINIR LA SEVERITE DE L'ALERTE
|
# FONCTION POUR DEFINIR LA SEVERITE DE L'ALERTE
|
||||||
setSeverity(){
|
setSeverity(){
|
||||||
severityToSet=${1}
|
severityToSet=${1}
|
||||||
case ${severityToSet} in
|
case ${severityToSet} in
|
||||||
0)[ ${severityReport} -lt 1 ] && severityReport=0;;
|
0)[ ${severityReport} -lt 1 ] && severityReport=0;;
|
||||||
1)[ ${severityReport} -lt 2 ] && severityReport=1;;
|
1)[ ${severityReport} -lt 2 ] && severityReport=1;;
|
||||||
2) severityReport=2;;
|
2) severityReport=2;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
# FONCTION USAGE (option -h)
|
# FONCTION USAGE (option -h)
|
||||||
USAGE(){
|
USAGE(){
|
||||||
echo "Ce script permet de vérifier le nombre de processus actifs pour un processus donné et renvoyer une alerte via Nagios si moins/plus de processus"
|
echo "Ce script permet de vérifier le nombre de processus actifs pour un processus donné et renvoyer une alerte via Nagios si moins/plus de processus"
|
||||||
echo "USAGE : check_nbproc.sh -p <processus> -c <nb_de process_voulus>"
|
echo "USAGE : check_nbproc.sh -p <processus> -c <nb_de process_voulus>"
|
||||||
exit 0
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## RECUPERATION DES ARGUMENTS ##
|
## RECUPERATION DES ARGUMENTS ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# ARGUMENT -p : NOM DU PROCESSUS
|
# ARGUMENT -p : NOM DU PROCESSUS
|
||||||
# ARGUMENT -c : NOMBRE DE PROCESS VOULU
|
# ARGUMENT -c : NOMBRE DE PROCESS VOULU
|
||||||
# ARGUMENT -h : USAGE
|
# ARGUMENT -h : USAGE
|
||||||
|
|
||||||
while getopts ":p:c:h:" opt; do
|
while getopts ":p:c:h:" opt; do
|
||||||
case "${opt}" in
|
case "${opt}" in
|
||||||
p) NOMPROC="${OPTARG}";;
|
p) NOMPROC="${OPTARG}";;
|
||||||
c) NBOK="${OPTARG}";;
|
c) NBOK="${OPTARG}";;
|
||||||
h) USAGE;;
|
h) USAGE;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
########################
|
########################
|
||||||
## PROGRAMME ##
|
## PROGRAMME ##
|
||||||
########################
|
########################
|
||||||
|
|
||||||
# LISTING DU NOMBRE DE PROCESSUS
|
# LISTING DU NOMBRE DE PROCESSUS
|
||||||
NBPROC=$(ps -ef | grep -i "$NOMPROC" | grep -v grep | grep -v "check_" | wc -l)
|
NBPROC=$(ps -ef | grep -i "$NOMPROC" | grep -v grep | grep -v "check_" | wc -l)
|
||||||
|
|
||||||
# CONDITION POUR DETERMINER SI CHECK OK/KO
|
# CONDITION POUR DETERMINER SI CHECK OK/KO
|
||||||
if [ $NBPROC -eq $NBOK ]; then
|
if [ $NBPROC -eq $NBOK ]; then
|
||||||
# CHECK OK
|
# CHECK OK
|
||||||
# FORMATTAGE CONTENU NAGIOS
|
# FORMATTAGE CONTENU NAGIOS
|
||||||
statusReport="<font color="green"><b>Nombre de processus $NOMPROC OK</b></font>"
|
statusReport="<font color="green"><b>Nombre de processus $NOMPROC OK</b></font>"
|
||||||
|
|
||||||
else
|
else
|
||||||
# CHECK KO
|
# CHECK KO
|
||||||
# PASSAGE SEVERITE NAGIOS CRITICAL
|
# PASSAGE SEVERITE NAGIOS CRITICAL
|
||||||
setSeverity 2
|
setSeverity 2
|
||||||
# FORMATTAGE CONTENU NAGIOS
|
# FORMATTAGE CONTENU NAGIOS
|
||||||
statusReport="<font color="red"><b>Nombre de processus $NOMPROC KO | $NBPROC OK pour $NBOK voulu<i> Processus KO de 23h à 7h, ne pas prendre en compte dans cette période.</i></b></font>"
|
statusReport="<font color="red"><b>Nombre de processus $NOMPROC KO | $NBPROC OK pour $NBOK voulu<i> Processus KO de 23h à 7h, ne pas prendre en compte dans cette période.</i></b></font>"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# AFFICHAGE DU CONTENU NAGIOS SI DEBUG
|
# AFFICHAGE DU CONTENU NAGIOS SI DEBUG
|
||||||
# decho "severityReport=${severityReport};statusReport=${statusReport}"
|
# decho "severityReport=${severityReport};statusReport=${statusReport}"
|
||||||
|
|
||||||
# AFFICHAGE RESULTAT CHECK
|
# AFFICHAGE RESULTAT CHECK
|
||||||
echo "${statusReport}"
|
echo "${statusReport}"
|
||||||
|
|
||||||
# SORTIE DU SCRIPT AVEC SEVERITE NAGIOS
|
# SORTIE DU SCRIPT AVEC SEVERITE NAGIOS
|
||||||
exit ${severityReport}
|
exit ${severityReport}
|
||||||
|
|
||||||
# FIN DE SCRIPT
|
# FIN DE SCRIPT
|
@ -1,113 +1,113 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# TITRE check_tomcat.sh
|
# TITRE check_tomcat.sh
|
||||||
# DESCRIPTION : Script de check du nombre de TOMCAT statusOK/KO
|
# DESCRIPTION : Script de check du nombre de TOMCAT statusOK/KO
|
||||||
# USAGE : lancement du script en ajoutant l'argument -a <début du nom des tomcats> (ex pour appli : ./check_tomcat.sh -a app)
|
# USAGE : lancement du script en ajoutant l'argument -a <début du nom des tomcats> (ex pour appli : ./check_tomcat.sh -a app)
|
||||||
# HISTORIQUE :
|
# HISTORIQUE :
|
||||||
# T | Date | Auteur | Description
|
# T | Date | Auteur | Description
|
||||||
#---+------------+------------------------------+------------------------------------
|
#---+------------+------------------------------+------------------------------------
|
||||||
# A | 05/03/21 | Demonic | Création
|
# A | 05/03/21 | Demonic | Création
|
||||||
# -----------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES VARIABLES ##
|
## DECLARATION DES VARIABLES ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# INITIALISATION DESCRIPTION ALERTE NAGIOS
|
# INITIALISATION DESCRIPTION ALERTE NAGIOS
|
||||||
statusReport=""
|
statusReport=""
|
||||||
# INITIALISATION SEVERITE ALERTE NAGIOS (OK PAR DEFAUT)
|
# INITIALISATION SEVERITE ALERTE NAGIOS (OK PAR DEFAUT)
|
||||||
severityReport=0
|
severityReport=0
|
||||||
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE TOMCAT
|
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE TOMCAT
|
||||||
NBNOMINAL=""
|
NBNOMINAL=""
|
||||||
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE TOMCAT statusOK
|
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE TOMCAT statusOK
|
||||||
NBOK=""
|
NBOK=""
|
||||||
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE TOMCAT statusKO
|
# INITIALISATION VARIABLE DU NOMBRE TOTAL DE TOMCAT statusKO
|
||||||
NBKO=""
|
NBKO=""
|
||||||
# INITIALISATION VARIABLE DU NOM DE TOMCATS KO
|
# INITIALISATION VARIABLE DU NOM DE TOMCATS KO
|
||||||
LISTEKO=""
|
LISTEKO=""
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES FONCTIONS ##
|
## DECLARATION DES FONCTIONS ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# decho(){
|
# decho(){
|
||||||
# [ ${debug} -gt 0 ] && echo $*
|
# [ ${debug} -gt 0 ] && echo $*
|
||||||
# }
|
# }
|
||||||
|
|
||||||
# FONCTION POUR DEFINIR LA SEVERITE DE L'ALERTE
|
# FONCTION POUR DEFINIR LA SEVERITE DE L'ALERTE
|
||||||
setSeverity(){
|
setSeverity(){
|
||||||
severityToSet=${1}
|
severityToSet=${1}
|
||||||
case ${severityToSet} in
|
case ${severityToSet} in
|
||||||
0)[ ${severityReport} -lt 1 ] && severityReport=0;;
|
0)[ ${severityReport} -lt 1 ] && severityReport=0;;
|
||||||
1)[ ${severityReport} -lt 2 ] && severityReport=1;;
|
1)[ ${severityReport} -lt 2 ] && severityReport=1;;
|
||||||
2)severityReport=2;;
|
2)severityReport=2;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
# FONCTION USAGE (option -h)
|
# FONCTION USAGE (option -h)
|
||||||
USAGE(){
|
USAGE(){
|
||||||
echo "Ce script permet de vérifier le nombre de TOMCAT statusactifs et renvoyer une alerte via Nagios si KO"
|
echo "Ce script permet de vérifier le nombre de TOMCAT statusactifs et renvoyer une alerte via Nagios si KO"
|
||||||
echo "USAGE : check_tomcat.sh -a <3 premières lettres des tomcat>"
|
echo "USAGE : check_tomcat.sh -a <3 premières lettres des tomcat>"
|
||||||
echo "exemple pour appli : check_tomcat.sh -a app"
|
echo "exemple pour appli : check_tomcat.sh -a app"
|
||||||
echo "Info : Le script va filtrer les services via la commande : service app* et compter les lignes actives/inactives"
|
echo "Info : Le script va filtrer les services via la commande : service app* et compter les lignes actives/inactives"
|
||||||
exit 0
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## RECUPERATION DES ARGUMENTS ##
|
## RECUPERATION DES ARGUMENTS ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# ARGUMENT -a : NOM DU TOMCAT
|
# ARGUMENT -a : NOM DU TOMCAT
|
||||||
# ARGUMENT -h : USAGE
|
# ARGUMENT -h : USAGE
|
||||||
# POUR LE -a, AJOUT DE * A LA VARIABLE POUR SORTIR LA TOTALITE DES TOMCATS VOULUS (ex : pour appli, TOMCAT="app*")
|
# POUR LE -a, AJOUT DE * A LA VARIABLE POUR SORTIR LA TOTALITE DES TOMCATS VOULUS (ex : pour appli, TOMCAT="app*")
|
||||||
|
|
||||||
while getopts ":a:h:" opt; do
|
while getopts ":a:h:" opt; do
|
||||||
case "${opt}" in
|
case "${opt}" in
|
||||||
a) TOMCAT="${OPTARG}*";;
|
a) TOMCAT="${OPTARG}*";;
|
||||||
h) USAGE;;
|
h) USAGE;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
########################
|
########################
|
||||||
## PROGRAMME ##
|
## PROGRAMME ##
|
||||||
########################
|
########################
|
||||||
|
|
||||||
# LISTING DU NOMBRE DE TOMCAT ETAT NOMINAL (OK+KO)
|
# LISTING DU NOMBRE DE TOMCAT ETAT NOMINAL (OK+KO)
|
||||||
NBNOMINAL=$(service $TOMCAT status| grep "Active:" | wc -l)
|
NBNOMINAL=$(service $TOMCAT status| grep "Active:" | wc -l)
|
||||||
|
|
||||||
# LISTING DU NOMBRE DE TOMCAT OK
|
# LISTING DU NOMBRE DE TOMCAT OK
|
||||||
NBOK=$(service $TOMCAT status| grep -i "active (running)" | wc -l)
|
NBOK=$(service $TOMCAT status| grep -i "active (running)" | wc -l)
|
||||||
|
|
||||||
# CONDITION POUR DETERMINER SI CHECK OK/KO
|
# CONDITION POUR DETERMINER SI CHECK OK/KO
|
||||||
if [ $NBNOMINAL -eq $NBOK ]; then
|
if [ $NBNOMINAL -eq $NBOK ]; then
|
||||||
# CHECK OK
|
# CHECK OK
|
||||||
# PASSAGE VARIABLE NBKO A 0
|
# PASSAGE VARIABLE NBKO A 0
|
||||||
NBKO="0"
|
NBKO="0"
|
||||||
LISTEOK=$(service $TOMCAT status| grep -B2 -i "running" | grep ".service - " | sed 's/$/<br>/g' | sed ':a;N;$!ba;s/\n//g')
|
LISTEOK=$(service $TOMCAT status| grep -B2 -i "running" | grep ".service - " | sed 's/$/<br>/g' | sed ':a;N;$!ba;s/\n//g')
|
||||||
# FORMATTAGE CONTENU NAGIOS
|
# FORMATTAGE CONTENU NAGIOS
|
||||||
statusReport="<font color="green"><b>TOMCAT OK</b></font><br>Nombre de TOMCAT OK : $NBOK <br>Nombre de TOMCAT KO : $NBKO<br><font color="green">TOMCAT OK : <br>$LISTEOK</font>"
|
statusReport="<font color="green"><b>TOMCAT OK</b></font><br>Nombre de TOMCAT OK : $NBOK <br>Nombre de TOMCAT KO : $NBKO<br><font color="green">TOMCAT OK : <br>$LISTEOK</font>"
|
||||||
|
|
||||||
else
|
else
|
||||||
# CHECK KO
|
# CHECK KO
|
||||||
# PASSAGE SEVERITE NAGIOS CRITICAL
|
# PASSAGE SEVERITE NAGIOS CRITICAL
|
||||||
setSeverity 2
|
setSeverity 2
|
||||||
# PASSAGE VARIABLE NBKO A LA BONNE VALEUR
|
# PASSAGE VARIABLE NBKO A LA BONNE VALEUR
|
||||||
NBKO=$(($NBNOMINAL-$NBOK))
|
NBKO=$(($NBNOMINAL-$NBOK))
|
||||||
# RECUPERATION DES NOMS TOMCATS KO
|
# RECUPERATION DES NOMS TOMCATS KO
|
||||||
LISTEKO=$(service $TOMCAT status| grep -B2 -v "running" | grep ".service - " | sed 's/$/<br>/g' | sed ':a;N;$!ba;s/\n//g')
|
LISTEKO=$(service $TOMCAT status| grep -B2 -v "running" | grep ".service - " | sed 's/$/<br>/g' | sed ':a;N;$!ba;s/\n//g')
|
||||||
# FORMATTAGE CONTENU NAGIOS
|
# FORMATTAGE CONTENU NAGIOS
|
||||||
statusReport="<font color="red"><b>TOMCAT KO</b></font><br>Nombre de TOMCAT OK : $NBOK <br>Nombre de TOMCAT KO : $NBKO<br><font color="red"><b>TOMCAT KO : <br>$LISTEKO</b></font>"
|
statusReport="<font color="red"><b>TOMCAT KO</b></font><br>Nombre de TOMCAT OK : $NBOK <br>Nombre de TOMCAT KO : $NBKO<br><font color="red"><b>TOMCAT KO : <br>$LISTEKO</b></font>"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# AFFICHAGE DU CONTENU NAGIOS SI DEBUG
|
# AFFICHAGE DU CONTENU NAGIOS SI DEBUG
|
||||||
# decho "severityReport=${severityReport};statusReport=${statusReport}"
|
# decho "severityReport=${severityReport};statusReport=${statusReport}"
|
||||||
|
|
||||||
# AFFICHAGE RESULTAT CHECK
|
# AFFICHAGE RESULTAT CHECK
|
||||||
echo "${statusReport}"
|
echo "${statusReport}"
|
||||||
|
|
||||||
# SORTIE DU SCRIPT AVEC SEVERITE NAGIOS
|
# SORTIE DU SCRIPT AVEC SEVERITE NAGIOS
|
||||||
exit ${severityReport}
|
exit ${severityReport}
|
||||||
|
|
||||||
# FIN DE SCRIPT
|
# FIN DE SCRIPT
|
@ -1,81 +1,81 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# TITRE drive_online.sh
|
# TITRE drive_online.sh
|
||||||
# DESCRIPTION : Script de vérification/passage ONLINE des drives TSM
|
# DESCRIPTION : Script de vérification/passage ONLINE des drives TSM
|
||||||
# EXECUTION : TOUS LES JOURS A ??H VIA AWA - JOB
|
# EXECUTION : TOUS LES JOURS A ??H VIA AWA - JOB
|
||||||
# HISTORIQUE :
|
# HISTORIQUE :
|
||||||
# T | Date | Auteur | Description
|
# T | Date | Auteur | Description
|
||||||
#---+------------+------------------------------+------------------------------------
|
#---+------------+------------------------------+------------------------------------
|
||||||
# A | 09/03/22 | Demonic | Création
|
# A | 09/03/22 | Demonic | Création
|
||||||
# -----------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES VARIABLES ##
|
## DECLARATION DES VARIABLES ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# IDENTIFIANTS TSM
|
# IDENTIFIANTS TSM
|
||||||
IDTSM=""
|
IDTSM=""
|
||||||
MDPTSM=""
|
MDPTSM=""
|
||||||
# STATUT DES DRIVES
|
# STATUT DES DRIVES
|
||||||
STATUS=""
|
STATUS=""
|
||||||
# LIBRAIRIE CORRSPONDANTE AU DRIVE A TRAITER
|
# LIBRAIRIE CORRSPONDANTE AU DRIVE A TRAITER
|
||||||
LIBRARY=""
|
LIBRARY=""
|
||||||
# DRIVE A TRAITER
|
# DRIVE A TRAITER
|
||||||
DRIVE=""
|
DRIVE=""
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES FONCTIONS ##
|
## DECLARATION DES FONCTIONS ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# FONCTION PERMETTANT DE SIMPLIFIER L'EXECUTION DE LA COMMANDE ADMIN TSM DANS LE SCRIPT
|
# FONCTION PERMETTANT DE SIMPLIFIER L'EXECUTION DE LA COMMANDE ADMIN TSM DANS LE SCRIPT
|
||||||
tsmcmd(){
|
tsmcmd(){
|
||||||
dsmadmc -id=$IDTSM -pa=$MDPTSM -datao=yes $*
|
dsmadmc -id=$IDTSM -pa=$MDPTSM -datao=yes $*
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
########################
|
########################
|
||||||
## PROGRAMME ##
|
## PROGRAMME ##
|
||||||
########################
|
########################
|
||||||
|
|
||||||
# LISTING DES STATUTS DES DRIVES
|
# LISTING DES STATUTS DES DRIVES
|
||||||
echo -e "\nLISTING DES STATUTS EN COURS...."
|
echo -e "\nLISTING DES STATUTS EN COURS...."
|
||||||
|
|
||||||
# EXECUTION D'UNE REQUETE DB2 POUR LISTER LES DRIVES A L'ETAT DIFFERENT DE ONLINE
|
# EXECUTION D'UNE REQUETE DB2 POUR LISTER LES DRIVES A L'ETAT DIFFERENT DE ONLINE
|
||||||
STATUS="$(tsmcmd -commadelimited "SELECT library_name, drive_name FROM drives WHERE online != 'YES'" | sed -e 's/,/ /g')"
|
STATUS="$(tsmcmd -commadelimited "SELECT library_name, drive_name FROM drives WHERE online != 'YES'" | sed -e 's/,/ /g')"
|
||||||
|
|
||||||
echo -e "\nLISTING OK"
|
echo -e "\nLISTING OK"
|
||||||
# FIN DU LISTING
|
# FIN DU LISTING
|
||||||
|
|
||||||
# CONDITION POUR REPASSER LES DRIVES ONLINE
|
# CONDITION POUR REPASSER LES DRIVES ONLINE
|
||||||
# VERIFICATION SI LA VARIABLE STATUS COMPORTE LE CODE ERREUR ANR2034E, CELUI CI CORRESPONDANT A AUCUN DRIVE KO
|
# VERIFICATION SI LA VARIABLE STATUS COMPORTE LE CODE ERREUR ANR2034E, CELUI CI CORRESPONDANT A AUCUN DRIVE KO
|
||||||
if [[ "$STATUS" == *"ANR2034E SELECT: No match found using this criteria."* ]]; then
|
if [[ "$STATUS" == *"ANR2034E SELECT: No match found using this criteria."* ]]; then
|
||||||
|
|
||||||
# CONDITION OK : TOUS LES DRIVES SONT OK, LE CODE ERREUR EST BIEN AFFICHE DANS LA VARIABLE STATUS
|
# CONDITION OK : TOUS LES DRIVES SONT OK, LE CODE ERREUR EST BIEN AFFICHE DANS LA VARIABLE STATUS
|
||||||
echo -e "\nTOUS LES DRIVES SONT ONLINE\n"
|
echo -e "\nTOUS LES DRIVES SONT ONLINE\n"
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
# CONDITION KO : 1 OU PLUSIEURS DRIVES SONT KO, ILS SONT LISTE DANS LA VARIABLE STATUS
|
# CONDITION KO : 1 OU PLUSIEURS DRIVES SONT KO, ILS SONT LISTE DANS LA VARIABLE STATUS
|
||||||
# LISTING DES DRIVES KO
|
# LISTING DES DRIVES KO
|
||||||
echo -e "\nLISTE DES DRIVES KO :\n$STATUS\n\nRELANCE DES DRIVES...."
|
echo -e "\nLISTE DES DRIVES KO :\n$STATUS\n\nRELANCE DES DRIVES...."
|
||||||
|
|
||||||
# PASSAGE ONLINE DES DRIVES KO
|
# PASSAGE ONLINE DES DRIVES KO
|
||||||
# LECTURE LIGNE PAR LIGNE DE LA VARIABLE STATUS POUR RELANCE. 1 LIGNE = 1 DRIVE. CF LISTING CI-DESSUS
|
# LECTURE LIGNE PAR LIGNE DE LA VARIABLE STATUS POUR RELANCE. 1 LIGNE = 1 DRIVE. CF LISTING CI-DESSUS
|
||||||
echo "$STATUS" | while read -r line; do
|
echo "$STATUS" | while read -r line; do
|
||||||
|
|
||||||
# RECUPERATION DU 1ER CHAMP DE LA LIGNE, CORRESPONDANT A LA LIBRAIRIE DU DRIVE
|
# RECUPERATION DU 1ER CHAMP DE LA LIGNE, CORRESPONDANT A LA LIBRAIRIE DU DRIVE
|
||||||
LIBRARY=$(echo "$line" | awk '{print $1}')
|
LIBRARY=$(echo "$line" | awk '{print $1}')
|
||||||
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
||||||
DRIVE=$(echo "$line" | awk '{print $2}')
|
DRIVE=$(echo "$line" | awk '{print $2}')
|
||||||
|
|
||||||
# PASSAGE ONLINE DU DRIVE
|
# PASSAGE ONLINE DU DRIVE
|
||||||
echo -e "\nPASSAGE ONLINE DU $DRIVE DE LA LIBRAIRIE $LIBRARY\n"
|
echo -e "\nPASSAGE ONLINE DU $DRIVE DE LA LIBRAIRIE $LIBRARY\n"
|
||||||
tsmcmd update drive $LIBRARY $DRIVE online=yes
|
tsmcmd update drive $LIBRARY $DRIVE online=yes
|
||||||
echo -e "UPDATE EN COURS\n"
|
echo -e "UPDATE EN COURS\n"
|
||||||
|
|
||||||
# FIN DE LA BOUCLE
|
# FIN DE LA BOUCLE
|
||||||
done
|
done
|
||||||
# FIN DE LA CONDITION
|
# FIN DE LA CONDITION
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# FIN DE SCRIPT
|
# FIN DE SCRIPT
|
@ -1,85 +1,85 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# TITRE path_online.sh
|
# TITRE path_online.sh
|
||||||
# DESCRIPTION : Script de vérification/passage ONLINE des paths TSM
|
# DESCRIPTION : Script de vérification/passage ONLINE des paths TSM
|
||||||
# EXECUTION : TOUS LES JOURS A ??H VIA AWA - JOB
|
# EXECUTION : TOUS LES JOURS A ??H VIA AWA - JOB
|
||||||
# HISTORIQUE :
|
# HISTORIQUE :
|
||||||
# T | Date | Auteur | Description
|
# T | Date | Auteur | Description
|
||||||
#---+------------+------------------------------+------------------------------------
|
#---+------------+------------------------------+------------------------------------
|
||||||
# A | 09/03/22 | Demonic | Création
|
# A | 09/03/22 | Demonic | Création
|
||||||
# -----------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES VARIABLES ##
|
## DECLARATION DES VARIABLES ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# IDENTIFIANTS TSM
|
# IDENTIFIANTS TSM
|
||||||
IDTSM=""
|
IDTSM=""
|
||||||
MDPTSM=""
|
MDPTSM=""
|
||||||
# STATUT DES PATHS
|
# STATUT DES PATHS
|
||||||
STATUS=""
|
STATUS=""
|
||||||
# SOURCE DU PATH A TRAITER - SRV TSM
|
# SOURCE DU PATH A TRAITER - SRV TSM
|
||||||
SOURCE=""
|
SOURCE=""
|
||||||
# DESTINATION DU PATH A TRAITER - DRIVE
|
# DESTINATION DU PATH A TRAITER - DRIVE
|
||||||
DESTINATION=""
|
DESTINATION=""
|
||||||
# LIBRAIRIE CORRSPONDANTE AU PATH A TRAITER
|
# LIBRAIRIE CORRSPONDANTE AU PATH A TRAITER
|
||||||
LIBRARY=""
|
LIBRARY=""
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
## DECLARATION DES FONCTIONS ##
|
## DECLARATION DES FONCTIONS ##
|
||||||
#########################################
|
#########################################
|
||||||
|
|
||||||
# FONCTION PERMETTANT DE SIMPLIFIER L'EXECUTION DE LA COMMANDE ADMIN TSM DANS LE SCRIPT
|
# FONCTION PERMETTANT DE SIMPLIFIER L'EXECUTION DE LA COMMANDE ADMIN TSM DANS LE SCRIPT
|
||||||
tsmcmd(){
|
tsmcmd(){
|
||||||
dsmadmc -id=$IDTSM -pa=$MDPTSM -datao=yes $*
|
dsmadmc -id=$IDTSM -pa=$MDPTSM -datao=yes $*
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
########################
|
########################
|
||||||
## PROGRAMME ##
|
## PROGRAMME ##
|
||||||
########################
|
########################
|
||||||
|
|
||||||
# LISTING DES STATUTS DES PATHS
|
# LISTING DES STATUTS DES PATHS
|
||||||
echo -e "\nLISTING DES STATUTS EN COURS...."
|
echo -e "\nLISTING DES STATUTS EN COURS...."
|
||||||
|
|
||||||
# EXECUTION D'UNE REQUETE DB2 POUR LISTER LES PATHS A L'ETAT DIFFERENT DE ONLINE
|
# EXECUTION D'UNE REQUETE DB2 POUR LISTER LES PATHS A L'ETAT DIFFERENT DE ONLINE
|
||||||
STATUS="$(tsmcmd -commadelimited "SELECT source_name, destination_name, library_name FROM paths WHERE online != 'YES'" | sed -e 's/,/ /g')"
|
STATUS="$(tsmcmd -commadelimited "SELECT source_name, destination_name, library_name FROM paths WHERE online != 'YES'" | sed -e 's/,/ /g')"
|
||||||
|
|
||||||
echo -e "\nLISTING OK"
|
echo -e "\nLISTING OK"
|
||||||
# FIN DU LISTING
|
# FIN DU LISTING
|
||||||
|
|
||||||
# CONDITION POUR REPASSER LES PATHS ONLINE
|
# CONDITION POUR REPASSER LES PATHS ONLINE
|
||||||
# VERIFICATION SI LA VARIABLE STATUS COMPORTE LE CODE ERREUR ANR2034E, CELUI CI CORRESPONDANT A AUCUN PATHS KO
|
# VERIFICATION SI LA VARIABLE STATUS COMPORTE LE CODE ERREUR ANR2034E, CELUI CI CORRESPONDANT A AUCUN PATHS KO
|
||||||
if [[ "$STATUS" == *"ANR2034E SELECT: No match found using this criteria."* ]]; then
|
if [[ "$STATUS" == *"ANR2034E SELECT: No match found using this criteria."* ]]; then
|
||||||
|
|
||||||
# CONDITION OK : TOUS LES PATHS SONT OK, LE CODE ERREUR EST BIEN AFFICHE DANS LA VARIABLE STATUS
|
# CONDITION OK : TOUS LES PATHS SONT OK, LE CODE ERREUR EST BIEN AFFICHE DANS LA VARIABLE STATUS
|
||||||
echo -e "\nTOUS LES PATHS SONT ONLINE\n"
|
echo -e "\nTOUS LES PATHS SONT ONLINE\n"
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
# CONDITION KO : 1 OU PLUSIEURS PATHS SONT KO, ILS SONT LISTES DANS LA VARIABLE STATUS
|
# CONDITION KO : 1 OU PLUSIEURS PATHS SONT KO, ILS SONT LISTES DANS LA VARIABLE STATUS
|
||||||
# LISTING DES PATHS KO
|
# LISTING DES PATHS KO
|
||||||
echo -e "\nLISTE DES PATHS KO :\n$STATUS\n\nRELANCE DES PATHS...."
|
echo -e "\nLISTE DES PATHS KO :\n$STATUS\n\nRELANCE DES PATHS...."
|
||||||
|
|
||||||
# PASSAGE ONLINE DES PATHS KO
|
# PASSAGE ONLINE DES PATHS KO
|
||||||
# LECTURE LIGNE PAR LIGNE DE LA VARIABLE STATUS POUR RELANCE. 1 LIGNE = 1 PATH. CF LISTING CI-DESSUS
|
# LECTURE LIGNE PAR LIGNE DE LA VARIABLE STATUS POUR RELANCE. 1 LIGNE = 1 PATH. CF LISTING CI-DESSUS
|
||||||
echo "$STATUS" | while read -r line; do
|
echo "$STATUS" | while read -r line; do
|
||||||
|
|
||||||
# RECUPERATION DU 1ER CHAMP DE LA LIGNE, CORRESPONDANT A LA LIBRAIRIE DU DRIVE
|
# RECUPERATION DU 1ER CHAMP DE LA LIGNE, CORRESPONDANT A LA LIBRAIRIE DU DRIVE
|
||||||
SOURCE=$(echo "$line" | awk '{print $1}')
|
SOURCE=$(echo "$line" | awk '{print $1}')
|
||||||
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
||||||
DESTINATION=$(echo "$line" | awk '{print $2}')
|
DESTINATION=$(echo "$line" | awk '{print $2}')
|
||||||
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
||||||
LIBRARY=$(echo "$line" | awk '{print $3}')
|
LIBRARY=$(echo "$line" | awk '{print $3}')
|
||||||
|
|
||||||
# PASSAGE ONLINE DU DRIVE
|
# PASSAGE ONLINE DU DRIVE
|
||||||
echo -e "\nPASSAGE ONLINE DU PATH $SOURCE => $DESTINATION DE LA LIBRAIRIE $LIBRARY\n"
|
echo -e "\nPASSAGE ONLINE DU PATH $SOURCE => $DESTINATION DE LA LIBRAIRIE $LIBRARY\n"
|
||||||
tsmcmd update path $SOURCE $DESTINATION srctype=server desttype=drive library=$LIBRARY online=yes
|
tsmcmd update path $SOURCE $DESTINATION srctype=server desttype=drive library=$LIBRARY online=yes
|
||||||
echo -e "UPDATE EN COURS\n"
|
echo -e "UPDATE EN COURS\n"
|
||||||
|
|
||||||
# FIN DE LA BOUCLE
|
# FIN DE LA BOUCLE
|
||||||
done
|
done
|
||||||
# FIN DE LA CONDITION
|
# FIN DE LA CONDITION
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# FIN DE SCRIPT
|
# FIN DE SCRIPT
|
Loading…
Reference in New Issue
Block a user