logo del sito - virgix
Virgilio.org
Blat, Abakt e un piccolo batch

consigli per la ricerca

 

Farsi spedire un backup completo con un click


Quando un utente segnala un problema, spesso c’è bisogno di ricrearlo sulla macchina di sviluppo: per farlo occorre però un backup aggiornato dei dati, ma se il vostro applicativo è all’interno di una intranet, aiuto! Ottenere i dati via mail diventa a volte penoso o impossibile, a meno che vi siate costruiti una micro procedura d’emergenza…. Il tutto a costo zero, visto che i programmi occorrenti sono free e open source!

Software occorrente:

Blat – programma per spedire mail da linea di comando - http://www.blat.net/

Abakt - A Backup Tool - http://www.xs4all.nl/~edienske/

Seven zip – www.sourceforge.net

Oppure, potete usare anche il classico winzip invece di seve zip, che però non è un tool free.

Per prima cosa installiamo Blat, copiando il file"Blat.exe in"\WINNT\SYSTEM32" o comunque nella cartella di sistema, e poi battiamo il seguente comando:
“Blat -install smtp.yoursite.tld youruserid@yoursite.tld"
ecco la schermata di installazione personalizzata con i miei dati:

installazione blat

 

Passiamo poi ad installare Abakt – in questo caso c’è una normale routine di installazione – e lanciamo l’eseguibile per creare il task di backup: nell’esempio si tratta di farsi inviare per posta il file eCommerce.mdb, quindi selezioniamo la cartella dove si trova l’archivio, escludendo gli atri files che non interessano:
selezionaiamo il file che interessa

 

Come si può vedere dall’immagine, le possibilità per selezionare i file da escludere sono veramente complete.

Molti i criteri per scartare i files che non interessano

Occorre poi selezionare il tipo di azione ed il metodo di archiviazione: dovendo spedire il file, scegliamo di comprimerlo con winzip.

Selezionare il modo di archiviazione

 

Impostiamo la cartella di destinazione:
Scelta della cartella di destinazione

 

E specifichiamo il modo di operare:
Specifichiamo il modo di operare

 

Potremmo anche verificare gli archivi..

Si possono eventualmente verificare i files creati


Testiamo il task per verificare che faccia esattamente quanto necessario, e per avere un file su cui poi testare Blat:

Verifica del task di backup salvato


Tutto OK! Abbiamo il file zippato:

Fle creato correttamente

 

Lanciamo il file batch: ecco l’output

Output del batch


Verifichiamo l’arrivo della mail:

Verifica invio mail - 1

verifica email - 2

 

A questo punto creiamo un collegamento sul desktop dell'utente, ed al momento del bisogno sarà possibile ricevere senza troppi affanni la copia degli archivi della procedure, o qualunque altro file - ad esempio qualche log!


Ed ecco il testo del file batch che esegue il task di Abakt e poi lo spedisce via mail come allegato utilizzando Blat:

@rem == ///////////////////////////////////////////////////////////////////////////
@rem == ----------------------------------------------------------- ///////////
@rem == This file sends a binary file attached to an email message ///////////
@rem == Each comment has been translated in italian, so each comment ///////////
@rem == will have two lines, the first in english, the second the ///////////
@rem == italian translation ///////////
@rem == .......................................................... ///////////
@rem == Questo file invia un file binario come allegato di una mail ///////////
@rem == per ogni commento la prima riga è in inglese, la sconda riga ///////////
@rem == contiene la traduzione italiana ///////////
@rem == ----------------------------------------------------------- ///////////
@rem == by Virgix - http://www.virgilio.org - summer 2006/Estate 2006 ///////////
@rem == ----------------------------------------------------------- ///////////
@rem == ///////////////////////////////////////////////////////////////////////////

@rem == this part must be edited to fit your paths
@rem == questa parte del file va modificata per adattarla ai vostri percorsi

@rem == Path to Blat executable
@rem == Percorso dell'eseguibile di Blat
set BLAT="C:\Programmi\Blat250\full\blat.exe"

@rem == Path to Abakt executable
@rem == Percorso dell'eseguibile di Abakt
set ABAKT="C:\Programmi\Abakt\Abakt.exe"

@rem == Path to the saved profile to be used from Abakt
@rem == Percorso del profilo salvato da usare con Abakt
set PROFILE=C:\Programmi\Abakt\BackupDBEcommerce

@rem == Path to the file to be sent as mail attach
@rem == Percorso al file chevolete spedire come allegato
set FILE_TO_SEND=C:\TEMP\backup\BackupDBEcommerce.zip

@rem == Your email address
@rem == Il vostro indirizzo di posta
set EMAIL=dev@virgilio.org

@rem == SMPT provider
@rem == il vostro server SMPT
set PROVIDER=out.alice.it

@rem == Body of mail
@rem == it testo della mail
set BODY=Ecco il DB!

@rem == ||||| no need to edit beyond this line! ||||||||||||||||||||||||||||||||
@rem == ||||| fine area da personalizzare! ||||||||||||||||||||||||||||||||

@rem == Prepare blat:
@rem == Preparo blat:
%BLAT% -install %PROVIDER% %EMAIL%

@rem == Call Abakt:
@rem == Eseguo il profili di Abakt:
%ABAKT% -b -x -l -m "%PROFILE%.abp"

goto result%ERRORLEVEL%
:result0
@rem OK (0x00)
%BLAT% -attach %FILE_TO_SEND% -s "%PROFILE%.abp Ok" -body " %BODY% " -to %EMAIL%
@goto end
:result2
@rem OK+WARNING (0x02)
%BLAT% %FILE_TO_SEND% -s "%PROFILE% Ok + Warnings" -to %EMAIL%
@goto end
:result1
@rem ERROR (0x01)
:result3
@rem ERROR+WARNING (0x03)
%BLAT% %FILE_TO_SEND% -s "%PROFILE% Failed!" -to %EMAIL%
@goto end

:end

@rem == You can safely skip this line if you don't want check the output...
@rem == potete cancellare tranquillamente la linea tottostante se non vi interessa vedere l'output
pause

 

clicca qui per scaricare lo script di invio della mail