tenho esse a� que eu tive de fazer algumas adapta��es, e funciona muito bem para mim.
As adaptacoes permitiram usar proxy (passive mode) e notificar por email.
inte+


#!/bin/bash
# VirusScan DAT files update script
# 25/Set/2001 - Script para atualizacao do DAT's do VirusScan
#               adaptado a partir do script de :
#               28/02/2001 - Ivo Roumenov Tonev [EMAIL PROTECTED]
#
# Ultima Atualizacao : 24/02/2002

# criando pasta temporaria
echo "Criando pasta temporaria..."
dir_temp="/tmp/uvscan_update"
rm -rf $dir_temp
mkdir -m 700 $dir_temp
cd $dir_temp

can_update="no"
passive_mode="yes"
url_ftp="ftp://ftp.mcafee.com/pub/antivirus/datfiles/4.x/";
time_out="150"

mail_file="$dir_temp/mail_message"

# listando os arquivos disponiveis no ftp da mcafee
echo "Listando arquivos disponiveis no ftp da mcafee..."
if [ "$passive_mode"="yes" ] ; then
download_file=`/usr/bin/ncftpls -1 -F -t $time_out -d $dir_temp/ftplist.txt $url_ftp | grep zip`
else
download_file=`/usr/bin/ncftpls -1 -t $time_out -d $dir_temp/ftplist.txt $url_ftp | grep zip`
fi;


echo "Determinando versao dos dats ..."
dat_download=`echo $download_file | cut -c 5-8`
uv_version=`/usr/local/uvscan/uvscan --version | grep created | cut -c 18-22`


echo "Dados :"
echo "  servidor : $url"
echo "  arquivo para baixar    : $download_file"
echo "  versao novo dat        : $dat_download"
echo "  versao virusscan atual : $uv_version"
echo "  pasta temporaria       : $dir_temp"

if [ -z $uv_version ] ; then
   uv_version=4001
fi

if [ $uv_version -lt $dat_download ] ; then
 can_update="yes"
fi;

# Criando arquivo que ser� transmitido por e-mail
echo "From: uvscan-update" >$mail_file
echo "To: [EMAIL PROTECTED]">>$mail_file
echo "CC: [EMAIL PROTECTED]">>$mail_file
echo "Subject: Atualiza��o - VirusScan">>$mail_file
echo "">>$mail_file

if [ "$can_update" = "no" ] ; then
echo "N�o foi necess�rio fazer o download dos DATs do VirusScan">>$mail_file
echo "Pois este servidor j� se encontra com a ultima atualiza��o aplicada.">>$mail_file
echo "EOF">>$mail_file
fi;


if [ "$can_update" = "yes" ] ; then
 echo "Realizando download do arquivo $download_file"
 if [ "$passive_mode" = "yes" ] ; then
   options="--passive-ftp -P $dir_temp -t 999 -c $url_ftp$download_file"
 else
   options="-P $dir_temp -t 999 -c $url_ftp$download_file"
 fi;

wget $options >>$mail_file

dat_filename=`ls -l dat-*.zip | cut -c 57-70`
echo "Descompactando o arquivo $dat_filename ..."
rm -f /home/catalog/catalog/mcafee/*.zip
cp $dir_temp/$dat_filename /home/catalog/catalog/mcafee
unzip -t $dir_temp/$dat_filename
if [ $? -eq 0 ] ; then
can_update="yes"
else
echo "Foi encontrado um erro na descompactacao dos novos arquivos DAT">>$mail_file
echo "Por este motivo n�o foi realizada a atualiza��o.">>$mail_file
echo "Execute este procedimento manualmente.">>$mail_file
can_update="no"
fi;
fi;


if [ "$can_update" = "yes" ] ; then
  echo "Copiando e atualizando arquivos DATs..."
  mv -f $dir_temp/$dat_filename /usr/local/uvscan
  cd /usr/local/uvscan
  /bin/rm -rf clean.dat names.dat scan.dat internet.dat
  unzip -o -q -L $dat_filename
  rm -rf *.diz *.ini *.lst *.txt *.exe
  echo "A instala��o do VirusScan foi atualizada">>$mail_file
  echo "da vers�o $uv_version para a $dat_download">>$mail_file
  echo "em `date`" >>$mail_file
  cd $dir_temp
  echo "Anexando ultimo DAT na mensagem..."
  uuencode /usr/local/uvscan/$dat_filename ${dat_filename} >>$mail_file
fi

# Enviando e-mail para o destinatario
echo "Notificando e enviando DAT por e-mail..."
/bin/cat $mail_file<<EOF| /usr/lib/sendmail -i -t -B8BITMIME

echo "removendo pasta temporaria..."
rm -rf $dir_temp


Adriano Frare escreveu:


Caros colegas.

Necessito de um script que verifique se existe uma nova versao do Antivirus
da Mcafee e baixe no meu servidor Linux.



---------------------------------------------------------------------------
Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br

Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utiliza��o da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html

Responder a