IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Solaris Discussion :

Verifier la taille disponible d'une partition et envoi mail


Sujet :

Solaris

  1. #1
    Nouveau membre du Club
    Inscrit en
    mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : mars 2008
    Messages : 69
    Points : 29
    Points
    29
    Par défaut Verifier la taille disponible d'une partition et envoi mail
    Bonjour a tous et joyeux noel !

    Quelqu'un peut il m'aider?

    Je voudrais recuperer la taille d'une partition donnee et envoyer un mail si celle ci depasse 90%, est il possible de le faire en utilisant des batch?

    Merci pour votre aide

  2. #2
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juillet 2006
    Messages : 5 196
    Points : 12 262
    Points
    12 262
    Par défaut
    oui bien sur là je testes avec 70% pour te montrer que ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    francois@belzebot ~ % if [ $(df -h | sed '/rootfs/ !d ;s/.*\ \(.*\)%.*/\1/') -gt 70 ] ; then mail -s "ALERTE" francois << EOT  
     
    francois@belzebot ~ then heredoc> ddsfsdfk
    francois@belzebot ~ then heredoc> EOT
    francois@belzebot ~ then> fi
    francois@belzebot ~ % 
    francois@belzebot ~ % mail
    Mail version 8.1.2 01/15/2001.  Type ? for help.
    "/var/mail/francois": 1 message 1 new
    >N  1 francois@cdebian.  Fri Dec 27 18:12   17/573   ALERTE
    ça marche donc très bien

    dans un script ça donnerai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    #entetes variables etc....
    #iteration pour surveiller toutes les partitions et pas qu'une seule
    #dans l'exemple la variable de la partition en cours de surveillance s'appelle $partition
    if [ $(df -h | sed '/'${partition}'/ !d ;s/.*\ \(.*\)%.*/\1/') -gt 90  ] ; then mail -s "ALERTE partition ${partition}" mail@domaine.truc << EOT  
    Alerte au moins une partition sur la machine belzebot est à plus de 90%
    EOT
    fi
    #fin d'iteration
    #fin du script
    tu oublies pas de rendre le script executable, et de le planifier par exemple 1* par jour via une crontab....
    c'est fini

    ça suffit largement....
    je laisse adapter mais c'est très simple...

    tu peux bien sur selectionner les partitions par leurs chemin physiques logique etc...
    par exemple au lieu du nom logique rootfs tu peux avoir pour la partition / par exemple le chemin physique /dev/sda1

  3. #3
    Nouveau membre du Club
    Inscrit en
    mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : mars 2008
    Messages : 69
    Points : 29
    Points
    29
    Par défaut
    Merci frp31, j'adapte et je te dis quoi, encore merci pour ton assistance.

  4. #4
    Nouveau membre du Club
    Inscrit en
    mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : mars 2008
    Messages : 69
    Points : 29
    Points
    29
    Par défaut
    Salut frp31,

    Voici ce que j'obtien lorsque j'execute la commande sur la partition u1 :

    $ ./Check_partition.sh
    sed: command garbled: /u1/ !d ;s/.*\ \(.*\)%.*/\1/
    df: cannot statvfs /temp_export: No such file or directory
    ./Check_partition.sh: line 2: [: -gt: unary operator expected

    Merci de votre precieuse assistance.

  5. #5
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juillet 2006
    Messages : 5 196
    Points : 12 262
    Points
    12 262
    Par défaut
    faut adapter à ton shell (bash,sh,ksh)
    à ton sed éventuellement et surtout à df qui a peut etre pas le même nombre de colonnes

    n'ayant d'ssh vers TA machine.. je vais avoir du mal à le faire moi même

    j'imagine que df gueule parce qu'il prend -k au lieu de -h peut être.... (cas courant)
    par exemple....

    peut être que ta version de sed n'est pas gnu, si tel est le cas au lieu de sed 'commande;commande;commande' il faut faire sed -e "commande" | sed -e "commande" | sed -e "commande" ça aussi ça peut être une solution

  6. #6
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2007
    Messages : 2 695
    Points : 7 880
    Points
    7 880
    Par défaut
    Le df de Solaris supporte l'option -h, mais elle est ici inutile puisqu'on ne lit pas les valeurs concernées.

    Le problème vient sûrement du script sed que je n'ai pas cherché à débugger. Voici une version adaptée à Solaris:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    msg=$(df -kl | nawk '/\// {gsub("%","",$5);if($5>90) printf("Partition %s occupee a %d%%\n",$6,$5);}')
    [ "$msg" ] && echo "$msg" | mailx -s "disque plein" charrynsasi@domain.fr
    ɹǝsn *sıɹɐlos*

  7. #7
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juillet 2006
    Messages : 5 196
    Points : 12 262
    Points
    12 262
    Par défaut
    merci jlliagre, ca devrait aider notre participant.

  8. #8
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2007
    Messages : 2 695
    Points : 7 880
    Points
    7 880
    Par défaut
    Citation Envoyé par frp31 Voir le message
    peut être que ta version de sed n'est pas gnu
    Solaris utilise les version SVR4 des commandes de base. La présence des outils GNU est optionnelle et pas forcément en premier (ou du tout) dans le PATH.
    si tel est le cas au lieu de sed 'commande;commande;commande' il faut faire sed -e "commande" | sed -e "commande" | sed -e "commande" ça aussi ça peut être une solution
    La syntaxe portable avec -e est plus simple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed -e "commande1" -e "commande2" -e "commande3"
    ɹǝsn *sıɹɐlos*

  9. #9
    Nouveau membre du Club
    Inscrit en
    mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : mars 2008
    Messages : 69
    Points : 29
    Points
    29
    Par défaut
    Bonjours et encore merci pour votre precieuse assistance.

    Je suis un peu perdu avec le code de jlliagre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    msg=$(df -kl | nawk '/\// {gsub("%","",$5);if($5>90) printf("Partition %s occupee a %d%%\n",$6,$5);}')
    [ "$msg" ] && echo "$msg" | mailx -s "disque plein" charrynsasi@domain.fr
    ma partition se nomme /u1 , ou dois je la placer dans le script?

    Merci encore

  10. #10
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2007
    Messages : 2 695
    Points : 7 880
    Points
    7 880
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    msg=$(df -kl | nawk '/\/u1/ {gsub("%","",$5);if($5>90) printf("Partition %s occupee a %d%%\n",$6,$5);}')
    [ "$msg" ] && echo "$msg" | mailx -s "disque plein" charrynsasi@domain.fr
    ɹǝsn *sıɹɐlos*

Discussions similaires

  1. faire une pause dans envoi mails en masse
    Par tremeur53 dans le forum Langage
    Réponses: 2
    Dernier message: 14/05/2010, 01h19
  2. [W2003S] Augmenter la taille d'une partition
    Par amane06 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 26/11/2008, 14h01
  3. commande taille libe d'une partition en python
    Par mnes14 dans le forum Général Python
    Réponses: 3
    Dernier message: 06/08/2008, 11h20
  4. comment augmenter la taille d'une partition LINUX RED HAT ?
    Par hadid dans le forum Administration système
    Réponses: 4
    Dernier message: 21/09/2007, 16h34
  5. Comment changer la taille d'une partition ?
    Par sami_c dans le forum Debian
    Réponses: 1
    Dernier message: 07/06/2007, 19h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo