Changement systeme d attente fin de test
Passage de TEMPS_MAX pour le disque le plus lent à un tests toutes les X minutes si au moins un des disques n'a pas fini.
This commit is contained in:
parent
fc41d98e19
commit
b4a6c93514
|
@ -6,6 +6,7 @@ OUTPUT=($(lsblk -dpno name)) #Listing des disques présents sur la machine sous
|
|||
ARRAY_TEMPS=() #Creation d un array vide
|
||||
LOG=($(eval echo ~$USER/SANTE_DISK)) #Chemin du fichier de sortie du test (dans le repertoire home de l utilisateur)
|
||||
PACKAGES=(smartmontools mailutils) #Liste des paquets necessaires
|
||||
FIN_TEST="NOK"
|
||||
|
||||
for i in "${PACKAGES[@]}" #Verification et installation des paquets necessaires
|
||||
do
|
||||
|
@ -25,14 +26,28 @@ done
|
|||
|
||||
TEMPS_MAX=0 #RAZ du temps de polling
|
||||
|
||||
for i in "${ARRAY_TEMPS[@]}" #recherche de la valeur max dans les temps de polling extraits
|
||||
while [ "$FIN_TEST" = "NOK" ]
|
||||
do
|
||||
if (("$i" > $TEMPS_MAX))
|
||||
then TEMPS_MAX="$i"
|
||||
fi
|
||||
FIN_TEST="OK"
|
||||
for i in "${OUTPUT[@]}"
|
||||
do
|
||||
if /usr/sbin/smartctl -c "$i" | grep "Self-test routine in progress"; then #Si scan non fini
|
||||
FIN_TEST="NOK" #On repasse la variable FIN_TEST a FALSE
|
||||
echo $FIN_TEST
|
||||
sleep 5m #On attend pour relancer la boucle de test de statut
|
||||
break #on stop la boucle ici, inutile de scanner les statuts des autres disques
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
sleep "$TEMPS_MAX"m #Attente de fin des tests
|
||||
#for i in "${ARRAY_TEMPS[@]}" #recherche de la valeur max dans les temps de polling extraits
|
||||
#do
|
||||
# if (("$i" > $TEMPS_MAX))
|
||||
# then TEMPS_MAX="$i"
|
||||
# fi
|
||||
#done
|
||||
#
|
||||
#sleep "$TEMPS_MAX"m #Attente de fin des tests
|
||||
|
||||
for i in "${OUTPUT[@]}" #Boucle d inscription des résultats dans le fichier de sortie
|
||||
do
|
||||
|
@ -53,4 +68,4 @@ echo "**************************************************
|
|||
**************************************************"
|
||||
|
||||
cat $LOG | /usr/bin/mailx -s "Sante des disques sur $HOSTNAME" $USER@$HOSTNAME #envoi de mail
|
||||
read'
|
||||
read'
|
||||
|
|
Loading…
Reference in New Issue