我有几台 Windows 2003 服务器定期在凌晨 3 点左右触发低磁盘警报。然后警报会在 15 分钟内重置。通常这些服务器的 C: 驱动器上有大约 40% 的可用空间,但在这 15 分钟内只有不到 10% 的可用空间。
我使用域管理员帐户将计划任务设置为dir /s > c:\log.txt
在凌晨 3:05 运行。昨晚我能够用完整的驱动器“捕获”服务器。
这些是log.txt
凌晨 3 点的文件的最后几行:
Total Files Listed:
31660 File(s) 7,710,072,795 bytes
14625 Dir(s) 406,929,408 bytes free
400 MB 免费!这是dir
现在的输出:
Total Files Listed:
31615 File(s) 7,693,175,876 bytes
14572 Dir(s) 3,516,493,824 bytes free
但是如果我比较文件,我无法解释超过 17 MB 的差异。3 GB 去哪儿了?
我在 VSS 的事件日志中看不到任何事件,备份从 11-12 运行。
我在这里没有想法。我还应该看什么?
尝试使用Tree Size Pro。您可以安排它使用命令行选项运行并将输出转储到 xml 文件(在空间丢失期间),然后使用“与 xml 文件比较”选项来准确找到空间消失的位置。
看起来占用空间的文件没有显示在原始 DIR 列表中,因为解析文件夹本身没有显示出明显的差异。
要在扫描期间显示系统文件和隐藏文件,请
DIR /S /ASH > C:\log.txt
在计划任务中使用。你熟悉procmon吗?配置过滤器以专注于 WriteFile、CreateFile 等操作,保存该配置。制定计划任务,在凌晨 3 点前几个小时启动“procmon /loadconfig writefile.pmc”。第二天看看日志。希望你会突然想到什么。
Procmon 对我来说听起来是个不错的开始,并保持预定的目录运行,每晚使用的空间量是变化还是大致相同?那时是否还有其他计划任务在运行?
最后……这很痛苦,但您可以在凌晨 2:30 登录服务器并密切关注它,直到您发现问题为止。