Система - Планировщик и скрипт архивации c помощью ntbackup

Аватара пользователя
NiOl

Re: Система - Планировщик и скрипт архивации c помощью ntbackup

Сообщение NiOl »

Цитата amel27:



стандартный приём: запускать батник с параметрами типа "test.cmd >c:\err.log 2>&1"
Система - Планировщик и скрипт архивации c помощью ntbackup




Итак, в шедулере у меня такая строка (все как здесь, т.е. без кавычек, не знаю нужны они или нет)



Код:

Код: Выделить всё

C:\WINDOWS\system32\cmd.exe /c E:\backup\database\database.cmd >c:\err.log 2>&1

поставил в расписание - сделал LOG OFF - подождал - смотрю содержимое файла c:\err.log



Код:

Код: Выделить всё

E:\backup\database>SetLocal EnableDelayedExpansion 
E:\backup\database>SET SOURCE=D:\resourse\backup_bases 
E:\backup\database>SET FULLDEPTH=3 
E:\backup\database>SET INCRDEPTH=5 
E:\backup\database>Call :CallEx GetState 
E:\backup\database>Call :GetState 
E:\backup\database>For /F "Delims=" %i in (database.ini) Do Set /A %i+0 
E:\backup\database>Set /A INCREMENT=0 +0 
E:\backup\database>If "0" == "" (
Echo INCREMENT=0  1>database.ini  
 For /F "Delims=" %i in (database.ini) Do Set /A %i+0  
 If Not "!INCREMENT!" == "0" (
Set INCREMENT=0  
 Exit /B 2 
) 
) 
E:\backup\database>GoTo :EOF 
E:\backup\database>If 0 EQU 1 (
Echo. 
 Echo Модуль "GetState" вызвал исключение, работа скрипта прервана!  
 Exit  
) 
E:\backup\database>If 0 EQU 2 Echo Модуль "GetState" вызвал некритичную ошибку, работа скрипта продолжена. 
E:\backup\database>GoTo :EOF 
E:\backup\database>Call :CallEx DelLogs 
E:\backup\database>Call :DelLogs 
E:\backup\database>Set $BakData=~0,-17\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data 
E:\backup\database>Del /Q /F "~0,-17\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data\backup*.log"  1>nul 
The system cannot find the path specified.
E:\backup\database>If 1 NEQ 0 Exit /B 1 
E:\backup\database>If 1 EQU 1 (
Echo. 
 Echo Модуль "DelLogs" вызвал исключение, работа скрипта прервана!  
 Exit  
) 
Модуль "DelLogs" вызвал исключение, работа скрипта прервана

Большое спасибо, что откликнулись

Что с этим делать дальше не знаю...
Аватара пользователя
Petya V4sechkin

Re: Система - Планировщик и скрипт архивации c помощью ntbackup

Сообщение Petya V4sechkin »

Цитата Udar_Nick:



Set $BakData=~0,-17



Вот оно что, переменная APPDATA не определяется (если вход не интерактивный).
Аватара пользователя
Udar_Nick

Re: Система - Планировщик и скрипт архивации c помощью ntbackup

Сообщение Udar_Nick »

Цитата NiOl:



Думаю проблема в пользователе, который используется шедулером - попробуйте простой тест, что будет на выходе после шедулера?

Код:

@echo %USERDOMAIN%\%USERNAME%: %CD%>%~dpn0.txt
Система - Планировщик и скрипт архивации c помощью ntbackup






задание выполняется под OFFICE\Aleks



в шедулере: cmd /c C:\test.cmd (содержащий Вашу строчку)



на выходе получил файл в корне диска C: с именем test.txt содержащий:



Код:

Код: Выделить всё

OFFICE\Aleks: C:\WINDOWS\system32



Спасибо что откликнулись :-)
Аватара пользователя
Petya V4sechkin

Re: Система - Планировщик и скрипт архивации c помощью ntbackup

Сообщение Petya V4sechkin »

Udar_Nick, в принципе, можно заменить строчку (их две штуки):



Код:

Код: Выделить всё

Set $BakData=%APPDATA:~0,-17%\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data

на:



Код:

Код: Выделить всё

Set $BakData=%UserProfile%\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data
Аватара пользователя
Udar_Nick

Re: Система - Планировщик и скрипт архивации c помощью ntbackup

Сообщение Udar_Nick »

Цитата Petya V4sechkin:



Udar_Nick, в принципе, можно заменить строчку (их две штуки):
Система - Планировщик и скрипт архивации c помощью ntbackup




УРА! СПАСИБО! РАБОТАЕТ!
Аватара пользователя
Udar_Nick

Re: Система - Планировщик и скрипт архивации c помощью ntbackup

Сообщение Udar_Nick »

Приветствую уважаемый форум!



Опять столкнулся с проблемкой по этому скрипту...



Решение выше заработало на Win 2003 Enterprice Server SP2 ENG



А вот на Win XP SP3 RUS - скрипт не отрабатывает... причем пока запускаю его не шедулером, а руками



делаю вывод ошибок в файл, вот его содержимое



Код:

Код: Выделить всё

:\Documents and Settings\Reanimator>SetLocal EnableDelayedExpansion 
C:\Documents and Settings\Reanimator>SET SOURCE="@C:\backup-log\admin03.bks" 
C:\Documents and Settings\Reanimator>SET FULLDEPTH=5 
C:\Documents and Settings\Reanimator>SET INCRDEPTH=6 
C:\Documents and Settings\Reanimator>Call :CallEx GetState 
C:\Documents and Settings\Reanimator>Call :GetState 
C:\Documents and Settings\Reanimator>For /F "Delims=" %i in (admin03.ini) Do Set /A %i+0 
C:\Documents and Settings\Reanimator>Set /A INCREMENT=1 +0 
C:\Documents and Settings\Reanimator>If "1" == "" (
Echo INCREMENT=0  1>admin03.ini  
 For /F "Delims=" %i in (admin03.ini) Do Set /A %i+0  
 If Not "!INCREMENT!" == "0" (
Set INCREMENT=0  
 Exit /B 2 
) 
) 
C:\Documents and Settings\Reanimator>GoTo :EOF 
C:\Documents and Settings\Reanimator>If 0 EQU 1 (
Echo. 
 Echo Модуль "GetState" вызвал исключение, работа скрипта прервана!  
 Exit  
) 
C:\Documents and Settings\Reanimator>If 0 EQU 2 Echo Модуль "GetState" вызвал некритичную ошибку, работа скрипта продолжена. 
C:\Documents and Settings\Reanimator>GoTo :EOF 
C:\Documents and Settings\Reanimator>Call :CallEx DelLogs 
C:\Documents and Settings\Reanimator>Call :DelLogs 
C:\Documents and Settings\Reanimator>Set $BakData=C:\Documents and Settings\Reanimator\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data 
C:\Documents and Settings\Reanimator>Del /Q /F "C:\Documents and Settings\Reanimator\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data\backup*.log"  1>nul 
C:\Documents and Settings\Reanimator>If 0 NEQ 0 Exit /B 1 
C:\Documents and Settings\Reanimator>GoTo :EOF 
C:\Documents and Settings\Reanimator>If 0 EQU 1 (
Echo. 
 Echo Модуль "DelLogs" вызвал исключение, работа скрипта прервана!  
 Exit  
) 
C:\Documents and Settings\Reanimator>If 0 EQU 2 Echo Модуль "DelLogs" вызвал некритичную ошибку, работа скрипта продолжена. 
C:\Documents and Settings\Reanimator>GoTo :EOF 
C:\Documents and Settings\Reanimator>Call :CallEx StartCMD 
C:\Documents and Settings\Reanimator>Call :StartCMD 
C:\Documents and Settings\Reanimator>Set $CMD=ntbackup backup "@C:\backup-log\admin03.bks" /f "c:\backup-log\admin03.0.bkf" /l:f /m incremental /a 
C:\Documents and Settings\Reanimator>If 1 EQU 0 Set $CMD=ntbackup backup "@C:\backup-log\admin03.bks" /f "c:\backup-log\admin03.bkf"  /m normal /l:f 
C:\Documents and Settings\Reanimator>Start /WAIT ntbackup backup "@C:\backup-log\admin03.bks" /f "c:\backup-log\admin03.0.bkf" /l:f /m incremental /a 
C:\Documents and Settings\Reanimator>If 0 NEQ 0 (
Call :CallEx CopyLog  
 Echo При выполнении резервного копирования возникли ошибки,  
 Echo Смотрите журнал сообщений: "admin03.log".  
 Exit /B 1 
) 
C:\Documents and Settings\Reanimator>Call :CallEx CopyLog 
C:\Documents and Settings\Reanimator>Call :CopyLog 
C:\Documents and Settings\Reanimator>Set $BakData=C:\Documents and Settings\Reanimator\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data 
C:\Documents and Settings\Reanimator>If 1 EQU 0 (Copy "C:\Documents and Settings\Reanimator\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data\backup*.log" admin03.log  1>nul )  Else (Copy /B admin03.0.log+"C:\Documents and Settings\Reanimator\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data\backup*.log" admin03.0.log  1>nul ) 
C:\Documents and Settings\Reanimator>If 1 NEQ 0 Exit /B 1 
C:\Documents and Settings\Reanimator>If 1 EQU 1 (
Echo. 
 Echo Модуль "CopyLog" вызвал исключение, работа скрипта прервана!  
 Exit  
) 
Модуль "CopyLog" вызвал исключение, работа скрипта прервана

Подскажите пожалуйста, в чем может быть ошибка?
Ответить

Вернуться в «Скриптовые языки администрирования Windows»