# Удаление старых бекапов
print "Remove old backup\n";
foreach $cur_dir ($ftp->ls()) {
if ($cur_dir =~ /\.9$/) {
$ftp->delete($cur_dir);
}
}
# Ротация бекапов
print "Backup rotating:\n";
for ($i = 8; $i > 0; --$i) {
$j = $i + 1;
foreach $cur_dir ($ftp->ls()) {
$name = $new_name = $cur_dir;
if ($name =~ /\.$i$/) {
$new_name =~ s/\.$i$/\.$j/;
print "$name -> $new_name\n";
$ftp->rename($name, $new_name) or die "Can't rename $name\n";
}
}
}
foreach $cur_dir ($ftp->ls()) {
$name = $new_name = $cur_dir;
if ($name =~ /\.\w{2,5}$/) {
$new_name = $name.".1";
print "$name -> $new_name\n";
$ftp->rename($name, $new_name) or die "Can't rename $name\n";
}
}
вторник, 11 мая 2010 г.
Ротация бекапов в fsbackup
fsbackup - замечательная штука, но сохраняет токо последний бекап. Немного переделал скрипт, заменив сохранение старого бекапа на ротацию до 10 бекапов:
Подписаться на:
Комментарии к сообщению (Atom)
1 комментарий:
Спасибо за труды, но я думаю было-бы лучшим указать в каком месте скрипта необходимо вставить (заменить) Ваш код :(
Отправить комментарий