Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Портал .::2BakSa.WS::.
Вернуться   Компьютерный форум NoWa.cc > Операционные системы > Microsoft Windows > Windows 200x Server

Уважаемые пользователи nowa.cc и 2baksa.ws. У нас сложилось тяжёлое финансовое положение. Мы работаем для вас вот уже более 15 лет и сейчас вынуждены просить о помощи. Окажите посильную поддержку проектам. Мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: 826074280762 Webmoney WME: 804621616710
PayPal PayPal_Email E-mail для связи по вопросу помощи
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!
Ответ
 
Опции темы Опции просмотра Language
Старый 26.03.2008, 15:29   #1
ViP
 
Пол:Мужской
Регистрация: 18.01.2006
Адрес: MSK RU
Сообщений: 2,798
Репутация: 1164
По умолчанию Средства и способы бэкапа (вопросы и ответы)

Вопрос создания архивных копий системы и данных весьма важен в работе сисадмина.

На моей памяти есть как провальные ситуации, когда грохались базы 1С клиентов (не мной ), так и случаи дарения коньяка и прочих плюшек за восстановление случайно или умышленно утраченной пользователями информации.

В этой теме предлагаю обсуждать всевозможные способы создания архивных копий и точек восстановления пользовательских данных, состояния ОС, служб и серверов.

Обсуждаются именно самодельные/нестандартные и иные способы. ПО для бэкапа обсуждается в разделе Архиваторы, системные и тест прог

Последний раз редактировалось PLAstic; 11.11.2009 в 18:31..
PLAstic вне форума
 
Ответить с цитированием Вверх
Эти 4 пользователя(ей) сказали cпасибо за это полезное сообщение:
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: теплоход а рублевgem tester presidiumпластиковый диффузор дпу-м 100 дпу-м 100зоодепокак из моё дело в 1с перенести документы


Старый 05.05.2009, 13:32   #2
Alexdl
Пользователь
 
Пол:Мужской
Регистрация: 10.10.2007
Сообщений: 126
Репутация: 37
По умолчанию Батник для бэкапа

Помогите написать батник, для резервного копирования папок. ...или может у кого готовые есть?
Alexdl вне форума
 
Ответить с цитированием Вверх
Старый 05.05.2009, 15:43   #3
cruizer
Постоялец
 
Пол:Мужской
Регистрация: 19.10.2006
Сообщений: 238
Репутация: 111
По умолчанию Re: Батник для бэкапа

xcopy /? в командной строке
увидишь все доступные параметры ... и вперед
...
хотя ,чем стандартные средства винды не устраивают("Архивация данных" в разделе Служебные ) ?
я использую это только для автоматизации некоторых процессов

Последний раз редактировалось cruizer; 05.05.2009 в 15:50..
cruizer вне форума
 
Ответить с цитированием Вверх
Старый 05.05.2009, 17:14   #4
PLAstic
ViP
 
Пол:Мужской
Регистрация: 18.01.2006
Адрес: MSK RU
Сообщений: 2,798
Репутация: 1164
По умолчанию Re: Батник для бэкапа

Оба примера скриптов - файлы *.vbs
Класть можно куда угодно, шедулить на ежедневное исполнение.

Ежемесячное архивирование текстовых логов ISA, IIS и MDaemon

Добавлено через 4 минуты
Архивирование баз 1С

Архивы создаются по маске NNNNNyyyymmdd, где
NNNNN - название архива
yyyymmdd - формат даты в виде год, месяц, день. При такой форме даты архивы упорядочены в хронологическом порядке.

Последний раз редактировалось PLAstic; 05.05.2009 в 17:26.. Причина: Добавлено сообщение
PLAstic вне форума
 
Ответить с цитированием Вверх
Эти 3 пользователя(ей) сказали cпасибо за это полезное сообщение:
Старый 07.05.2009, 11:24   #5
Polkz
Пользователь
 
Пол:Мужской
Регистрация: 29.01.2009
Сообщений: 34
Репутация: 4
По умолчанию Re: Батник для бэкапа

С помощь RAR в батник строки
"C:\Program Files\WinRaR\rar" a -ag -r -dh E:\Arhiv\2009.rar D:\
архивируем с датой где архив что архивируем
Polkz вне форума
 
Ответить с цитированием Вверх
Старый 07.05.2009, 14:10   #6
Alexdl
Пользователь
 
Пол:Мужской
Регистрация: 10.10.2007
Сообщений: 126
Репутация: 37
По умолчанию Re: Батник для бэкапа

Спасибо, разберусь.
Еще вопрос: Как сделать, чтоб в названии архива присутствовала дата его создания?
Alexdl вне форума
 
Ответить с цитированием Вверх
Старый 07.05.2009, 16:11   #7
PLAstic
ViP
 
Пол:Мужской
Регистрация: 18.01.2006
Адрес: MSK RU
Сообщений: 2,798
Репутация: 1164
По умолчанию Re: Батник для бэкапа

Цитата:
Сообщение от Alexdl Посмотреть сообщение
Еще вопрос: Как сделать, чтоб в названии архива присутствовала дата его создания

Внимательно изучить две вещи:
  • документацию по Winrar
  • ключи приведённой выше командной строки
PLAstic вне форума
 
Ответить с цитированием Вверх
Старый 03.06.2009, 15:17   #8
Ckpyt
Неактивный пользователь
 
Пол:Мужской
Регистрация: 20.11.2007
Сообщений: 10
Репутация: 3
По умолчанию Re: Батник для бэкапа

Гм.. (достает старую, еще прошлого века папочку)
Лучше всего вот так:

if exist %date%.dat goto :end //проверяем создана ли сегодня копия. Если уже есть, батник прерывается.
copy *.dat date\*.dat //копируем в папку отчет о запуске батника
del *.dat //удаляем предыдущую дату
copy *.bat %date%.dat //создаем сегодняшнюю дату копирования
If exist e:\rezerv\01*.dat mesec.bat //если первое число, то запускается батник, копирующий в другое место
//переходим в папку назначения
d:
cd d:\target
//проверяем куда будем копировать
if exist e:\rezerv\rez10.rez goto :rez1
if exist e:\rezerv\rez1.rez goto :rez2
if exist e:\rezerv\rez2.rez goto :rez3
if exist e:\rezerv\rez3.rez goto :rez4
if exist e:\rezerv\rez4.rez goto :rez5
if exist e:\rezerv\rez5.rez goto :rez6
if exist e:\rezerv\rez6.rez goto :rez7
if exist e:\rezerv\rez7.rez goto :rez8
if exist e:\rezerv\rez8.rez goto :rez9
if exist e:\rezerv\rez9.rez goto :rez10
//если файла с номером архива нет, его создаем и прерываем батник
copy e:\rezerv\12.bat e:\rezerv\rez1.rez
goto :end
//типовой модуль копирования
:rez1 //метка с номером копии
move e:\rezerv\rez10.rez e:\rezerv\rez1.rez //перемещаем номер копии на наш
xcopy *.* e:\rezerv\rezerv1\db\*.* /s /f /r /y //копируем все файлы с подкаталогами в резервное место
goto :end //закрываем батник

:rez2
move e:\rezerv\rez1.rez e:\rezerv\rez2.rez
xcopy *.* e:\rezerv\rezerv2\db\*.* /s /f /r /y
goto :end

:rez3
move e:\rezerv\rez2.rez e:\rezerv\rez3.rez
xcopy *.* e:\rezerv\rezerv3\db\*.* /s /f /r /y
goto :end

:rez4
move e:\rezerv\rez3.rez e:\rezerv\rez4.rez
xcopy *.* e:\rezerv\rezerv4\db\*.* /s /f /r /y

:rez5
move e:\rezerv\rez4.rez e:\rezerv\rez5.rez
xcopy *.* e:\rezerv\rezerv5\db\*.* /s /f /r /y
goto :end

:rez6
move e:\rezerv\rez5.rez e:\rezerv\rez6.rez
xcopy *.* e:\rezerv\rezerv6\db\*.* /s /f /r /y
goto :end

:rez7
move e:\rezerv\rez6.rez e:\rezerv\rez7.rez
xcopy *.* e:\rezerv\rezerv7\db\*.* /s /f /r /y
goto :end

:rez8
move e:\rezerv\rez7.rez e:\rezerv\rez8.rez
xcopy *.* e:\rezerv\rezerv8\db\*.* /s /f /r /y
goto :end

:rez9
move e:\rezerv\rez8.rez e:\rezerv\rez9.rez
xcopy *.* e:\rezerv\rezerv9\db\*.* /s /f /r /y
goto :end

:rez10
move e:\rezerv\rez9.rez e:\rezerv\rez10.rez
xcopy *.* e:\rezerv\rezerv10\db\*.* /s /f /r /y
goto :end

:end



//создает 10 отдельных копий. Хоть ежедневно :-) И раз в месяц - вызывает батник для создания копии в другом месте :-)
Но лучше всего скрипты осваивать.
П.с. текст дальше // - убрать обязательно! батник лежит в папке, куда копируется.
П.п.с %date% - вставляет текущую дату в ту строку, где используется.

Последний раз редактировалось Ckpyt; 03.06.2009 в 15:19..
Ckpyt вне форума
 
Ответить с цитированием Вверх
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение:
Старый 05.06.2009, 12:35   #9
sergeysnl
Неактивный пользователь
 
Регистрация: 31.10.2008
Сообщений: 1
Репутация: 0
По умолчанию Re: Батник для бэкапа

Ckpyt а еще чтото есть?
sergeysnl вне форума
 
Ответить с цитированием Вверх
Старый 05.06.2009, 12:49   #10
DCRM
Постоялец
 
Аватар для DCRM
 
Пол:Мужской
Регистрация: 03.11.2005
Адрес: Annuit Cœptis
Сообщений: 302
Репутация: 424
По умолчанию Re: Батник для бэкапа

Цитата:
Сообщение от sergeysnl Посмотреть сообщение
Ckpyt а еще чтото есть?

Есть ваша фантазия, и google.com
+Start->Run->[hh ntcmds.chm]
__________________
This world is very interesting, it feels free, but this freedom must be hacked. (с)
DCRM вне форума
 
Ответить с цитированием Вверх
Старый 05.06.2009, 13:02   #11
PLAstic
ViP
 
Пол:Мужской
Регистрация: 18.01.2006
Адрес: MSK RU
Сообщений: 2,798
Репутация: 1164
По умолчанию Re: Батник для бэкапа

Цитата:
Сообщение от sergeysnl Посмотреть сообщение
Ckpyt а еще чтото есть

Если это реальный интерес, а не набор постов, то скажу мнение стороннего наблюдателя.
  • Создаётся только 10 копий.
  • Нет проверки на целостность полученных копий. В отличие от архивирования.
  • Не ясно, за какое число лежит копия в какой папке. Как следствие, не ясно, в какой папке самая древняя или самая свежая копия.
  • Файлы лежат в открытом виде. В отличие от зашифрованного архива.
PLAstic вне форума
 
Ответить с цитированием Вверх
Старый 05.06.2009, 13:40   #12
Merlin Cori
Неактивный пользователь
 
Пол:Мужской
Регистрация: 04.01.2007
Сообщений: 9
Репутация: 10
По умолчанию Re: Батник для бэкапа

sergeysnl,
а чем, собственно, не устраивает стандартный ntbackup?
шедулер есть, параметры коммандной строки есть, проверка целостности есть...
а чтоб файл был с сегодняшней датой - простейший perl скрипт и в нем формировать имя файла и запускать ntbackup
Merlin Cori вне форума
 
Ответить с цитированием Вверх
Старый 12.06.2009, 18:50   #13
Ckpyt
Неактивный пользователь
 
Пол:Мужской
Регистрация: 20.11.2007
Сообщений: 10
Репутация: 3
Smile Re: Батник для бэкапа

Цитата:
Сообщение от PLAstic Посмотреть сообщение
Если это реальный интерес, а не набор постов, то скажу мнение стороннего наблюдателя.
  • Создаётся только 10 копий.
  • Нет проверки на целостность полученных копий. В отличие от архивирования.
  • Не ясно, за какое число лежит копия в какой папке. Как следствие, не ясно, в какой папке самая древняя или самая свежая копия.
  • Файлы лежат в открытом виде. В отличие от зашифрованного архива.

а)количество копий можно наделать вручную сколько хочешь. Простым копированием блоков до нужного числа.
б)да, нет. Файл древний, программировать тогда не умел.
в)а вот и нет. Специально для этого в папке с копиями лежит файл с номером последней версии(rez*.rez)
г)доделать архивирование достаточно легко.
Но вообще, файл сделан для одной, не сетевой машины. Т.е. к машине имеют доступ только те, кто за нее садится.

П.с. вариант с ntbackupom лично меня не устраивал и не устраивает потому что нет возможности залезть в архив и вытащить оттуда только нужный файл.

П.п.с на текущий момент использую собственноручно написанную программу для резервного копирования. но, естественно, выкладывать в открытый доступ программу, весом в полторы тысячи строк, я просто не буду :-)
Ckpyt вне форума
 
Ответить с цитированием Вверх
Старый 15.06.2009, 10:25   #14
Merlin Cori
Неактивный пользователь
 
Пол:Мужской
Регистрация: 04.01.2007
Сообщений: 9
Репутация: 10
По умолчанию Re: Батник для бэкапа

Ckpyt,
ну не знаю, чего ты там наваял на полторы тысячи строк, но почти все подобные задачи решаются перловым скриптом на полторы сотни строк, 2/3 которых печать в лог-файл

Вот конкретный рабочий скрипт, который выполняет все нужные действия. Стопит оракловую базу, стопит сервисы, архивирует RAR все нужное содержимое, а потом все обратно стартут. Вешаешь все или на шедулер по команде at или ставишь nncron. Все что надо, изредка посматривать в логи. Те папки которые нужно архивировать указываютсяв файле backup.lst


Код:
#!/Perl/bin/perl
#
# Скрипт создания offline архивной копии базы Oracle Informatica
#
# Author: Merlin Cori	
#
# [email protected]
#
#    Ключи запуска:
# - отсутствуют
#


use Mail::Sender;
use Cwd;
use Time::localtime;
use Win32API::File 0.08 qw( :ALL );
#
#--------------------------------Переменные --------------------

$archdir = "d:\\backup\\"; # Рабочий каталог
$arch_file = "archive_"; # Файл backupa
$ext=".rar";
$logfile = "oracle_backup.log"; # Лог файл 
$command = "c:\\arc\\rar a -rr10p -k -m1 -mt4 -r -v3900m";   # командная строка запуска программы архивации
$startbat="startdb.bat";
$stopbat="stopdb.bat";
$dir_list=" \@backup.lst";
$mail_to = "[email protected]";
$test_run=0;
#---------------------------------------------------------------------

print("\t- = - Informatica Oracle base backup script - = -\n\t\tVersion 0.3a build 15.06.2009\n\n");

    $workdir = "c:\\oracle"; # Рабочий каталог
($day, $month, $year, $hour, $min, $sec)=now();

$file_name=$arch_file.$day."_".$month."_".$year;



open (LOGFILE_HANDLE,">>$logfile") or die ("Cannot open log file $logfile");
print LOGFILE_HANDLE "Started ";
print LOGFILE_HANDLE "$day.$month.$year $hour:$min:$sec";
print LOGFILE_HANDLE "\n";


($day, $month, $year, $hour, $min, $sec)=now();
print LOGFILE_HANDLE "$day.$month.$year - $hour:$min:$sec  Stopping services\n";
print LOGFILE_HANDLE "Stopping Informatica PCISBW\n";
system("net stop \"Informatica PCISBW\"");

($day, $month, $year, $hour, $min, $sec)=now();
print LOGFILE_HANDLE "Stopping Informatica Server\n";
system("net stop Informatica");

($day, $month, $year, $hour, $min, $sec)=now();
print LOGFILE_HANDLE "Stopping Informatica Repository Server\n";
system("net stop \"Informatica Repository Server\"");

($day, $month, $year, $hour, $min, $sec)=now();
print LOGFILE_HANDLE "Stopping Gene6 FTP Server\n";
system("net stop \"Gene6 FTP Server\"");

open(BATFILE_HANDLE,">$stopbat") or die ("Cannot create temp bat file");
print BATFILE_HANDLE "set nls_lang=russian_cis.ru8pc866\n";
print BATFILE_HANDLE "set ORACLE_SID=XXXX\n";
print BATFILE_HANDLE "echo set echo on                  > %0.tmp\n";
print BATFILE_HANDLE "echo connect sys/".$passwd."\@XXXX as sysdba; >> %0.tmp\n";
print BATFILE_HANDLE "echo shutdown immediate;         >> %0.tmp\n";
print BATFILE_HANDLE "echo exit;                       >> %0.tmp\n";
print BATFILE_HANDLE "C:\\oracle\\XXXX\\ora92\\bin\\sqlplus /nolog @%0.tmp\n";
print BATFILE_HANDLE "del %0.tmp\n";
print BATFILE_HANDLE "exit\n";
close BATFILE_HANDLE;



system("stopdb.bat");

($day, $month, $year, $hour, $min, $sec)=now();
print LOGFILE_HANDLE "Stopping OracleXXXXTNSListener\n";
system("net stop OracleXXXXTNSListener");

unlink $stopbat;

($day, $month, $year, $hour, $min, $sec)=now();
print LOGFILE_HANDLE "Stopping OracleServiceXXXX\n";
system("net stop OracleServiceXXXX");

# Архивируем содержимое папки Oracle
$archive=$archdir.$file_name.$dir_list;

system "$command $archive.$dir_list";
$source=$archdir.$file_name.$ext;
$dest=$destdir.$file_name.$ext;

($day, $month, $year, $hour, $min, $sec)=now();

print LOGFILE_HANDLE "$day.$month.$year - $hour:$min:$sec  Starting services\n";

print LOGFILE_HANDLE "Starting OracleServiceXXXX\n";
system("net start OracleServiceXXXX");
print LOGFILE_HANDLE "Starting OracleXXXXTNSListener\n";
system("net start OracleXXXXTNSListener");
print LOGFILE_HANDLE "Run start.bat\n";
open(BATFILE_HANDLE,">$startbat") or die ("Cannot create temp bat file");
print BATFILE_HANDLE "echo set echo on                  > %0.tmp\n";
print BATFILE_HANDLE "echo connect sys/".$passwd."\@XXXX as sysdba; >> %0.tmp\n";
print BATFILE_HANDLE "echo startup force;              >> %0.tmp\n";
print BATFILE_HANDLE "echo exit;                       >> %0.tmp\n";
print BATFILE_HANDLE "C:\\oracle\\XXXX\\ora92\\bin\\sqlplus /nolog @%0.tmp\n";
print BATFILE_HANDLE "del %0.tmp\n";
close BATFILE_HANDLE;

system("startdb.bat");
unlink $startbat;
print LOGFILE_HANDLE "Starting Informatica Repository Server\n";
system("net start \"Informatica Repository Server\"");
print LOGFILE_HANDLE "Starting Informatica Server\n";
system("net start Informatica");
sleep 40;
print LOGFILE_HANDLE "Starting Informatica PCISBW\n";
system("net start \"Informatica PCISBW\"");

print LOGFILE_HANDLE "Starting Gene6 FTP Server\n";
system("net start \"Gene6 FTP Server\"");
}

($day, $month, $year, $hour, $min, $sec)=now();

print LOGFILE_HANDLE "Backup successful\n";
print LOGFILE_HANDLE "Stopped $day.$month.$year - $hour:$min:$sec \n\n";
print LOGFILE_HANDLE "-" x 40;
print LOGFILE_HANDLE "\n\n";

close LOGFILE_HANDLE;

send_message("Completed","Success XXXX",$mail_to);

#------------------------------- Begin send message -------------------------------------
sub send_message
{
  my($message) = @_[0];  
  my($subj) = @_[1];
  my($adress)= @_[2];
  $sender = new Mail::Sender {
                smtp => 'smtp.xxxxxx.ru',
                from => '[email protected]',
                on_errors => undef,
        } or die "Can't create the Mail::Sender object: $Mail::Sender::Error\n";
  $sender->OpenMultipart({to => $adress, subject => $subj});
  $sender->Body({encoding => 'Base64', charset => 'windows-1251'});
  $sender->SendEnc($message);
  $sender->Close;
}
#------------------------------- End send message ---------------------------------------
#------------------------------- Begin current date and time ----------------------------------
sub now()
{
$day = localtime->mday();
$month = localtime->mon()+1;
$year=localtime->year() + 1900;

#final_archiving ($day, $month, $year, $archdir);

$hour=localtime->hour();
$min=localtime->min();
$sec=localtime->sec();

return $day, $month, $year, $hour, $min, $sec;
#------------------------------- End current date and time ------------------------------------
}

Последний раз редактировалось Merlin Cori; 15.06.2009 в 10:51..
Merlin Cori вне форума
 
Ответить с цитированием Вверх
Старый 15.06.2009, 22:24   #15
grimic
Неактивный пользователь
 
Пол:Мужской
Регистрация: 30.05.2008
Сообщений: 45
Репутация: 3
По умолчанию Re: Батник для бэкапа

простенький бекап для копирования базы 1С
@echo.
@echo Backup 1C_Base
@echo off
rar u -s -mdd -dh -ilog -x*.cdx -x*.bmp -x*.jpg -x*.ert -x*.exe -x*.zip -x*.rar -r -agDD_MMM_YY-HH-MM-SS backup "D:\1CBase\Mk"
move /Y backup*.* D:\1CBackup\
Пользовался им раньше, а теперь пользуюсь программой КобианБекап - бесплатная, ресурсов почти не потребляет, работает в фоновом режиме, проверяет сделаный архив, удаляет архивные файлы, когда их количество превышает заданное. Очень рекомендую.

Добавлено через 20 минут
Качал эту прожку давненько, года два ей уже пользуюсь, но в гугле только-что дал запрос - http://soft.softodrom.ru/ap/Cobian-Backup-p1786 по первой ссылке выдало.
Кстати, версия поновее моей оказалась. Надо бы обновиться

Последний раз редактировалось grimic; 15.06.2009 в 22:48.. Причина: Добавлено сообщение
grimic вне форума
 
Ответить с цитированием Вверх
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение:
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопросы-ответы по ASP.NET 2.0 Lihonosov ASP.NET 9 08.01.2011 17:10
Вопросы и Ответы vasiliy Stardock и все о нём 69 10.11.2010 19:31
Вопросы и ответы. igrid Иконки и Курсоры/Icons & Cursors 24 14.11.2009 23:49
Вопросы и Ответы об ICQ Deementor Хакинг в глобальной сети WWW 32 11.03.2008 16:21

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 14:19. Часовой пояс GMT +3.


Copyright ©2004 - 2024 2BakSa.WS

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.22512 секунды с 11 запросами