Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1490 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  aide pour un scrip place restante sur un disque dur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

aide pour un scrip place restante sur un disque dur

n°519857
watcho
Posté le 13-07-2004 à 08:31:21  profilanswer
 

Bonjour je cherche a faire un script qui m'avertit par mail lorsque le disque d'un linux est presque plein et seulement a ce moment la.  C'est facile d'en faire un qui envoie la taille restante tous les jours mais bon, la on ne lit jamais le mail quand il faut :D
 
Comment je peux évaluer ce que je recoit avec un  
 
df -h | grep /dev/hdb1 | cut -d ' ' -f 22  
 
 
ce qui me donne un     90%  
 
 
je voudrais faire que
 
si > 95%
alors mail
 
 
merci :)

mood
Publicité
Posté le 13-07-2004 à 08:31:21  profilanswer
 

n°519858
mikala
Souviens toi du 5 Novembre...
Posté le 13-07-2004 à 08:36:01  profilanswer
 

je réponds a coté de la plaque ( mais je suis pressé là  ) mais regarde du coté de nagios ;)
tu as un certain nombre de monitorage possible & cela pourrait remplir d'autre fonction (autre que la vérification du simple disque dur )

n°519860
watcho
Posté le 13-07-2004 à 08:48:35  profilanswer
 

ok merci je vais regarder a ca...
 
 
mais si qqun peut quand meme me répondre juste pour ma culture scriptique :D
 
 
merci

n°519863
Klaimant
?
Posté le 13-07-2004 à 09:13:14  profilanswer
 

au lieu de 90% récup 90 que tu compares à 95
 
if($recup -gt 95 ) mail -s Asstention admin@toto.org


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
n°519870
jdloic
Posté le 13-07-2004 à 09:49:43  profilanswer
 

Voilà le script que j'utilise:
 

#!/bin/sh
 
PROGNAME=$(basename $0)
MAX_PCT=90
 
function log_mail() {
    df -h | mail -s "CRITICAL: $1 a un taux d'occupation superieur a $MAX_PCT%: ($2%)" root@localhost
    /usr/bin/logger -i -t ${PROGNAME} \
                "$1 a un taux d'occupation superieur a $MAX_PCT%: ($2%)"
}
 
 
# --------------------------------------------------------------------
# check free space per partition
# --------------------------------------------------------------------
df -P -l | grep -v "Sys." | while read i; do i=( ${i} )
 
    PCT=`echo ${i[4]} | cut -d'%' -f1`
 
    if [ $PCT -ge $MAX_PCT ]; then
        log_mail ${i[5]} $PCT
    fi
 
done
# --------------------------------------------------------------------
 
 
exit

n°776459
nourson
Posté le 28-01-2006 à 07:00:18  profilanswer
 

Bonjour,
 
Désolé de faire remonter ce topic mais le script m'intéresse. Où peut-on configurer le destinataire du mail ? Est-ce dans ce qu'on appelle les VARPATH ?
 
Merci de votre attention

n°776460
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 28-01-2006 à 08:12:50  profilanswer
 

au début du script :
MAIL='adresse@domaine.tld'
 
et comme action :
mail $MAIL -s "Oula, on est serré dans ce slip"


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°776475
Mjules
Modérateur
Parle dans le vide
Posté le 28-01-2006 à 10:33:21  profilanswer
 

sous mandriva, tu as le script partmon qui fait ça bien :
 

Code :
  1. #!/usr/bin/perl
  2. #
  3. # Guillaume Cottenceau (gc@mandrakesoft.com)
  4. #
  5. # Copyright 2002 MandrakeSoft
  6. #
  7. # This software may be freely redistributed under the terms of the GNU
  8. # public license.
  9. #
  10. # You should have received a copy of the GNU General Public License
  11. # along with this program; if not, write to the Free Software
  12. # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  13. #
  14. #
  15. #use strict;
  16. use MDK::Common;
  17.  
  18. my ($verbose);
  19.  
  20. sub free_space {
  21.    my ($mntpoint) = @_;
  22.    my ($blocksize, $size, $avail);
  23.    my $buf = ' ' x 20000;
  24.    syscall_('statfs', $mntpoint, $buf) or return;
  25.    (undef, $blocksize, $size, undef, $avail, undef) = unpack "L!6", $buf;
  26.    return $avail * ($blocksize / 1024);
  27. }
  28.  
  29. my %partlimits = ( '/' => 20_000, '/tmp' => 20_000, '/usr' => 50_000, '/var' => 50_000, '/boot' => 5_000 );
  30.  
  31.  
  32. my $params = join '', @ARGV;
  33.  
  34. $params =~ /-h/ and die "usage: partmon [-v]\n";
  35. $params =~ /-v/ and $verbose = 1;
  36.  
  37.  
  38. my $ok = 1;
  39. foreach (cat_('/etc/fstab')) {
  40.    /^\s*#/ and next;
  41.    my (undef, $mountpoint, undef, undef, undef, undef) = split or next;  #- I want at least 6 fields to consider it a valid entry
  42.    member($mountpoint, keys %partlimits) or next;
  43.    my $free = free_space($mountpoint);
  44.    $verbose and print "Free space of <$mountpoint> is <$free>\n";
  45.    if ($free < $partlimits{$mountpoint}) {
  46.     print "Warning, free space for <$mountpoint> is only <", free_space($mountpoint), "> (which is inferior to <$partlimits{$mountpoint}>\n";
  47.     $ok = 0;
  48.    }
  49. }
  50.  
  51. $ok or exit -1;
  52.  
  53.  
  54. #-------------------------------------------------
  55. #- $Log: partmon.pl,v $
  56. #- Revision 1.1  2002/01/15 13:44:15  chmouel
  57. #- Add partition monitor from GC
  58. #-



---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°776641
nourson
Posté le 28-01-2006 à 20:14:57  profilanswer
 

Merci beaucoup, j'essayerai quand j'aurai le temps.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  aide pour un scrip place restante sur un disque dur

 

Sujets relatifs
la barre des taches ne reste pas en placeInstallation Linux et Windows sur même disque dur, ou Win4Lin-Wmware ?
aide sur xp familialeaide sur xp familiale
déplacer un disque dur (ide2 -> ide1)mettre en place pop-before-smtp avec postfix
comment installer knoppix sur un disque durProblème d'execution de scripts à l'aide de ./
J'ai perdu des Go !! - Samba est un voleur de place disque 
Plus de sujets relatifs à : aide pour un scrip place restante sur un disque dur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR