Windows 备份还原那点事:系统崩了之后,数据还能不能捞回来
凌晨两点收到监控告警,一台跑了两年多的 Windows 机器起不来了。远程连不上,机房那边帮忙接上显示器,卡在修复界面转圈。这种时候最先冒出来的念头不是修系统,而是那块盘上的数据还在不在。重装系统半小时能搞定,数据没了可能要赔上几个月的工作量。
Windows 自带的备份还原这套东西,很多人装完系统就再没点开过。真出事的时候才发现,要么没开,要么开了但备份文件本身就在同一块盘上,盘一坏全完。这篇就把这几个功能各自能干什么、边界在哪说清楚,顺带聊聊服务器场景下该怎么配。
系统还原点不是备份,别把它当保险
系统还原点(System Restore)只动系统文件、驱动和注册表,用户数据基本不碰。它的作用是把你拉回某个「系统还正常」的时间点,比如装了个驱动之后蓝屏,回滚一下就好。
但它有几个硬伤,配错了等于白开:
- 默认只保护系统盘,D 盘上的业务数据不在范围内
- 还原点存在同一个卷上,盘物理损坏时跟着一起没
- 占用空间有限,旧还原点会被自动删掉,通常只留最近几次
我给自己的判断是:还原点适合对付「手贱装错东西」这类软故障,不适合对付硬件故障。真正要防的是后者。
开启方式不复杂,在「此电脑」右键属性里进系统保护,给系统盘打开保护并分配空间。系统盘 256G 的话,我一般给还原点留 15~20G,再多意义不大,因为老的点迟早会被覆盖。
文件历史记录和备份,解决的是两个不同的问题
文件历史记录(File History)盯的是用户目录下的文档、图片这些,按小时级别往外部盘或网络位置同步版本。它适合「误删了一个文件想找昨天的版本」这种场景,恢复粒度细,但恢复整机就得重装系统再倒数据。
「备份和还原(Windows 7)」里的系统映像功能则是整盘快照,能把系统连同数据一起还原到某个时间点。代价是体积大,一次完整镜像动辄几十 G,而且恢复时基本是整盘覆盖,没法挑单个文件。
这两个东西经常被混为一谈。我见过不少配置是只开了其中一个,然后以为万无一失。实际用下来,比较稳的组合是:文件历史记录负责日常误删,系统映像负责整机灾难恢复,两者落在不同的物理盘上。
如果机器本身就是台服务器,跑着站点或业务程序,本地还原点加本地镜像的防护层级还是偏薄。盘挂了、机房断电、系统被入侵,本地那点备份大概率一起遭殃。这种情况我通常建议至少把镜像往异地放一份,或者干脆把业务迁到带独立数据盘的机型上,系统崩了直接换盘重装,数据盘不动。
像 香港大带宽服务器 XXII 这类配置,E5-2630L*2 加 32G 内存、G 口带宽,系统盘和数据盘分开规划会省心很多,重装时不用赌数据还在不在。
恢复环境才是最后一道门,很多人没进过
系统彻底起不来的时候,能救命的其实是 Windows 恢复环境(WinRE)。开机时强制断电两三次,或者用安装 U 盘引导,都能进到这个界面。里面有几个关键入口:启动修复、系统还原、系统映像恢复、命令提示符。
启动修复能自动处理引导记录损坏这类问题,成功率一般,但值得先试。系统映像恢复就是你之前做的那个整盘镜像派上用场的地方,前提是镜像文件放在能访问到的盘上——U 盘、移动硬盘或者网络共享都行,唯独不能是坏掉的那块盘。
命令提示符那个入口最容易被忽略,但有时候是最有用的。比如引导文件丢了,可以用 bcdboot 之类的命令手动重建;分区表出问题,也能用 diskpart 看一眼盘到底还在不在。这些操作有风险,但比直接重装多了一次捞数据的机会。
我的取舍是:恢复环境里的操作优先保住数据,系统能不能修好放第二位。数据在,重装就是;数据没了,修好系统也没意义。
给服务器场景的几条落地建议
普通办公机按系统自带的方案配就够了,还原点加文件历史记录,成本几乎为零。但如果是跑业务的 Windows 服务器,本地备份只能算及格线。
我一般会按这个顺序排优先级:先确认数据盘和系统盘是不是物理分开,再确认备份目标盘是不是独立于这两者,最后才谈备份频率。频率上,系统镜像一周一次通常够用,文件级别的重要数据可以做到每天甚至更频繁,具体看业务能承受丢多少。
还有一点,备份做完要验证。我见过太多「备份任务显示成功,真恢复时发现文件是空的」的情况。恢复演练哪怕只做一次,也比每天看着绿色的成功日志踏实。
预算有限的话,先给最重要的那台机器配上异地备份,别追求所有机器一刀切。等业务稳了再铺开。