Может кому пригодится для своих программ или скриптов...
HoboCopy, так же делает теневое копирование...
Ниже примерочный-рабочий код, дальше сами добавляйте что надо
@echo off ::hobocopy копирует все фалы и папки в каталоге (config), /recursive ключ обозначает копирование вложенных папок hobocopy /recursive /full /y %windir%\system32\config\ %systemdrive%\Backup\config\%date%\ ::hobocopy копирует файл NTUSER.DAT из каталога пользователя %username%, \ NTUSER.DAT пробел обязательно, между слешем и файлом hobocopy /y %systemdrive%\Docume~1\%username%\ %systemdrive%\Backup\%username%\%date%\ NTUSER.DAT ::reg export импортирует рег файл с данными по ip адрессам mkdir %systemdrive%\Backup\tcpip\%date%\ reg export "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters\Interfaces" %systemdrive%\Backup\tcpip\%date%\Tcpip.reg
Здесь сама программа и скрипт к ней
http://rghost.ru/53678509
Отредактировано Incognito (01.04.2014 15:46:14)
simplix & Incognito
Потуги радуют! Обсуждайте результаты, но не бейте друг друга...
Скрипт bat для определения ID пользователя! Windows 7, пример S-1-5-21-776561741-261903793-682003330-500
@echo off For /F "tokens=* delims=" %%s In ('whoami /user ^|Find /i "%username%"') Do Set sid1=%%s Call Set sid1=%%sid1:%COMPUTERNAME%\%username%=%% Set sid1=%sid1: =% Echo %sid1%
Скрипт bat для определения ID пользователя! Windows XP, пример S-1-5-21-776561741-261903793-682003330-500
@echo off setlocal set "exec=wmic useraccount where name="%username%" get sid /value" for /f %%i in (' "%exec%" ') do 1>nul set "%%i" echo %sid%
В жизни все бывает, пригодится!!!
на чем написана программа?
Добрый день, как пользоваться программой, если резервную копию нужно сохранять в сети, или наоборот.
Добрый день!
А можно в Exclude записать папку по относительному пути с шаблоном в середине
Например я написал такой конфиг для проверки:
[Config1] Snapshots = 3 Source = c:\Users\User1 Backup = h:\Backups\User1 Exclude = .\*\desktop.ini Exclude = c:\Users\User1\*\desktop.ini Exclude = *.lnk Exclude = default.rdp
И вообще непонятно как работает Exclude.
Этот конфиг скопировал всё. Ни одна из строчек Exclude не сработала. И lnk попали в копию и default.rdp и desktop.ini.
Версия программы 1.4
Отредактировано sansoft (06.06.2014 14:51:00)
Давайте маски прикрутим? Удобно ведь. Зачем копировать временные файлы *.tmp;*bak;~*.docx и т.п.
И еще почему-то в пути Source не берет UNC пути. Ведь я так понял алгоритм сначала копирует на локальный хард, а потом внутри, при последующем копировании делает хардлинки. Т.е. источник вполне может быть любой. А вот папка архива должна быть только локальная. Я проверил, если замапить сетевую папку (net use x: \\server\share) - копирование с неё идет вполне нормально.
Новый конфиг мой:
[Config1] Snapshots = 3 Source = c:\Users\User1 Backup = h:\Backups\User1 Exclude = desktop.ini;default.rdp
файлы desktop.ini;default.rdp всё равно скопировались. Во всех папках. Правда они имеют атрибут hidden и system
Может регистр символов имеет значение в Exclude?
UPD: Догадался кажись.
Exclude = Desktop\desktop.ini;Documents\default.rdp - сработало.
т.е. в Exclude можно указать только конкретный файл в конкретной папке.
UPD2:
Закинул 100 руб на проект. Яндекс деньги не имею, пришлось платить с карточки. Неудобно. Напиши еще QIWI-кошелек свой на главной странице
Отредактировано sansoft (07.06.2014 12:42:05)
sansoft
В программе вся базовая и необходимая функциональность уже реализована, однако её продажи вообще не пошли, так что на данный момент времени на доработку не предвидится. Мне кажется, что исключать имеет смысл только крупные файлы. Мелкие можно копировать, ведь скопированы они будут всего раз, или заранее удалить, если они совсем не нужны. Спасибо за перечисление, кстати с карточки никакая дополнительная комиссия не списывается, а кошелька QIWI у меня нет.
По поводу сетевых путей - да, нужно монтировать их под букву, только затем копировать. Это связано с тем, что программа сначала делает теневую копию тома, а потом работает только с ней, и с сетевыми ресурсами это сделать невозможно.
есть еще один вопрос. Допустим в Config2 указана папка которая на момент бэкапа не существует. Config3 и так далее уже не отрабатываются?
Просто я не всегда точно могу знать, будет папка существовать или нет в момент бэкапа. И хотелось бы, если она есть - делать копию. А если нет - просто пропускать конфиг. Иначе придется писать бат-файл, который бы генерил ini файл перед запуском LightBackup. Оно конечно можно сделать, но bat писать уж очень некомфортно
UPD: Вопрос снят. Написал таки bat
Отредактировано sansoft (11.06.2014 18:47:16)
simplix
Добрый день!
По моему вопросу ничего не можете подсказать? Программа работает, но уж очень медленно.
gmk57
Мне особо нечего вам ответить. Программа использует системные функции для определения атрибутов файлов и их копирования, я не могу ускорить это время. Возможно файлов на винчестере назначения слишком много и задержки происходят из-за этого, попробуйте хранить не так много копий. Индикация не предусмотрена, так как время копирования нельзя предсказать. Во время копирования не выключайте компьютер. Выключение по окончании и другие команды можно прописать в командном файле.
Можно ли как-то сообразить чтобы файлы бэкапились с атрибутом "только для чтения"?
Выявилась проблема с программкой - пути длиннее MAX_PATH ей не по зубам. Про этом файл не скопировался в точку назначения, а в логах всё чисто. Т.е. программа даже не заметила, что что-то пропустила. При этом упоминавшийся тут HoboCopy сожрал и не поперхнулся. Система Win7 x86. Прошу заметить, что это баг, а не фича, так что имеет смысл пофиксить. С уважением, Дмитрий.
simplix
Поддерживаются пути файловой системы любой длины и любой кодировки.
Добавлена возможность резервного копирования со съёмных носителей
Бэкап флешки был создан по пути "F:\РњРѕРё документы\system\флешка4.0\", вместо "F:\Мои документы\system\флешка4.0\"
win7x86 В других программах проблем с кодировками вроде нет.
Нашел чудовищные баги:
1. Уберите пожалуйста из стандартных настроек путь system32\config. Ваша программа удалила почти все мои файлы оттуда. Я их восстановил из копии, но перезагружаться теперь страшно =/
2. Копируются не все файлы почему-то.
3. В исходной папке (Source) создается пустая папка с точной копией имени, но пустая. И в Backup содержимое этой папки тоже не попадает.
Я пробовал несколько раз и проблемы 2 и 3 воспроизводятся.
Могу дать вам доступ по TeamViewer для отладки.
Но хотя бы удалите из демо-настроек путь system32\config, чтобы другие люди не пострадали
Добавление:
№3 перестала воспроизводиться. Но №2 стабильно воспроизводится: https://www.dropbox.com/s/8wetyed2391rf … %D0%B0.JPG
Отредактировано sulfur (31.07.2014 11:08:54)
MBTY, что с ним не так? Могу переделать
Благодарен! С Огромным Уважением!!!
Иногда прога немертво виснет. Судя по логам процесс-монитора: впадает в бесконечный цикл на одной и той же папке. Есть предположение что связано это с длиной пути больше чем 256 символов. А такие файлы и папки есть.
Всё бы ничего, если бы прога ругалась на такие файлы в лог и шла дальше. Ведь теневая копия создана и можно работать. Но лучше всё таки починить модуль копирования для фалов с длиной пути больше чем 256 символов.
Фрагмент лога процесс-монитора:
Удалено из-за содержания конфиденциальной информации.
и это только за 0.02 секунды! А висит оно так каждый день с 20 вечера до 8 утра.
Помогите решить проблему с зависанием. Лицензия оплачена
Отредактировано simplix (06.10.2014 09:29:15)
sansoft
У меня проблема не воспроизводится, длинные пути копирует отлично. Напишите мне в ПМ, в какое время можно будет подключиться по TeamViewer, чтобы посмотреть на ваш компьютер и выяснить возможную причину.
Новая версия LightBackup 1.5
Добавлена поддержка очень длинных путей.
Добавлена возможность сохранять права доступа.
Чтобы сохранить права доступа, нужно положить рядом с LightBackup.exe файл SetACL.exe, тогда рядом с логом каждой резервной копии будет создана резервная копия прав доступа каждого файла. Пример восстановления прав после восстановления резервной копии нужно прочитать здесь, где "dummy entry" нужно заменить на источник (параметр Source в LightBackup.ini). Обратите внимание, что в зависимости от количества файлов в источнике резервная копия прав может занимать много места.
simplix
Скачал себе вашу программу, так и не смог разобраться как скопировать Файл NTUSER.DAT из директории C:\Documents and Settings\Admin\
Прошу помощи! Спасибо
Программа копирует директории, а не файлы. В данном случае нужно указать:
Source = C:\Documents and Settings\Admin\
и каталог назначения в параметре Backup, куда сохранять папку.