Skip to content

Instantly share code, notes, and snippets.

@Heolink
Last active August 29, 2015 14:23

Revisions

  1. Heolink revised this gist Jun 15, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion hddProbe.sh
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@
    # chmod +x hddProb.sh
    #
    # cron toute les 30 minutes avec pour limite d'usage 60 par défaut si non définit c'est à 90%
    # crontab -e */30 * * * * /chemindemonscript/hddProb.sh 60
    # crontab -e */30 * * * * /chemindemonscript/hddProb.sh -l=60
    #

    #le hostname de la machine
  2. Heolink renamed this gist Jun 15, 2015. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  3. Heolink revised this gist Jun 15, 2015. 1 changed file with 11 additions and 13 deletions.
    24 changes: 11 additions & 13 deletions hddProb.sh
    Original file line number Diff line number Diff line change
    @@ -12,16 +12,24 @@ hostname=`hostname`
    #l'ip de la machine
    ip=`hostname --ip-address`



    #
    # Paramétre par défaut si aucunne option
    # Paramétre par défaut si aucune option
    #
    #liste des emails qui vont recevoir l'alerte ([email protected] [email protected])
    emails=([email protected])
    #la limite de remplissage du disque si elle n'est pas définit en paramétre
    percentageLimit=90

    #on récupére le pourcentage utilisé sur le disque
    currentPercentage=`df / | awk '{ print $5 }' | tail -n 1`
    #on supprime le % du résultat optenu avec la commande précédente
    currentPercentage=${currentPercentage//%}

    #sujet du mail
    subject="Attention manque de place sur ${hostname} : ${ip}"
    #message du mail
    message="Il ne reste que ${currentPercentage}% sur ${hostname} avec pour IP: ${ip}"

    #définit la limit et les emails via les options -l=90 -e="[email protected] [email protected]"
    for i in "$@"
    do
    @@ -37,16 +45,6 @@ case $i in
    esac
    done

    #on récupére le pourcentage utilisé sur le disque
    currentPercentage=`df / | awk '{ print $5 }' | tail -n 1`
    #on supprime le % du résultat optenu avec la commande précédente
    currentPercentage=${currentPercentage//%}

    #sujet du mail
    subject="Attention manque de place sur ${hostname} : ${ip}"
    #message du mail
    message="Il ne reste que ${currentPercentage}% sur ${hostname} avec pour IP: ${ip}"

    #si le pourcentage et >= à la limite on envoie un email
    if [[ "$currentPercentage" -ge "$percentageLimit" ]]; then
    #on boucle sur tout les emails du tableau pour envoyer l'email
  4. Heolink revised this gist Jun 15, 2015. 1 changed file with 20 additions and 5 deletions.
    25 changes: 20 additions & 5 deletions hddProb.sh
    Original file line number Diff line number Diff line change
    @@ -12,15 +12,30 @@ hostname=`hostname`
    #l'ip de la machine
    ip=`hostname --ip-address`



    #
    # Paramétre par défaut si aucunne option
    #
    #liste des emails qui vont recevoir l'alerte ([email protected] [email protected])
    emails=(test@example.fr)
    emails=(email@email.fr)
    #la limite de remplissage du disque si elle n'est pas définit en paramétre
    percentageLimit=90

    #si on définit la limite dans les paramétres du script on l'utilise
    if [[ $1 ]]; then
    percentageLimit=$1
    fi
    #définit la limit et les emails via les options -l=90 -e="[email protected] [email protected]"
    for i in "$@"
    do
    case $i in
    -l=*|--limit=*)
    percentageLimit="${i#*=}"
    shift # past argument=value
    ;;
    -e=*|--emails=*)
    emails=("${i#*=}")
    shift # past argument=value
    ;;
    esac
    done

    #on récupére le pourcentage utilisé sur le disque
    currentPercentage=`df / | awk '{ print $5 }' | tail -n 1`
  5. Heolink revised this gist Jun 15, 2015. 1 changed file with 10 additions and 4 deletions.
    14 changes: 10 additions & 4 deletions hddProb.sh
    Original file line number Diff line number Diff line change
    @@ -3,8 +3,8 @@
    # Pour rendre le fichier executable
    # chmod +x hddProb.sh
    #
    # cron toute les 30 minutes
    # crontab -e */30 * * * * /chemindemonscript/hddProb.sh
    # cron toute les 30 minutes avec pour limite d'usage 60 par défaut si non définit c'est à 90%
    # crontab -e */30 * * * * /chemindemonscript/hddProb.sh 60
    #

    #le hostname de la machine
    @@ -13,9 +13,15 @@ hostname=`hostname`
    ip=`hostname --ip-address`

    #liste des emails qui vont recevoir l'alerte ([email protected] [email protected])
    emails=(email@example.fr)
    #la limite de remplissage du disque
    emails=(test@example.fr)
    #la limite de remplissage du disque si elle n'est pas définit en paramétre
    percentageLimit=90

    #si on définit la limite dans les paramétres du script on l'utilise
    if [[ $1 ]]; then
    percentageLimit=$1
    fi

    #on récupére le pourcentage utilisé sur le disque
    currentPercentage=`df / | awk '{ print $5 }' | tail -n 1`
    #on supprime le % du résultat optenu avec la commande précédente
  6. Heolink revised this gist Jun 15, 2015. 1 changed file with 9 additions and 2 deletions.
    11 changes: 9 additions & 2 deletions hddProb.sh
    Original file line number Diff line number Diff line change
    @@ -1,14 +1,21 @@
    #!/bin/bash

    # Pour rendre le fichier executable
    # chmod +x hddProb.sh
    #
    # cron toute les 30 minutes
    # crontab -e */30 * * * * /chemindemonscript/hddProb.sh
    #

    #le hostname de la machine
    hostname=`hostname`
    #l'ip de la machine
    ip=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | grep -v '127.0.0.2' | cut -d: -f2 | awk '{ print $1}'`
    ip=`hostname --ip-address`

    #liste des emails qui vont recevoir l'alerte ([email protected] [email protected])
    emails=([email protected])
    #la limite de remplissage du disque
    percentageLimit=60
    percentageLimit=90
    #on récupére le pourcentage utilisé sur le disque
    currentPercentage=`df / | awk '{ print $5 }' | tail -n 1`
    #on supprime le % du résultat optenu avec la commande précédente
  7. Heolink revised this gist Jun 15, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion hddProb.sh
    Original file line number Diff line number Diff line change
    @@ -5,7 +5,7 @@ hostname=`hostname`
    #l'ip de la machine
    ip=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | grep -v '127.0.0.2' | cut -d: -f2 | awk '{ print $1}'`

    #liste des emails qui cont recevoir l'alerte ([email protected] [email protected])
    #liste des emails qui vont recevoir l'alerte ([email protected] [email protected])
    emails=([email protected])
    #la limite de remplissage du disque
    percentageLimit=60
  8. Heolink created this gist Jun 15, 2015.
    31 changes: 31 additions & 0 deletions hddProb.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,31 @@
    #!/bin/bash

    #le hostname de la machine
    hostname=`hostname`
    #l'ip de la machine
    ip=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | grep -v '127.0.0.2' | cut -d: -f2 | awk '{ print $1}'`

    #liste des emails qui cont recevoir l'alerte ([email protected] [email protected])
    emails=([email protected])
    #la limite de remplissage du disque
    percentageLimit=60
    #on récupére le pourcentage utilisé sur le disque
    currentPercentage=`df / | awk '{ print $5 }' | tail -n 1`
    #on supprime le % du résultat optenu avec la commande précédente
    currentPercentage=${currentPercentage//%}

    #sujet du mail
    subject="Attention manque de place sur ${hostname} : ${ip}"
    #message du mail
    message="Il ne reste que ${currentPercentage}% sur ${hostname} avec pour IP: ${ip}"

    #si le pourcentage et >= à la limite on envoie un email
    if [[ "$currentPercentage" -ge "$percentageLimit" ]]; then
    #on boucle sur tout les emails du tableau pour envoyer l'email
    for email in ${emails[*]}
    do
    echo "Send email : ${email}"
    #on envoie l'email
    mail -s "${subject}" "${email}" <<< "${message}"
    done
    fi