清除 %SYSTEMROOT%\assembly\temp 是否安全?

清除 %SYSTEMROOT%\assembly\temp 是否安全?

简短明了:

%SYSTEMROOT%\assembly\temp删除以下内容是否安全

rd /s "%SYSTEMROOT%\assembly\temp\*"

在 Windows Server 2008 R2 / SBS 2011 实例上?是否有任何官方文档参考或博客文章?

有一次,我发现这个文件夹已经增大到 33 GB,这篇 SE 帖子建议清除目录可能是一个选项。最后,它名为“temp”,显然这个文件夹是用于 .net 程序集卸载过程- 这个想法似乎是在最终删除之前将与程序集相关的文件移动到那里。

由于某种原因,某些情况下未执行最终删除,文件夹不断增长。在我查看的特定情况下,自 2014 年 5 月 15 日起,“temp”下的 5,600 多个目录,每天凌晨 0:00 - 3:30 左右都会添加约 50 个目录(可能是某些维护工作的结果),每个目录都包含 1-2 个 .ni.dll 文件,例如,,mscorlib.ni.dll[ ...]。这种情况似乎每天都在重复。system.ni.dllsystem.configuration.ni.dll

我基本上在寻找的是一份官方声明,说明删除是安全的,或者另一个支持的并记录了清理的方法。

答案1

在尝试清除此文件夹之前,您必须考虑到此文件夹中的文件可能被某些 .Net 应用程序使用。也就是说,您应该检查是否有任何 .Net 应用程序未正确清除(可能是自编程应用程序或第三方程序)。

您还应该考虑重新启动服务器,因为这会导致进程结束并且 Windows 至少部分清除该目录。

由于软件安装和更新清理不当,此文件夹的大小可能会增大。但是,某些应用程序可能会使用此文件夹中的文件,您不能依赖这些应用程序正确阻止文件被删除,这可能会导致故障。

清除文件夹应该是最后的解决方案,因为它只是针对症状,而不是导致文件夹变得那么大的原因。

答案2

虽然有点晚了,但这就是我发现的。有一个名为“工具程序”与 Visual Studio 一起安装。根据此 Microsoft 文档,如果你运行该命令gacutil /cdl,它将删除下载缓存的内容。

笔记

  • 如果安装 VS 2022 Preview,x64 文件的默认位置是:

C:\Program 文件(x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\

  • 请勿重命名文件“gacutil.exe”。它将失败且不发出警告。

  • 确保根据您的操作系统使用正确的文件(x86 或 x64)。

  • 工具程序需要文件“配置工具.exe“ 和 ”gacutlrc文件“位于“1033”文件夹中。

相关内容