1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| #!/usr/bin/perl -w
use strict;
use Archive::Tar;
use MIME::Lite;
use File::Copy;
#On indique le chemin des fichier de conf
my $date = localtime;
#On remplace les occurences : par des -
$date =~ s/:/-/g;
my $nomRep = "SaveConf_$date";
my $saveTar = Archive::Tar -> new();
my @tabFichiers = ('vsftpd.conf', 'sshd_config', 'settings.json', 'interfaces', 'apache2.conf');
my $mail = MIME::Lite -> new(
From =>'pouet@pouet.pouet',
To =>'tsoin@tsoin.tsoin',
Subject =>'Sauvegarde des fichiers terminée'.$nomRep,
Data =>"Bonjour,\n La sauvegarde que vous avez initiée est terminée.\n
Vous pouvez télécharger l'archive au format .tar sur le FTP");
#On change de repertoire et on créer le dossier des fichiers à sauvegarder
chdir('/etc/') or die ("Erreur lors du changement de repertoire");
mkdir($nomRep,0755) or die ("Erreur lors de la creation du repertoire");
chdir($nomRep) or die ("Erreur lors du changement de repertoire");
#On copie tout les fichiers
copy ("/etc/vsftpd.conf", $tabFichiers[0]);
copy ("/etc/ssh/sshd_config", $tabFichiers[1]);
copy ("/etc/transmission-daemon/settings.json", $tabFichiers[2]);
copy ("/etc/network/interfaces", $tabFichiers[3]);
copy ("/etc/apache2/apache2.conf", $tabFichiers[4]);
#On ajoute les fichiers à l'archive et on la crée
$saveTar -> add_files(@tabFichiers);
$saveTar -> rename($nomRep);
$saveTar -> write($nomRep.".tar");
#On envoit le mail confirmant la fin de la sauvegarder
$mail -> send; |
Partager