J'ai écrit un exemple simple de script qui peut s'insérer dans notre architecture.
Ce script vérifie l'espace disque disponible sur le système en "parsant" simplement la sortie de df -h, et avertie si l'espace occupé est plus grand que $MAX_PCT_UTILISE. Il ne fait qu'afficher (via warn) un message lorsque ce maximum est dépassé : la gestion de l'erreur dans la BD est laissé en exercice... :)
Voici le code en question :
#!/usr/bin/perl
#
# Test l'espace libre sur les systèmes de fichiers du système,
# via df -h
#
# On maximum, on
$MAX_PCT_UTILISE = 75;
print tester();
sub tester{
open (DF, " df -h|") || die "Erreur : $!";
@df = ;
close DF;
shift @df; # supprime la premiere ligne
foreach my $d (@df){
my ($fs, $sz, $utilise, $dispo, $pct, $montage) = split( /\s+/, $d);
$pct =~ s/%//;
if ($pct >= $MAX_PCT_UTILISE){
warn "Attention, $pct % du disque $fs utilise :\n\t Il ne reste que $dispo de libre sur $montage!\n";
## Dans le TP, on logue cette condition dans la BD...
}
}
}
Posted by benoit at avril 15, 2004 01:18 PM