Бэкап svn репозитория на Gmail

Получил некоторый заряд бодрости когда на домашнем ПК начал сыпаться диск. :)

Немного подумав проверил бэкапы, перенес их свежие версии на DVD, осталось только понять что делать с локальным SVN репозиторием в котором хранятся все скрипты.

Что делать… что делать..
Отсылать по почте на Gmail. Благо ящик большой…

Отсылать вот таким скриптом на перле.

Поясню некоторые детали:
$backup_source – папка где храниться то что надо резервировать
$backup_folder – собственно то что резервируем

При использовании скрипта под windows необходимо только переписать пути.

#!/usr/bin/perl -w
use strict;
use Archive::Tar;
use File::Find;
use MIME::Lite;
use Net::SMTP;

sub sendmail();

my $email = ‘my.email@gmail.com’;
my $message_from = ‘Backup Script ‘;
my $message_body = "Here’s the attachment file(s) you wanted";

my $smtp_server = ‘smtp.server.com’;
my @archive_list;
my $backup_source = ‘/home/user/bin/’;
my $backup_folder = ‘svn’;
my $tar_file = ‘/home/user/temp/gmailtar.tgz’;

chdir($backup_source) || die "cannot change directory ($!)";

find (sub { push @archive_list, $File::Find::name }, $backup_folder);

Archive::Tar->create_archive($tar_file, "9", @archive_list);

sendmail();

unlink ($tar_file);

sub sendmail() {
my $msg = MIME::Lite->new(To => $email,
Subject => "Backup email",
From => $message_from,
Type => "multipart/mixed" ) or die "Error creating multipart container: $!\n";

$msg->attach (
Type => ‘TEXT’,
Data => $message_body
) or die "Error adding the text message part: $!\n";
$msg->attach(Type => "application/gzip",
Path => $tar_file,
Filename => "backup.tgz");
$msg->send(‘smtp’, $smtp_server);
}

Версию посвежее всегда можно найти в моем git репозитории.

PS на следующей неделе буду переносить систему на новый диск… переставлять как то не хочется…


Информация об авторе

Сергей Мариничев.
Вы можете присоединиться ко мне в Facebook или в Twitter.

Если Вам понравилась статья, то вы можете подписаться на RSS.
А также бесплатно подписаться по E-mail и получать актуальную информацию в числе первых.

Получать обновления на email

Вы можете оставить комментарий.

2 Комментариев »

 
  • 1# mike (17 комм.):

    использование smtp хорошо для бекапа скриптов и конфигов. В моем случае, это еще и дампы mysql, поэтому по трезвому мысля остановился на gmailfs + rsync.

      Цитировать

    • 2# admin (36 комм.):

      В данном случае методика хороша тем что на gmail дается много места, конечно не совсем честно его так использовать но как временное решение пойдет.

      В идеале для бэкапа на удаленный сервер конечно лучше связка rsync + ssh.

        Цитировать

 

Добавить комментарий

XHTML: Вы можете использовать тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>