[identity profile] yesaul.livejournal.com posting in [community profile] useful_faq

Задачка: есть файловый архив (около 20 тыс. файлов), который надо периодически архивировать, то есть переписывать его в текущем состоянии на резервный диск. Переписывать целиком не хочется, потому что от раза к разу в нём изменяется от силы 5% файлов. Но и запоминать, какие именно изменились - невозможно.

Хорошо бы иметь программку, чтобы сравнила текущую версию с архивной, нашла отличающиеся файлы, и тогда только их и переписать, а остальные не трогать.

Спасибо заранее!

Date: 2015-03-27 06:40 pm (UTC)

Date: 2015-03-27 06:52 pm (UTC)
From: [identity profile] shlasasha.livejournal.com
xcopy C:\utils\* D:\Backup\utils /m /s

Date: 2015-03-27 06:53 pm (UTC)
From: [identity profile] stanislav-v-l.livejournal.com
Какая операционка ? Время модификации файла имеется, корректно ? Тогда архивацию делает простейший скрипт: для каждого файла из списка сравниваем время его модификации с временем модификации файла-флажка (обновляемого скриптом в конце работы), если оно больше - файл включается в список на архивацию.
А вообще, систем архивирования - их же сотни, на любой вкус...

Date: 2015-03-28 02:35 pm (UTC)
From: [identity profile] stanislav-v-l.livejournal.com
Понимаю. Поэтому у Вас 2 варианта: либо скрипт Вам пишет за стакан знакомый админ, либо ищите программу резервного копирования (а не сравнения файлов) с нужными Вам функциями. Как Вы понимаете, задача Ваша оригинальностью не выделяется, так что 90% программ смогут Вас удовлетворить.
Называется это - полный бэкап (типо раз в месяц делать) и инкрементальный (каждый день) - только файлы, изменившиеся после предыдущего бэкапа.
Собственно, в любой уважающей себя ОС такие средства штатно есть, другое дело что штатные могут быть недостаточно удобны.

Date: 2015-03-27 06:54 pm (UTC)
From: [identity profile] dr-trans.livejournal.com
Total Commander - Сравнить каталоги ...
Я так постоянно делаю бэкап на внешний диск.

Date: 2015-03-27 07:20 pm (UTC)
From: [identity profile] dr-trans.livejournal.com
У меня все архивы на отдельном диске на компе, допустим, на диске F.
Подрубаем внешний (H). И просто сравниваем диски F и H со всеми подкаталогами.
Edited Date: 2015-03-27 07:21 pm (UTC)

Date: 2015-03-27 09:07 pm (UTC)
From: [identity profile] eugine74.livejournal.com
Хм, попробовал. Высветил он мне красным файлы в каталоге, отличающиеся по дате (не по размеру). Ну и всё, чоделить дальше - непонятно)

Date: 2015-03-27 09:48 pm (UTC)
From: [identity profile] dr-trans.livejournal.com
Там надо поиграть с галочками наверху. По первому разу возможно несовпадение времени файлов... перевод стрелок, то-се... перезаписать старые файлы... если они без изменений, то они просто перезапишутся с синхронизацией атрибутов. Дальше будут синхронищироваться только новые файлы. Вот мои галочки:

Image
Edited Date: 2015-03-27 10:02 pm (UTC)

Date: 2015-03-27 07:32 pm (UTC)
From: [identity profile] alexcore.livejournal.com
плюсую. через тотал эта операция успешно и быстро делается, в т.ч. с папками на ftp

Date: 2015-03-27 08:02 pm (UTC)
From: [identity profile] dr-trans.livejournal.com
Многолетний опыт подтверждает.
Кроме того, Тотал удаляет пустые папки -- там есть птичка. Я ж могу на основной машине менять структуру каталога. И он следит, чтобы в бэкапе не скапливались старые пустые папки.

Date: 2015-03-27 06:55 pm (UTC)
From: [identity profile] dr-trans.livejournal.com
C:\Users\Админ>xcopy /?
Копирование файлов и структур каталогов.

XCOPY источник [целевой_объект] [/A | /M] [/D[:дата]] [/P] [/S [/E]] [/V] [/W]
[/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
[/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z] [/B]
[/EXCLUDE:файл1[+файл2][+файл3]...]

источник Копируемые файлы.
целевой_объект Расположение или имена новых файлов.
/A Копирование только файлов с установленным архивным атрибутом;
сам атрибут при этом не изменяется.
/M Копирование только файлов с установленным архивным атрибутом;
после копирования атрибут снимается.
/D:m-d-y Копирование файлов, измененных не ранее указанной даты.
Если дата не указана, заменяются только конечные файлы,
более старые, чем исходные.
/EXCLUDE:файл1[+файл2][+файл3]...
Список файлов, содержащих строки. Каждая строка должна
располагаться в отдельной строке. Если какая-либо из строк
совпадает с любой частью абсолютного пути к копируемому файлу,
такой файл исключается из операции копирования. Например,
указав строку \obj\ или .obj, можно исключить все файлы из
папки obj или все файлы с расширением OBJ соответственно.
/P Вывод запросов перед созданием каждого нового файла.
/S Копирование только непустых каталогов с подкаталогами.
/E Копирование каталогов с подкаталогами, включая пустые.
Эквивалентен сочетанию ключей /S /E. Совместим с ключом /T.
/V Проверка размера каждого нового файла.
/W Вывод запроса на нажатие клавиши перед копированием.
/C Продолжение копирования вне зависимости от наличия ошибок.
/I Если целевой объект не существует и копируется несколько
файлов, считается, что целевой объект задает каталог.
/Q Запрет вывода имен копируемых файлов.
/F Вывод полных имен исходных и целевых файлов.
/L Вывод имен копируемых файлов.
/G Копирование зашифрованных файлов в целевой каталог, не
поддерживающий шифрование.
/H Копирование, среди прочих, скрытых и системных файлов.
/R Перезапись файлов, предназначенных только для чтения.
/T Создание структуры каталогов без копирования файлов. Пустые
каталоги и подкаталоги не включаются в процесс копирования. Для
создания пустых каталогов и подкаталогов используйте сочетание
ключей /T /E.
/U Копирование только файлов, уже имеющихся в целевом каталоге.
/K Копирование атрибутов. При использовании команды XСOPY обычно
сбрасываются атрибуты "Только для чтения".
/N Использование коротких имен при копировании.
/O Копирование сведений о владельце и данных ACL.
/X Копирование параметров аудита файлов (подразумевает
ключ /O).
/Y Подавление запроса подтверждения на перезапись существующего
целевого файла.
/-Y Запрос подтверждения на перезапись существующего целевого
файла.
/Z Копирование сетевых файлов с возобновлением.
/B Копирование символической ссылки вместо ее целевого объекта.
/J Копирование с использованием небуферизованного ввода/вывода.
Рекомендуется для очень больших файлов.

Ключ /Y можно установить через переменную среды COPYCMD.
Ключ /-Y командной строки переопределяет такую установку.

Date: 2015-03-27 07:05 pm (UTC)
From: [identity profile] alex52.livejournal.com
Second Copy
сидит в tray, всё делает сама, например, синхронизирует один раз в сутки, ну или как хозяин настроит.
Пользуюсь несколько лет, не нарадуюсь. Программа платная, но...

Date: 2015-03-27 07:11 pm (UTC)
ext_1775189: Bezenchuk (Bezenchuk)
From: [identity profile] spelller.livejournal.com
WinBackup, чего уж проще.

Date: 2015-03-28 01:57 pm (UTC)
ext_1775189: Bezenchuk (Bezenchuk)
From: [identity profile] spelller.livejournal.com
Или вообще robocopy.exe (в винде, начиная с, кажется, 7-ки, сия утилита штатно имеется).

Date: 2015-03-27 07:13 pm (UTC)
From: [identity profile] fern-olodh.livejournal.com
Гуглите по словам «инкрементальный бэкап» и вашей операционке.

Date: 2015-03-27 08:53 pm (UTC)
From: [identity profile] fern-olodh.livejournal.com
http://habrahabr.ru/post/136785/
Ссылки на программы в которых надо пару раз тыцнуть мышкой.

Date: 2015-03-27 08:58 pm (UTC)
From: [identity profile] fern-olodh.livejournal.com
Ну просто вы испугались двух страшных слов, а на самом деле есть куча программ которые в несколько кликов вам это будут делать.

Date: 2015-03-27 07:16 pm (UTC)
From: [identity profile] maxim-vk.livejournal.com
Если ОС Windows, то обратите внимание на LightBackup (https://lightbackup.com/)

Date: 2015-03-27 08:51 pm (UTC)
From: [identity profile] eugine74.livejournal.com
утилита ICE Mirror
http://www.ice-graphics.com/ICEMirror/IndexR.html

Date: 2015-03-27 09:33 pm (UTC)
From: [identity profile] arachanski.livejournal.com
Beyond Compare, для сравнения папок-файлов это самое лучшее.

Date: 2015-03-29 02:49 pm (UTC)
From: [identity profile] alfare.livejournal.com
Да! Выручала меня очень здорово, когда десятки тысяч файлов, и есть сомнения, что они идентичны, и так далее...

Date: 2015-03-27 11:34 pm (UTC)
From: [identity profile] karpion.livejournal.com
Любая система архивирования (не путать с архиваторами типа Zip, Rar и им подобными). Начните с Bacula (https://ru.wikipedia.org/wiki/Bacula).

Date: 2015-03-29 01:47 pm (UTC)
From: [identity profile] alex-djk1.livejournal.com
У меня ЭТО делает 7зип. Первого числа создается полный архив, в остальные 29 дней месяца (или сколько там) - диф. архив, то есть только те, которые с начала месяца поменялись. Заморочек с датой нет, поэтому факт изменения по моему на основе даты выясняется.
Если надо ТОЧНо знать про изменения - md5deep, скрипт на руби (или еще на чем) и архиватор по вкусу.