FileSystem Alert
Publicado por Leonardo Berbert Gomes (última atualização em 29/07/2020)
[ Hits: 1.320 ]
Homepage: https://www.linkedin.com/in/leoberbert
Script para monitoramento de diversos filesystems e envio de e-mail sem uso de autenticação.
#!/bin/perl
#
use Sys::Hostname;
use Data::Dumper;
use Time::Local;
#
($sec,$min,$hour,$day,$month,$year) = (localtime(time))[0,1,2,3,4,5]; $month +=1;$year +=1900;
if ($day =~ /^\d$/) { $day = "0" . $day;}
if ($min =~ /^\d$/) { $min = "0" . $min;}
if ($sec =~ /^\d$/) { $sec = "0" . $sec;}
if ($hour =~ /^\d$/) { $hour = "0" . $hour;}
if ($month =~ /^\d$/) { $month = "0" . $month;}
my $treshold = 85; ## Altere aqui pelo valor que irá gerar o alerta
my $fs = "/home,/var/log"; ## Inclua todos os FileSystem que deseja monitorar
my @fs = split /,/, $fs;
my @list = ();
for my $i (0 .. $#fs){
push @list, qr/^$fs[$i]/;
}
open (COMMAND,"df -h |");
while ($line = <COMMAND>){
chomp $line;
if ($line =~ /^Filesystem/) {next};
my @array = split /\s+/, $line;
$used_perc = @array[4];
$mount_point = @array[5];
$used_perc =~s/\%//g;
if ($mount_point ~~ @list) {
if ($used_perc >= $treshold) {
$hash{"FileSystem: $mount_point \t| used: $used_perc%"}++;
}
}
}
my $mail_file = "mail" . "_" . $year . $month . $day . $hour . $min . $sec . ".tmp";
open(OUT,">$mail_file") or die "Can't open : $!";
foreach $I ( sort keys %hash) {
print OUT "$I\n";
}
close(OUT);
if ( -z $mail_file ) {
unlink $mail_file;
} else {
my $emails="leoberbert\@uol.com.br,leoberbert\@gmail.com.br"; ## Inclua todos os email que irão receber o alerta
my $hostname = hostname();
my $server = "meuserver_smtp_sem_autenticacao.com.br:25"; ## Altere pelo seu servidor SMTP
my $message = "Filesystem $mount_point acima do Treshold. ";
system("cat $mail_file | mailx -S smtp=$server -s \"Alerta: Espaço em disco do servidor $hostname está no limite\" -v $emails");
unlink $mail_file;
}
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)









