3

На машинах с Windows 2000 и XP я имел обыкновение делать следующее:

ntbackup backup systemstate c: /f e:\backups\machineName\machineName-full+systemstate_200101206.bkf

Это дало мне полную резервную копию системы, которую я мог использовать для восстановления системы после установки базовой ОС. В Windows 7 есть отличная утилита для регулярного резервного копирования с оповещениями и тому подобным. Кажется, он не поддерживает командную строку. Я хотел бы иметь решение для резервного копирования для моих систем Windwos 7, которое имеет следующие функции:

  • Это бесплатно
  • Является открытым исходным кодом (предпочтительно)
  • Работает, пока система загружается и оставляет систему работоспособной (clonezilla отлично подходит для автономного резервного копирования, и я тоже этим пользуюсь)
  • Дает мне резервную копию, которая подходит для полного или частичного восстановления системы (исключая большинство программ обработки изображений, даже если они могут работать, пока система загружается через своего рода теневую копию voodoo)
  • Может работать через командную строку
  • Сжатие было бы неплохо, способность передавать данные по конвейеру была бы лучше.

2 ответа2

1

Я не уверен, что вы подразумеваете под этим:

Дает мне резервную копию, которая подходит для полного или частичного восстановления системы (исключая большинство программ обработки изображений, даже если они могут работать, пока система загружается через своего рода теневую копию voodoo)

Но я могу дать почти все остальное, что вы просили с помощью VShadow.exe (находится в Windows SDK) и strarc.exe. Strarc является открытым исходным кодом, хотя я никогда не удосужился найти его источник.

Вот рецепт:

  1. Создайте теневую копию, чтобы получить согласованное состояние. Для этого запустите VShadow.exe -p volumename где volumename -тома - это том, который вы хотите сделать резервную копию. Примерами являются C:\ , C:\Mounts\D (если это точка монтирования для тома) или \\?\Volume{edbed95e-7e8d-11d8-9d01-505054503030} для постоянного имени тома. VShadow сделает свое дело, но в конце он выдаст вам строку с SNAPSHOT ID . Возьмите GUID от этого.
  2. Присвойте букву диска снимку. Запустите VShadow.exe -el=ShadowCopyId,UnusedDriveLetter: где ShadowCopyId - это идентификатор моментального снимка, полученный на последнем шаге. UnusedDriveLetter - это, конечно, неиспользуемая буква диска.
  3. Выполните резервное копирование. Запустите strarc -cjd:UnusedDriveLetter:\ 1>MyBackup.strarc 2>MyBackup.err.txt . UnusedDriveLetter должен быть таким же, как на последнем шаге, так как это говорит strarc, с чего начать резервное копирование.
  4. Восстановите резервную копию. Запустите strarc -xjd:Destination MyBackup.strarc где Destination очевиден.

strarc не сжимает свои файлы, поэтому, если вы хотите это сделать, передайте свои выходные данные в вашу любимую программу сжатия потоков, такую как bzip2 или gzip. Это опция -z позволяет вам указать.

Одно из предостережений заключается в том, что Microsoft считает, что опция -p VShadow для предоставления снимка доступна только для операционных систем серверного класса. Я обнаружил, что это на самом деле неправильно, поскольку мне удалось создать букву диска с параметром -p в Windows 7 Enterprise. Это работало отлично.

Обратите внимание, что strarc использует API резервного копирования NT (и поддерживает очень длинные имена путей NT), но не включает SeBackupPrivilege. Это означает, что вы можете создавать резервные копии только тех вещей, к которым у вас есть доступ (и вы делаете, верно? Вы администратор, верно?). Вы можете заставить это с открытым исходным кодом ProcessHacker; или, так как это с открытым исходным кодом, вы можете добавить опцию, чтобы включить SeBackupPrivilege. Если вы делаете последнее, я призываю вас поделиться. :)

Рекомендации:

1

Резервное копирование и восстановление Windows может выполнять полное резервное копирование образа во время работы машины. Образы можно восстановить с помощью инструментов восстановления установочного диска Windows. Резервные копии сжимаются, и вы можете выбрать локальный диск или сетевой ресурс для резервного копирования.

Инструментом резервного копирования можно управлять из командной строки с помощью wbadmin.exe. Это работает как для клиентских операционных систем (Windows 7, Windows Vista), так и для серверных операционных систем (Server 2008, Server 2008 R2). Основные команды следующие:

START BACKUP              -- Runs a one-time backup.
STOP JOB                  -- Stops the currently running backup or recovery
                             operation.
GET VERSIONS              -- List details of backups recoverable from a
                             specified location.
GET ITEMS                 -- Lists items contained in a backup.
GET STATUS                -- Reports the status of the currently running
                             operation.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .