Вопрос: Почему размер файла CBS.log составляет 20 ГБ


Два дня назад у меня было полное C: диск, после чего я удалил 8 ГБ данных. На следующий день жесткий диск снова переполнен, поэтому я продолжил удаление еще 5 ГБ, и на следующий день диск был полон.

После некоторого поиска того, что вызвало заполнение дискового пространства так быстро, я использовал windirstat инструмент, чтобы найти, какие файлы занимали больше всего места. Я узнал, что CBS.log файл, который находится в c:\windows\logs\cbs\, составляет 20 ГБ.

Я использую Windows 8.

  • Должен ли этот файл быть таким большим, а если нет, как уменьшить размер?
  • Какова цель этого файла?
  • Могу ли я удалить его?

127
2017-08-27 18:16


Источник


вы добавили подробный журнал? blogs.technet.com/b/joscon/archive/2010/11/18/... - magicandre1981


Ответы:


Это файл, созданный средством проверки ресурсов Microsoft Windows (SFC.exe).

Нет, он не должен быть таким большим. CBS.persist.log должен генерироваться, когда размер CBS достигает 50 мегабайт. CBS.log следует скопировать в файл cbs.persist.log, и должен быть запущен новый файл cbs.log.

Вы можете попробовать сжать файл:

  • Если вы щелкните правой кнопкой мыши файл CBS.log
  • Затем нажмите «Свойства».
  • На вкладке «Общие» нажмите «Дополнительно».
  • Проверьте «Сжатие содержимого для сохранения дискового пространства» и нажмите «ОК».

Или, если вы уверены, что ваша система работает нормально, вы можете удалить этот файл. SFC.exe создаст новый, при следующем запуске. Но это может быть полезно для устранения неполадок.


34
2017-08-27 18:30



Просто FYI, CBS.log не генерируется SFC. Пока SFC присоединяется к нему (с [SR] тег), похоже, TrustedInstaller.exe (он же CBS aka Component Based Service Service) - это то, что создает файлы журнала. Источник: Общие сведения об обслуживании на основе компонентов - Vinayak
Я серьезно сомневаюсь, что сжатие NTFS предотвратит попытку запуска формы TrustedInstaller makecab в файле журнала, который будет умирать, если он равен> = 2 GiB. Лучше всего сжать его в каком-то другом явном формате сжатия, который обычно придавал бы ему новое имя файла, тем самым не позволяя TrustedInstaller бесцельно кормить его makecab... - SamB
@SamB верен. Эта проблема возникает из-за того, что формат .CAB имеет жесткое ограничение размера файла 2GiB, и TrustedInstaller будет продолжать выдавать makecabобычно создавая новый файл ~ 100MiB в вашей временной папке каждый раз. Решение состоит в том, чтобы удалить файл журнала 2GB (что можно сделать безопасно, поскольку они используются только для устранения неполадок). - Syclone0044
Почему это указано как правильный ответ, когда @Vinayak предлагает получить неправильные данные? Наверняка, для чего предназначена функция «редактирования»? - Criggie


У меня был файл cbs.persist.log размером 17 Гб, так как я был уверен, что это не я, заполняющий свой ssd, я искал необычные большие файлы в каталоге журнала Windows. В любом случае, можно только подумать о проблеме сжатия.

Итак, чтобы сбросить сжатие в папке CBS, я использовал следующий метод:

  1. Отключить TrustedInstaller.exe (установщик модулей Windows) в службах Taskmanager
  2. Удалите все файлы .log в папке C: \ Windows \ Logs \ CBS каталог, удалите файлы .perist и .cab.
  3. Включить TrustedInstaller.exe снова

ПРИМЕЧАНИЕ. Очистка папки CBS сбрасывает процесс сжатия, поэтому новые созданные файлы журналов не должны превышать 50 Мб перед сжатием в .cab-файлы, как и должно быть.

Прямого визуального результата нет, вам нужно подождать, пока такой файл журнала окажется достаточно большим.

Это решение по-прежнему работает для меня в Windows 7/8 / 8.1 через 1 год

Хотя я не могу быть уверен, что сжатие никогда не будет терпеть неудачу, если это произойдет ... затем просто повторите это решение, но обязательно отключите TrustedInstaller перед удалением файлов в папке CBS.

Надеюсь это поможет.


85
2017-07-22 23:26



Спасибо за это! «makecab.exe» сводил меня с ума, сохраняя все 4 ядра на 50% и все время отбрасывая сообщения об обнаружении интерактивных сервисов. Наконец Windows ведет себя снова. - bythescruff
Как отключить установщик модулей Windows? В окне «Услуги» все кнопки запуска, остановки, возобновления, паузы и т. Д. Отображаются серым цветом. Диспетчер задач Windows также не может убить TrustedInstaller.exe .. - Alph.Dev
@ Alph.Dev Me тоже - cja
@ Alph.Dev Start services.msc через Win + R («Выполнить»), найдите службу, щелкните правой кнопкой мыши - Свойства - Начать: Отключить. Затем перезагрузите, очистите файлы и верните их в ручную или автоматическую (автоматический был по умолчанию в моей системе Win7). - chrki
Существует более простой способ, просто используйте LockHunter, чтобы удалить его. - majkinetor


На всякий случай, кто-то задается вопросом, почему это происходит в первую очередь. Я считаю, что воспроизвел особые условия (я уверен, что есть и другие варианты этих условий, которые могут привести к одному и тому же результату):

  1. Я начал очень большое количество очень больших обновлений Windows (куча языковых пакетов и пакетов обновлений и т. Д.), В то время как я также было открыто большое количество других приложений и окон (я разработчик). Затем я отправился на обед.
  2. Обновление Windows продолжалось до тех пор, пока в системе не осталось памяти (ОЗУ). у меня есть 32 гигабайта, но этого было недостаточно.
  3. «Доверенный установщик.exe» («Установщик модуля Windows») пытался сжать быстрорастущий файл журнала, но не мог работать, либо потому, что журнал рос слишком быстро, либо не мог начаться из-за низкая память или и то, и другое. Поэтому, когда это было необходимо, модуль Windows Служба установщика даже не запускалась (даже временно).
  4. С этого момента он не мог справиться с файлом журнала, поскольку это было слишком большой для сжатия .CAB (около 25 гигабайт!), и поэтому начался порочный круг, и ничто не могло его остановить (за исключением руководства как описано выше, «Джин»).
  5. Когда файл журнала вырос до 60 гигабайт на моем SSD, он использовал все мои и я получил предупреждение «с низким объемом памяти» и начал ища причину.

Следующий процесс, похоже, устранил проблему: «отключите службу установщика модулей Windows, удалите содержимое папки C: \ Windows \ Logs \ CBS \ и папку« C: \ Windows \ Temp », пропустив все используемые файлы, затем снова запустите службу установщика модулей Windows и установите его в «ручной» запуск (по умолчанию) ». Перезагружать.


26
2018-01-26 23:35



Хороший пост, очень интересный. - zb226
Были тысячи файлов в c: \ windows \ temp на моей машине - надеюсь, обрезание, чтобы несколько сотен файлов окажут правильное влияние на снижение взрывного роста CBS.log - Toybuilder


В качестве обходного пути, в Windows 7, если служба «Установка модулей Windows» остановлена, то запуск запускается для запуска процесса вращения журнала, который создает новый файл cbs.log и переносит старый файл в сжатый CBS-файл .cab-архив. Мой файл журнала размером 500 мб сжат до 30 МБ.

Обратите внимание, что это может занять несколько минут. Служба, похоже, автоматически останавливается автоматически, как только это будет сделано.


10
2017-07-29 00:16



Обратите внимание, что это не работает само по себе, если какой-либо из файлов уже достиг отметки 2GiB, поскольку makecab просто сдается, когда он заходит так далеко (оставляя коррумпированный cab_* файл в %WINDIR%\Temp); в этом случае вам также необходимо избавиться от негабаритных CbsPersist_*.log файл так или иначе TrustedInstaller («Установщик модулей Windows») не будет пытаться запустить makecab на них при запуске. Я использовал 7-zip для сжатия моих файлов .log.xz, но удаление или переименование предположительно также были бы параметрами. После этого перезагрузка будет позаботиться о разумных размерах. - SamB
@SamB верен. Эта проблема возникает из-за того, что формат .CAB имеет жесткое ограничение размера файла 2GiB, и TrustedInstaller будет продолжать выдавать makecab обычно создавая новый файл ~ 100MiB в вашей временной папке каждый раз. Решение состоит в том, чтобы удалить файл журнала 2GB (что можно сделать безопасно, поскольку они используются только для устранения неполадок). Большое спасибо SamB за публикацию, вы достигли основной причины этой проблемы. Я нахожусь в Windows 7 SP1 64-бит. Я не могу поверить, что Microsoft еще не исправила это. - Syclone0044
Если эта услуга активна, выбор «Перезагрузка» имеет тот же эффект. Эффект не так уж хорош, если вы установили Журналы \ CBS как сжатый. - PJTraill


В моем случае я не смог остановить службу даже после отключения. Следующие шаги помогли мне остановить службу и удалить журнал 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.

На всякий случай, если это поможет кому-то.


5
2018-05-18 03:13



Парень на форумах MS говорит, что это по дизайну: Обратите внимание, что в Windows 7 вы не можете остановить эту службу, но ее можно отключить, перезагрузить, а затем удалить cbs.log. - StackzOfZtuff
Возможно. Вот почему нам нужно остановить службу, как указано выше, для удаления файла журнала. - gnaanaa
Да, но поскольку вы не можете остановить его вручную, вам необходимо отключить и перезагрузить компьютер. - StackzOfZtuff
На моем W7x64 я не мог отключить службу, но я мог бы убить TrustedInstaller.exe. Это удалило блокировку из файла, и я смог ее удалить. - user136036


На сервере 2008 R2, My C:\windows\temp был пуст. Я пробовал удалять журналы cbs, и журнал регистрации cbs объемом 2,5 ГБ продолжал возвращаться, поэтому я проверил C:\windows\temp после попытки удалить журнал и большое количество .dmp там появились файлы.

Удаленные данные и файл журнала исчезли. Дисковое пространство восстановлено. (Шахта продолжала возвращаться даже после ее удаления).


1
2018-06-03 16:30