Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell
Резервное копирование — фундаментальная задача любого системного администратора. Потеря данных на сервере может обойтись компании в миллионы рублей, а восстановление без актуальной резервной копии нередко оказывается невозможным. Windows Server предоставляет встроенный инструмент Windows Server Backup и утилиту командной строки wbadmin.exe, которые позволяют настроить надёжное резервное копирование без стороннего ПО.
В этой статье мы подробно разберём установку компонента Windows Server Backup, все основные команды wbadmin, автоматизацию через PowerShell, резервное копирование System State, томов и отдельных папок, а также процедуру восстановления из резервной копии.
Установка Windows Server Backup
Компонент Windows Server Backup не устанавливается по умолчанию. Чтобы проверить его наличие и установить, используйте PowerShell:
# Проверка наличия компонента
Get-WindowsFeature Windows-Server-Backup
# Установка с включением всех подкомпонентов
Install-WindowsFeature Windows-Server-Backup -IncludeAllSubFeature
После установки в меню «Средства» (Tools) диспетчера сервера появится оснастка Windows Server Backup. Кроме графической консоли wbadmin.msc, вы получаете доступ к утилите wbadmin.exe и набору PowerShell-командлетов модуля WindowsServerBackup.
wbadmin.exe и PowerShell. Убедитесь, что компонент установлен, прежде чем настраивать задания.Основные команды wbadmin
Утилита wbadmin.exe — это основной инструмент командной строки для управления резервным копированием. Вот ключевые команды:
wbadmin start backup— запуск однократного резервного копированияwbadmin start systemstatebackup— резервное копирование System Statewbadmin start recovery— запуск восстановления из резервной копииwbadmin start systemstaterecovery— восстановление System Statewbadmin get versions— список доступных резервных копийwbadmin get items— содержимое конкретной резервной копииwbadmin get status— статус текущей операцииwbadmin delete backup— удаление старых резервных копийwbadmin enable backup— настройка расписания резервного копированияwbadmin disable backup— отключение расписания
Резервное копирование тома целиком
Самый распространённый сценарий — полное резервное копирование системного тома на внешний или сетевой диск. Команда для бэкапа тома C: на диск D:
wbadmin start backup -backupTarget:D: -include:C: -vssFull -quiet
Ключевые параметры:
-backupTarget— целевой диск или UNC-путь к сетевой папке-include— какие тома или папки включить в бэкап-vssFull— полная копия VSS (обновляет атрибуты архивации файлов)-vssCopy— копия VSS без изменения атрибутов (используйте, если запущено стороннее ПО для бэкапов)-quiet— подавление интерактивных запросов
Для бэкапа на сетевой ресурс с авторизацией:
wbadmin start backup -backupTarget:\\\\fileserver\backups -include:C: -user:DOMAIN\backupuser -password:P@ssw0rd -vssFull -quiet
System State: что это и как сохранить
System State — это специальный набор критически важных компонентов сервера. В зависимости от установленных ролей в него входят:
- Реестр Windows
- База данных Active Directory (
NTDS.DIT) — на контроллерах домена - Папка SYSVOL с групповыми политиками
- Сертификаты и база данных AD CS
- DNS-зоны (при интеграции с AD)
- Загрузочные файлы и метаданные IIS
- Информация кластера (если настроен)
# Резервная копия System State на диск E:
wbadmin start systemstatebackup -backupTarget:E: -quiet
# Резервная копия System State в сетевую папку
wbadmin start systemstatebackup -backupTarget:\\\\nas01\sysstate -quiet
Автоматизация бэкапов через PowerShell
Для автоматизации резервного копирования PowerShell предоставляет модуль WindowsServerBackup с набором командлетов. Вот пример скрипта, который создаёт политику бэкапа и настраивает расписание:
# Импорт модуля
Import-Module WindowsServerBackup
# Создание новой политики бэкапа
$policy = New-WBPolicy
# Добавление системного тома
$volume = Get-WBVolume -AllVolumes | Where-Object { $_.MountPath -eq "C:" }
Add-WBVolume -Policy $policy -Volume $volume
# Добавление System State
Add-WBSystemState -Policy $policy
# Указание целевого диска
$disk = Get-WBDisk | Where-Object { $_.DiskNumber -eq 1 }
$target = New-WBBackupTarget -Disk $disk
Add-WBBackupTarget -Policy $policy -Target $target
# Установка расписания (ежедневно в 02:00)
Set-WBSchedule -Policy $policy -Schedule 02:00
# Применение политики
Set-WBPolicy -Policy $policy -Force
Альтернативный подход — использование wbadmin.exe внутри PowerShell-скрипта с динамическим формированием пути:
# Скрипт backup_server.ps1
$path = "\\\\srvbak1\backup\srv01\"
[string]$date = Get-Date -Format 'yyyy-MM-dd'
$TargetUNC = $path + $date
# Создание папки для текущей даты
if (!(Test-Path -Path $TargetUNC)) {
New-Item -Path $TargetUNC -ItemType Directory
}
# Запуск бэкапа
$cmd = "wbadmin.exe START BACKUP -backupTarget:$TargetUNC -systemState -noverify -vssCopy -quiet"
Invoke-Expression $cmd
# Логирование
$logFile = "C:\Logs\backup_$(Get-Date -Format 'yyyyMMdd').log"
"Backup completed at $(Get-Date)" | Out-File $logFile -Append
Настройка расписания через Task Scheduler
Для регулярного автоматического запуска бэкап-скрипта создайте задание в планировщике задач:
# Создание триггера: вторник и пятница в 01:00
$trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Tuesday,Friday -At "01:00AM"
# Действие: запуск PowerShell-скрипта
$action = New-ScheduledTaskAction -Execute "PowerShell.exe" `
-Argument "-ExecutionPolicy Bypass -File C:\Scripts\backup_server.ps1"
# Регистрация задания от имени SYSTEM
Register-ScheduledTask -TaskName "ServerBackup_Weekly" `
-Trigger $trigger `
-User "NT AUTHORITY\SYSTEM" `
-Action $action `
-RunLevel Highest -Force
NT AUTHORITY\SYSTEM для запуска задания — она имеет все необходимые привилегии и не зависит от смены пароля администратора.Очистка старых резервных копий
Со временем резервные копии занимают значительное место на диске. Для управления хранилищем используйте следующие подходы:
# Удаление старых бэкапов, оставить последние 10 версий
wbadmin delete backup -keepVersions:10 -quiet
# Удаление конкретной версии по дате
wbadmin delete backup -version:03/20/2026-02:00 -quiet
Для сетевых хранилищ, где бэкапы сохраняются в папки по датам, используйте PowerShell для ротации:
# Удаление бэкапов старше 60 дней
$retentionDays = 60
$cutoffDate = (Get-Date).AddDays(-$retentionDays)
$backupRoot = "\\\\srvbak1\backup\srv01"
Get-ChildItem -Path $backupRoot -Directory |
Where-Object { $_.CreationTime -lt $cutoffDate } |
Remove-Item -Recurse -Force
Write-Host "Очистка завершена. Удалены бэкапы старше $retentionDays дней."
Восстановление из резервной копии
Восстановление — не менее важная часть стратегии бэкапирования. Начните с просмотра доступных версий:
# Список всех доступных резервных копий
wbadmin get versions
# Список бэкапов на конкретном целевом диске
wbadmin get versions -backupTarget:D:
# Просмотр содержимого конкретной версии
wbadmin get items -version:03/24/2026-02:00
Для восстановления тома или файлов:
# Восстановление тома
wbadmin start recovery -version:03/24/2026-02:00 -itemType:Volume -items:C: -recoveryTarget:D: -quiet
# Восстановление конкретной папки
wbadmin start recovery -version:03/24/2026-02:00 -itemType:File -items:"C:\Data\Projects" -recoveryTarget:D:\Restore -quiet
Восстановление System State и Active Directory
Восстановление System State на контроллере домена требует особой процедуры. Необходимо загрузить сервер в режиме DSRM (Directory Services Restore Mode):
# Переключение в DSRM
bcdedit /set safeboot dsrepair
shutdown /r /t 0
# После перезагрузки в DSRM — восстановление System State
wbadmin start systemstaterecovery -version:03/24/2026-02:00 -quiet
# Возврат в обычный режим после восстановления
bcdedit /deletevalue safeboot
shutdown /r /t 0
ntdsutil.Для авторитетного восстановления конкретного OU после загрузки System State:
ntdsutil
activate instance ntds
authoritative restore
restore subtree "OU=Users,DC=contoso,DC=com"
quit
quit
Мониторинг и проверка бэкапов
Настроенное резервное копирование бесполезно, если вы не проверяете его результаты. Вот PowerShell-скрипт для мониторинга:
# Проверка последнего бэкапа
$lastBackup = Get-WBSummary
Write-Host "Последний бэкап: $($lastBackup.LastSuccessfulBackupTime)"
Write-Host "Результат: $($lastBackup.LastBackupResultHR)"
Write-Host "Следующий запланированный: $($lastBackup.NextBackupTime)"
# Проверка на контроллерах домена — дата последнего бэкапа AD
repadmin /showbackup *
Для отправки уведомлений при сбое бэкапа можно проверять журнал событий:
# Поиск ошибок бэкапа в журнале за последние 24 часа
Get-WinEvent -FilterHashtable @{
LogName = 'Microsoft-Windows-Backup'
Level = 2 # Error
StartTime = (Get-Date).AddHours(-24)
} -ErrorAction SilentlyContinue |
Select-Object TimeCreated, Message |
Format-List
C:\Windows\Logs\WindowsServerBackup\. Периодически проверяйте их, чтобы обнаружить проблемы до того, как они станут критичными.Bare Metal Recovery: восстановление с нуля
Bare Metal Recovery (BMR) позволяет полностью восстановить сервер на новое оборудование — включая ОС, драйверы и данные. Для создания BMR-бэкапа:
# BMR-бэкап включает все критические тома
wbadmin start backup -backupTarget:D: -allCritical -vssFull -quiet
# Через PowerShell
$policy = New-WBPolicy
Add-WBBareMetalRecovery -Policy $policy
$target = New-WBBackupTarget -VolumePath "D:"
Add-WBBackupTarget -Policy $policy -Target $target
Set-WBPolicy -Policy $policy -Force
Для восстановления загрузитесь с установочного диска Windows Server, выберите «Восстановление системы» (Repair your computer) → «Устранение неполадок» → «Восстановление образа системы» (System Image Recovery), и укажите расположение резервной копии.
Шпаргалка: основные команды
# --- УСТАНОВКА ---
Install-WindowsFeature Windows-Server-Backup -IncludeAllSubFeature
# --- РЕЗЕРВНОЕ КОПИРОВАНИЕ ---
wbadmin start backup -backupTarget:D: -include:C: -vssFull -quiet
wbadmin start systemstatebackup -backupTarget:E: -quiet
wbadmin start backup -backupTarget:D: -allCritical -vssFull -quiet
# --- ПРОСМОТР ---
wbadmin get versions
wbadmin get items -version:03/24/2026-02:00
wbadmin get status
# --- ВОССТАНОВЛЕНИЕ ---
wbadmin start recovery -version:03/24/2026-02:00 -itemType:Volume -items:C: -recoveryTarget:D:
wbadmin start systemstaterecovery -version:03/24/2026-02:00
# --- ОЧИСТКА ---
wbadmin delete backup -keepVersions:10 -quiet
# --- МОНИТОРИНГ ---
Get-WBSummary
repadmin /showbackup *
Заключение
Встроенные инструменты Windows Server — wbadmin, Windows Server Backup и PowerShell-модуль WindowsServerBackup — обеспечивают надёжное резервное копирование без необходимости покупать сторонние решения. Ключевые принципы: автоматизируйте процесс через планировщик задач, храните копии на отдельном носителе или в сети, регулярно проверяйте результаты и периодически тестируйте восстановление.
Для контроллеров домена обязательно настройте бэкап System State и убедитесь, что он выполняется не реже раза в неделю. Для файловых серверов и серверов приложений используйте полное резервное копирование томов с ротацией старых копий. И помните: бэкап, который ни разу не тестировали на восстановление — это не бэкап, а надежда.
Официальная документация: Microsoft Learn — Windows Server, Microsoft Learn — PowerShell
Часто задаваемые вопросы
Что такое Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell?
Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell — это важный аспект системного администрирования, который позволяет настроить и оптимизировать работу IT-инфраструктуры. В данной статье подробно рассматриваются все ключевые моменты.
Как правильно настроить Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell?
Для корректной настройки Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell необходимо следовать пошаговой инструкции, представленной в статье выше. Важно учитывать особенности вашей инфраструктуры и требования безопасности.
Какие типичные ошибки возникают при работе с Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell?
Наиболее частые ошибки при работе с Резервное копирование Windows Server: wbadmin, Windows Server Backup и PowerShell: некорректная конфигурация, недостаточные права доступа и несовместимость версий. Рекомендуем обратиться к специалистам ITFresh для профессиональной настройки.
ООО «АйТи Фреш» берёт ИТ на себя
Мы настроим надёжное резервное копирование ваших серверов — от ежедневных бэкапов System State и томов до полной стратегии Bare Metal Recovery. Проверка, мониторинг, ротация и тестовое восстановление — всё под ключ. Напишите нам в Telegram или позвоните, и забудьте о страхе потери данных.