控制面板中的快照固然有用,但快照和服务器位于同一个平台上。Windows Server Backup(Windows Server 备份)内置于所有版本的 Windows Server,可以按计划备份整台服务器或指定文件夹,保留多个版本,并能还原单个文件、文件夹乃至整个系统。本文介绍如何安装该功能,如何通过图形界面和 wbadmin 执行定时备份与一次性备份,如何还原文件,以及如何把备份复制到服务器之外。
在服务器管理器中选择添加角色和功能(Add roles and features),一直点到功能(Features)页面,勾选 Windows Server 备份(Windows Server Backup);也可以以管理员身份在 PowerShell 中执行:
Install-WindowsFeature Windows-Server-Backup -IncludeManagementTools
Get-WindowsFeature Windows-Server-Backup
运行 wbadmin.msc 打开管理界面,命令行工具为 wbadmin。
| 备份目标 | 保留版本数 | 说明 |
|---|---|---|
| 专用备份磁盘 | 多个(空间不足时自动删除最旧的版本) | 推荐。该磁盘会被格式化,专门用于存放备份。 |
| 其他磁盘上的卷(如 D:) | 若干个 | 已有数据盘时最方便;但会与业务共用磁盘 I/O。 |
| 网络共享文件夹 | 仅保留最新一次备份 | 每次备份都会覆盖上一次的备份;共享文件夹应放在内网中,切勿将 SMB 暴露到公网。 |
如果云服务器只有一块磁盘,请先添加一块数据盘;或者把指定文件夹备份到本地卷,再按步骤 6 的方法复制到服务器之外。
# List disks and volumes Windows Server Backup can use
wbadmin get disks
# Full server backup (system, boot and all critical volumes) to drive E:
wbadmin start backup -backupTarget:E: -allCritical -vssFull -quiet
# Only selected folders
wbadmin start backup -backupTarget:E: -include:"C:\inetpub,C:\Data" -quiet
-allCritical 包含裸机恢复所需的全部内容。-vssFull 会把应用程序文件(如 SQL Server 或 Exchange)标记为已备份;如果同一应用程序还由其他备份工具备份,请改用 -vssCopy。
在 wbadmin.msc 中点击备份计划(Backup Schedule),选择整个服务器(Full server)或自定义(Custom),设置备份时间(例如 03:00)和备份目标。也可以使用命令行:
# Daily at 03:00 to a dedicated disk (copy the Disk Identifier from "wbadmin get disks")
wbadmin enable backup -addtarget:{a1b2c3d4-0000-0000-0000-000000000000} -schedule:03:00 -allCritical -quiet
# Or to an existing volume
wbadmin enable backup -addtarget:E: -schedule:03:00 -include:"C:\inetpub,C:\Data" -quiet
# Check the schedule and recent results
wbadmin get status
wbadmin get versions
Get-WinEvent -LogName Microsoft-Windows-Backup -MaxEvents 10 | Select-Object TimeCreated, Id, Message
在 wbadmin.msc 中选择恢复(Recover),选择备份日期,再选择文件和文件夹(Files and folders),然后还原到原位置或其他文件夹。建议先还原到其他文件夹,对比确认后再覆盖线上数据,这样更安全。
# Find the version identifier (date and time) of the backup you need
wbadmin get versions
# Restore a folder to D:\restore without overwriting the live files
wbadmin start recovery -version:10/13/2026-03:00 -itemType:File `
-items:C:\inetpub\wwwroot -recoveryTarget:D:\restore -recursive -quiet
完整的系统还原(裸机恢复)需要从 Windows Server 安装介质启动,然后选择修复计算机 → 疑难解答 → 系统映像恢复(Repair your computer → Troubleshoot → System Image Recovery)。在云服务器上,这需要通过控制台操作并挂载安装 ISO;如需协助,请提交工单。
至少在其他地方保留一份副本。常用的两种方法如下:
# Mirror a backup folder to another Windows server over a private network share
robocopy D:\Backups \\10.0.0.20\backups\web01 /MIR /Z /R:3 /W:10 /LOG:C:\Logs\robocopy.log
# Upload to object storage (S3-compatible, Backblaze B2 and others) with rclone
# after running "rclone config" once to add a remote called "offsite"
rclone copy D:\Backups offsite:web01-backups --progress
可以在任务计划程序中安排在备份完成一小时后执行复制,并不时用异地副本测试还原:从未真正还原过的备份,只能算是一种“希望”。
运行 vssadmin list writers,查看是否有状态不是“稳定”(Stable)的编写器;重启相关服务(或重启服务器)通常可以恢复。同时确认备份目标有足够的可用空间,源卷也至少留有几 GB 可用空间用于卷影副本。
第一次备份的大小约等于已用数据量。之后的备份是块级增量备份,每天的变化量通常不大。建议预留至少为已用空间 1.5 到 2 倍的容量,以便保留足够多的版本。
支持 VSS 的备份可以保证 SQL Server 数据的一致性。对于 MySQL/MariaDB,建议在备份运行之前再定期导出一份(mysqldump),这样就能单独还原某个数据库,而不必还原整个卷。
如果按以上步骤操作后问题仍未解决,请提交工单联系 IMIDC 7×24 技术支持,并附上服务器 IP、Windows Server 版本、执行的 wbadmin 命令,以及完整的报错信息或事件日志记录,方便工程师快速定位。