windows服务器磁盘清理需分层操作:先用cleanmgr /d c:扫描并清理临时文件、windows更新残留等;再禁用休眠、启用compactos压缩系统文件;定期清理iis日志、事件日志和asp.net临时文件;最后配置存储感知与组策略实现自动化。

服务器日常维护中,清理系统缓存和释放磁盘空间不是“一键清空”就能解决的事,关键在于分层识别、精准操作、避免误删核心服务文件。Windows服务器(如2016/2019/2022)虽有图形界面,但生产环境更推荐命令行+策略化管理,兼顾安全与效率。
用 cleanmgr 深度扫描系统盘
这是最稳妥的起点,尤其适用于C盘空间告急但不确定垃圾来源时:
- 以管理员身份运行命令提示符,输入 cleanmgr /d C: 启动磁盘清理工具(比图形菜单更可靠)
- 首次扫描后,勾选“临时文件”“回收站”“缩略图”“传递优化文件”——这几项在服务器上常因Windows Update、WSUS或远程桌面会话残留而堆积数GB
- 点击“清理系统文件”,再次扫描;重点勾选“Windows更新清理”和“以前的Windows安装”(即 Windows.old)——大版本升级后该文件夹默认保留30天,不手动触发不会自动删除
- 若已确认无回滚需求,可放心清理;否则先备份关键配置再操作
禁用休眠并压缩系统文件(小容量系统盘专用)
对256GB或更小的系统盘,hiberfil.sys 和未压缩的系统文件是隐形大户:
- 管理员命令提示符中执行:powercfg /hibernate off —— 删除休眠文件,立即释放约等于物理内存一半的空间(如16GB内存→释放8GB)
- 再执行:compact /CompactOS:always —— 启用CompactOS,将系统二进制文件(如dll、exe)以NTFS压缩方式存储;微软实测在4GB内存设备上节省3.7GB,且CPU实时解压无感知延迟
- 注意:该功能兼容UEFI/BIOS,无需额外驱动,重启后生效
定期清理IIS、Event Log与临时应用缓存
这些不是磁盘清理工具默认覆盖的区域,却是Windows服务器长期运行后真正的“缓存黑洞”:
- IIS日志与临时文件:路径通常为 C:\inetpub\logs\LogFiles 和 C:\Windows\Temp;建议用任务计划程序每周执行一次PowerShell脚本自动删除30天前的日志
- Windows事件日志:打开“事件查看器”→右键各日志(如Application、Security)→“属性”→设置“按需覆盖事件”,或手动“清除日志”并勾选“保存并清除”(导出重要条目后再操作)
- .NET临时ASP.NET文件:路径为 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files;可安全清空全部子目录(需先停止IIS服务:net stop was /y)
启用存储感知 + 设置自动清理策略
避免反复人工干预,让系统自己守好底线:
- 进入“设置→系统→存储”,开启“存储感知”;点击“配置存储感知或立即运行”,设定:当可用空间低于15GB时自动清空“临时文件”和“回收站中超过30天的文件”
- 对服务器,建议额外配置组策略(gpedit.msc):计算机配置→管理模板→系统→磁盘清理→启用“删除过期的卷影复制”和“删除临时文件”策略
- 配合任务计划程序,每月第一个周日凌晨2点自动运行 cleanmgr /sagerun:1(需提前用cleanmgr图形界面配置好“任务1”的清理选项并保存)











