为什么 CBS.log 文件大小是 20 GB

为什么 CBS.log 文件大小是 20 GB

两天前我的C:硬盘满了,之后我删除了 8 GB 的数据。第二天硬盘又满了,于是我继续删除了另外 5 GB,第二天硬盘又满了。

在查找导致磁盘空间如此快速填满的原因后,我使用该windirstat工具查找哪些文件占用了最多的空间。我发现CBS.log位于 的文件c:\windows\logs\cbs\有 20 GB 大。

我正在使用 Windows 8。

  • 这个文件应该这么大吗?如果不是,我该如何减小它的大小?
  • 这个文件的用途是什么?
  • 我可以刪除它嗎?

答案1

这是由 Microsoft Windows 资源检查器 (SFC.exe) 生成的文件。

不,它不应该那么大。当 CBS 的大小达到 50 MB 左右时,应该会生成 CBS.persist.log。应将 CBS.log 复制到 cbs.persist.log,并启动一个新的 cbs.log 文件。

您可以尝试压缩文件:

  • 如果你右键单击 CBS.log 文件
  • 然后点击属性
  • 在常规选项卡上,单击高级
  • 勾选“压缩内容以节省磁盘空间”,然后点击确定

或者,如果您确定系统运行正常,则可以删除此文件。SFC.exe 将在下次运行时创建一个新文件。但是,它可能对解决问题有用。

答案2

我有一个 17 GB 的 cbs.persist.log 文件,因为我确定不是我填满了我的 SSD,所以我在 Windows 日志目录中搜索了异常大的文件。无论如何,只能想到压缩问题。

因此,为了重置 CBS 文件夹中的压缩,我使用了以下方法:

  1. 在 Taskmanager 服务中禁用 TrustedInstaller.exe(Windows 模块安装程序)
  2. 删除 C:\Windows\Logs\ 中的所有 .log 文件哥伦比亚广播公司目录,同时删除 .persist 和 .cab 文件
  3. 再次启用 TrustedInstaller.exe

注意:清理 CBS 文件夹会重置压缩过程,因此新创建的日志文件在压缩为 .cab 文件之前不应大于 50 Mb。

没有直接的视觉结果,您需要等到这样的日志文件足够大。

一年后,此解决方案在 Windows 7 / 8 / 8.1 上仍然有效

虽然我不能确定压缩不会再次失败,但如果失败了……那么只需再次重复解决方案,但一定要在删除 CBS 文件夹中的文件之前禁用 TrustedInstaller。

希望这可以帮助。

答案3

以防万一有人想知道为什么会发生这种情况。我相信我已经重现了特殊情况(我确信这些条件的其他变化可能会导致相同的结果):

  1. 我启动了大量非常大的 Windows 更新(一堆语言包和服务包等),同时还打开了大量其他应用程序和窗口(我是一名开发人员)。然后我去吃午饭了。
  2. Windows 更新一直运行,直到系统内存 (RAM) 耗尽。我有 32 GB 的内存,但还不够。
  3. “Trusted Installer.exe”(“Windows 模块安装程序”服务)尝试压缩快速增长的日志文件,但无法运行,原因可能是日志增长速度过快,也可能是由于内存不足而无法启动,或者两者兼而有之。因此,当需要它时,Windows 模块安装程序服务根本无法启动(即使是暂时的)。
  4. 从那时起,它就无法处理日志文件,因为它对于 .CAB 压缩来说太大(大约 25 GB!),因此恶性循环开始了,没有什么可以阻止它(除了上面“Gin”描述的手动干预)。
  5. 一旦日志文件在我的 SSD 上增长到 60 GB,它就会用尽我所有的可用空间,并且我会收到“存储空间不足”警告,然后开始寻找原因。

以下过程似乎已修复该问题:“禁用 Windows 模块安装程序服务,删除 C:\Windows\Logs\CBS\ 文件夹的内容以及‘C:\Windows\Temp’文件夹 - 跳过任何正在使用的文件,然后再次启动 Windows 模块安装程序服务并将其设置为‘手动’启动(默认)”。重新启动。

答案4

就我而言,即使禁用后也无法停止服务。以下步骤帮助我停止服务并删除 CBS 日志。

C:\Windows\system32>net stop TrustedInstaller
The requested pause, continue, or stop is not valid for this service.

More help is available by typing NET HELPMSG 2191.

C:\Windows\system32>sc qc TrustedInstaller
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: TrustedInstaller
    TYPE               : 10  WIN32_OWN_PROCESS
    START_TYPE         : 4   DISABLED
    ERROR_CONTROL      : 1   NORMAL
    BINARY_PATH_NAME   : C:\Windows\servicing\TrustedInstaller.exe
    LOAD_ORDER_GROUP   : ProfSvc_Group
    TAG                : 0
    DISPLAY_NAME       : Windows Modules Installer
    DEPENDENCIES       :
    SERVICE_START_NAME : localSystem

C:\Windows\system32>tasklist | find /i "TrustedInstaller.exe"
TrustedInstaller.exe          2164 Services                   0    132,404 K

C:\Windows\system32>taskkill /f /im "TrustedInstaller.exe"
SUCCESS: The process "TrustedInstaller.exe" with PID 2164 has been terminated.

以防万一它能帮助到别人。

相关内容