Безопасно ли очищать%SYSTEMROOT%\assembly\temp?
Коротко и просто:
безопасно ли удалять содержимое %SYSTEMROOT%\assembly\temp
как в
rd /s "%SYSTEMROOT%\assembly\temp\*"
на экземпляре Windows Server 2008 R2 / SBS 2011? Доступны ли официальные ссылки на документацию или сообщения в блоге?
В одном случае я вижу, что эта папка выросла до 33 ГБ, и этот пост SE предлагает, что очистка каталога может быть вариантом. В конце концов, она называется "временная", и, очевидно, эта папка используется для процедур удаления сборок.net - похоже, идея состоит в том, чтобы переместить туда файлы, связанные со сборкой, до окончательного удаления.
По той или иной причине окончательное удаление не выполняется в некоторых случаях, и папка продолжает расти. В конкретном случае, который я рассматриваю, более 5600 каталогов с "временной" датой с 15 мая 2014 г. ~50 добавляются каждый день около 0:00 - 3:30 (вероятно, в результате некоторого технического обслуживания) и каждый из них содержит 1-2 файла.ni.dll, как mscorlib.ni.dll
, system.ni.dll
, system.configuration.ni.dll
[...]. Кажется, это повторяется каждый день.
Что я в основном ищу, так это либо официальное заявление о том, что удаление является безопасным, либо другой поддерживаемый и документированный способ его очистки.
2 ответа
Прежде чем пытаться очистить эту папку, вы должны учитывать, что файлы в этой папке могут использоваться некоторыми.Net-приложениями. При этом вам следует проверить, нет ли какого-либо приложения.Net, которое не очищается должным образом (возможно, самостоятельно запрограммированное или сторонняя программа).
Вам также следует подумать о перезагрузке сервера, потому что это должно привести к завершению процессов, и Windows хотя бы частично очистит этот каталог.
Эта папка может увеличиться в размере из-за неправильной очистки программных установок и обновлений. Однако НЕКОТОРЫЕ приложения могут использовать файлы в этой папке, и вы не можете полагаться на эти приложения, чтобы должным образом заблокировать удаление файлов, что может привести к сбоям в работе.
Очистка папки должна быть последним решением, потому что она борется с симптомами, а не с причиной, по которой папка стала настолько большой.
Немного поздно, но вот что я нашел. Существует утилита gacutil.exe , которая устанавливается вместе с Visual Studio. Согласно этому документу Microsoft , если вы запустите командуgacutil /cdl
, он удалит содержимое кэша загрузки.
ПРИМЕЧАНИЯ :
- Если вы устанавливаете VS 2022 Preview, расположение файлов x64 по умолчанию:
C:\Program Files (x86)\Microsoft SDK\Windows\v10.0A\bin\NETFX 4.8Tools\x64\
НЕ переименовывайте файл «gacutil.exe». Он выйдет из строя без предупреждения.
Убедитесь, что вы используете правильный файл (x86 или x64) в соответствии с вашей ОС.
Для работы gacutil.exe требуются файлы « gacutil.exe.config » и « gacutlrc.dll », расположенные в папке «1033».