Ежедневный бэкап + ограниченние на кол-во архивов

Обсуждение программы nnBackup

Re: Ежедневный бэкап + ограниченние на кол-во архивов

Postby elos » Thu, 30 Sep 2010, 17:16

надо значок косвенного вызова @ не забывать
Code: Select all
... -dx @"C:\Program Files\nnBackup\backuplist.txt" ...


И не забывать на всякий случай про понятия абсолютных и относительных путей. В nncron можно просто сделать START-APP:, а можно предварительно добавить StartIn: ...

Так как лично я с путями с пробелами не работаю и избегаю их, то если кавычки не пройдут - вспомни про переменные %QUOTE% и %FOLDER-APP-DATA%.
elos
 
Posts: 667
Joined: Tue, 25 Apr 2006, 11:15

Re: Ежедневный бэкап + ограниченние на кол-во архивов

Postby papageorge3 » Mon, 04 Oct 2010, 16:03

не нашел что такое "абсолютный\относительный путь", поясните пожалуйста чем они отличаются.
если в эту строчку ... -dx @"C:\Program Files\nnBackup\backuplist.txt" ... добавлять @, бэкап не выполняется, пишет ошибку 123 - неверно задано имя файла\папки\тома.
И не забывать на всякий случай про понятия абсолютных и относительных путей. В nncron можно просто сделать START-APP:, а можно предварительно добавить StartIn: ...

это что, для запуска nnBackup-а? или для запуска файла TXT в котрый я забил пути к папкам?
кстати: правильно ли я записал данные в этот файл? весь текст файла (backuplist.txt) выглядит так
%QUOTE%D:\рабочий SOFT\1с%QUOTE%
%QUOTE%D:\рабочий SOFT\Работа с терминалами%QUOTE%


заменил кавычка на %QUOTE% как Вы и говорили

попробовал такую строку:
C:\Program Files\nnBackup\nnbackup.exe ver -n 5 -i "D:\рабочий SOFT" -o d:\backup\ -s -e -v -c -dx@backuplist.txt -sdn %DD%-%MM%-%YYYY% -nocopy
Вышла ошибка:
Mo 04.Oct.2010 16:56 ERROR: Invalid command line parameter (-2003 : )
в nnCron-е папка назанчения: C:\Program Files\nnBackup. там и находится этот .txt-шник

И ещё я не совсем понял, что это %FOLDER-APP-DATA%? в хелпе нашел, но всё равно не понял для чего эта команда :oops:
papageorge3
 
Posts: 11
Joined: Thu, 30 Sep 2010, 09:56

Re: Ежедневный бэкап + ограниченние на кол-во архивов

Postby elos » Tue, 05 Oct 2010, 11:42

Я не сильно большой учитель и объяснять толком у меня не всегда получается, поэтому далее только примеры и цитаты...
Обратите, пожалуйста, внимание: если в созданной вами маске содержится символ '\' (обратный слеш), то она сравнивается не с именем каталога, а с относительным путем, отсчитываемым от исходного каталога!
Что считать исходным каталогом - каталог, в котором стартует команда для nnbackup, или папка каталого-источника - решай сам, глядя на примеры. (Для данной цитаты - это папка источника...)

Далее обращаем внимание, в какой папке мы находимся в момент запуска командной строки. nnbackup у меня прописан в PATH, поэтому я и не указываю путь его расположения. Далее: сначала я воспроизвёл всё в папках с английскими символами и без пробелов - пока не получилось (а вначале не получилось! начал вчитываться в помощь - ну такой автор не будет же просто так писать ключ, который не работает. Вначале всегда надо пытаться понять, где сам "тормозишь" и не видишь очевидного!), и только потом перешёл на твои пути. Папку d:\backup создал предварительно руками.

Посмотрим (с путями и без), что я напихал в каталоги:
Code: Select all
D:\>dir "D:\рабочий SOFT" /s/b
D:\рабочий SOFT\1c
D:\рабочий SOFT\exclude.txt
D:\рабочий SOFT\VER_TEST
D:\рабочий SOFT\Windows_7_Resource_Kit.pdf
D:\рабочий SOFT\Работа с терминалами
D:\рабочий SOFT\1c\F2_Schem.pdf
D:\рабочий SOFT\VER_TEST\gozosioda1.mpg
D:\рабочий SOFT\Работа с терминалами\L2_Schem.pdf

D:\>dir "D:\рабочий SOFT" /b
1c
exclude.txt
VER_TEST
Windows_7_Resource_Kit.pdf
Работа с терминалами


Содержимое exclude.txt:
Code: Select all
1c
VER_TEST
Работа с терминалами
Если сюда впихнуть полные пути (я их для себя называю иногда абсолютными - может это и неправильно) - тогда ключ -dx работать не будет, так как "включится" механизм относительных путей (смотри цитату вверху).

Теперь смотрим, как влияют прописи путей файла исключений и путей запуска nnbackup...

Code: Select all
D:\рабочий SOFT>nnbackup.exe ver -n 5 -i "D:\рабочий SOFT" -o d:\backup -s -e -v -c -dx @"D:\рабочий SOFT\exclude.txt" -sdn %DD%-%MM%-%YYYY% -nocopy
Tu 05.Oct.2010 11:40 ERROR: Invalid command line parameter (2 : Не удается найти указанный файл. )
Для файла исключений был указан полный путь, что привело к его "ненахождению" в папке источника (если правильно рассуждаю - команда ищет его тогда в пути типа "D:\рабочий SOFT\рабочий SOFT\exclude.txt").

Исправляем путь файла исключений:
Code: Select all
D:\рабочий SOFT>nnbackup.exe ver -n 5 -i "D:\рабочий SOFT" -o d:\backup -s -e -v -c -dx @exclude.txt -sdn %DD%-%MM%-%YYYY% -nocopy
nnBackup. V 3.01 RC10 Build 140 2010-01-28 14:27
Copyright (C) 2001-2010 nnSoft. nemtsev@nncron.ru
Tu 05.Oct.2010 11:40 Start backup
Tu 05.Oct.2010 11:40 D:\рабочий SOFT\exclude.txt
Tu 05.Oct.2010 11:40 D:\рабочий SOFT\Windows_7_Resource_Kit.pdf
Tu 05.Oct.2010 11:40 Stop backup
Ты глянь, всё работает!

Теперь смотрим, что будет если сам nnbackup запускать из разных папок (то есть относительно папки источника - или из неё, или вне её):
Code: Select all
D:\BACKUP>nnbackup.exe ver -n 5 -i "D:\рабочий SOFT" -o d:\backup -s -e -v -c -dx @exclude.txt -sdn %DD%-%MM%-%YYYY%
nnBackup. V 3.01 RC10 Build 140 2010-01-28 14:27
Copyright (C) 2001-2010 nnSoft. nemtsev@nncron.ru
Tu 05.Oct.2010 11:42 Start backup
Tu 05.Oct.2010 11:42 D:\рабочий SOFT\exclude.txt
Tu 05.Oct.2010 11:42 D:\рабочий SOFT\Windows_7_Resource_Kit.pdf
Tu 05.Oct.2010 11:42 D:\рабочий SOFT\1c\F2_Schem.pdf
Tu 05.Oct.2010 11:42 D:\рабочий SOFT\VER_TEST\Descript.ion
Tu 05.Oct.2010 11:42 D:\рабочий SOFT\VER_TEST\gozosioda1.mpg
Tu 05.Oct.2010 11:42 D:\рабочий SOFT\Работа с терминалами\L2_Schem.pdf
Tu 05.Oct.2010 11:42 Stop backup
Запустили команду извне, соответственно путь файла исключения ищется там, откуда запускается команда - в D:\BACKUP его, естественно, нет, исключения "не отрабатываются". Имеем полное копирование папки-источника.

Теперь запустим команду в папке источнике (в которой лежит файл исключений):
Code: Select all
D:\рабочий SOFT>nnbackup.exe ver -n 5 -i "D:\рабочий SOFT" -o d:\backup -s -e -v -c -dx @exclude.txt -sdn %DD%-%MM%-%YYYY%
nnBackup. V 3.01 RC10 Build 140 2010-01-28 14:27
Copyright (C) 2001-2010 nnSoft. nemtsev@nncron.ru
Tu 05.Oct.2010 11:43 Start backup
Tu 05.Oct.2010 11:43 D:\рабочий SOFT\exclude.txt
Tu 05.Oct.2010 11:43 D:\рабочий SOFT\Windows_7_Resource_Kit.pdf
Tu 05.Oct.2010 11:43 Stop backup
Ты глянь, опять работает.

Если бы пришлось запускать всё это из-под nncron, то это выглядело бы у меня так:
Code: Select all
StartIn: "D:\рабочий SOFT"
START-APP: nnbackup.exe ver -n 5 -i "D:\рабочий SOFT" -o d:\backup -s -e -v -c -dx @exclude.txt -sdn %DD%-%MM%-%YYYY%


На всякий случай не забываем, что длинные строке в блоке кода на форуме имеют свойство "заворачиваться"... Совсем забыл, что папку D:\рабочий SOFT\VER_TEST я создавал, чтобы показать, что она копируется. Так как на автомате запихнул в файл исключений и уже столько написал - прошу простить, переделывать уже не буду примеры.
elos
 
Posts: 667
Joined: Tue, 25 Apr 2006, 11:15

Re: Ежедневный бэкап + ограниченние на кол-во архивов

Postby elos » Tue, 05 Oct 2010, 11:56

C:\Program Files и %FOLDER-APP-DATA% - это одно и тоже, если не ошибаюсь.

Я ярый противник путей с пробелами (да, удобно написать в сию минуту, но разгребать потом проблемы с применением кавычек, где можно обойтись без них - не по мне). Применение такой подстановки (возможно) может решить проблему с кавычками. Сам не пробовал, говорю "умозрительно".

Некоторым людям для некоторых системных папок может потребоваться переназначение расположения (на другой диск, например, личной папки, тогда использование %FOLDER-PERSONAL% поможет не думать об истинных путях) твикерами или штатными средствами (как в w2k).
elos
 
Posts: 667
Joined: Tue, 25 Apr 2006, 11:15

Re: Ежедневный бэкап + ограниченние на кол-во архивов

Postby papageorge3 » Wed, 06 Oct 2010, 10:50

Спасибо, Elos. Вы прекрасно объясняете :) У меня всё заработало
papageorge3
 
Posts: 11
Joined: Thu, 30 Sep 2010, 09:56

Previous

Return to nnBackup forum (Russian)

Who is online

Users browsing this forum: No registered users and 2 guests