Как найти журнал cbs

Ошибки Windows Update или SFC в Windows 10 сохраняются в файле CBS.log. В этой статье мы рассмотрим, что такое CBS.log, его расположение и как просмотреть файл CBS.log в Windows 10.

Что такое CBS.log? Как прочитать файл CBS.log в Windows 10 1

CBS или Component-Based Servicing — это файл, содержащий логи об установленных и удаленных компонентах Windows Update. Таким образом, информация о вашем Windows Update хранится в этих файлах журнала, даже System File Checker (SFC) пишет в CBS.log.

Что такое CBS.log? Как прочитать файл CBS.log в Windows 10 2

Расположение файла CBS.log

Файл CBS.log всегда будет присутствовать на вашем компьютере под управлением Windows. Если вам интересно и вы хотите проверить этот файл, запустите Проводник (Win + E) и перейдите в следующее место.

C:WindowsLogsCBS
CBS.log file and fix CBS.log file error

Там вы увидите имя файла CBS.log. Это тот самый файл, который содержит информацию о Windows Update.

Как прочитать файл CBS.log

Вы можете просто открыть его с помощью Блокнота.

C:WindowsLogsCBS
Что такое CBS.log? Как прочитать файл CBS.log в Windows 10 3

Однако если вы хотите просто прочитать файл SFC, это не лучший вариант.

Для этого запустите Командную строку с правами администратора, введите следующую команду и нажмите Enter.

findstr /c:"[SR]" %windir%LogsCBSCBS.log >"%userprofile%Desktopsfclogs.txt

Это создаст файл sfclogs.txt на рабочем столе. Дважды щелкните по нему, чтобы открыть файл с помощью Блокнота, и прочитайте его. Вы увидите, что перед каждой транзакцией написано «SR». Это означает, что все показанные здесь программы относятся к SFC.exe.

Могу ли я удалить файл CBS.log?

Файл CBS.log необходим для вашего компьютера, поскольку каждый раз, когда вы устанавливаете новое обновление Windows, оно записывается в файл CBS.log. Однако если вам кажется, что он съедает огромный кусок вашего жесткого диска, то можете удалить его, так как это не окажет негативного влияния на ваш компьютер.

Перед этим обязательно отключите службу Windows Update.

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

Поврежденные файлы регистрируются в журнале CBS.log

В некоторых Windows может возникнуть ошибка следующего содержания

Защита ресурсов Windows обнаружила поврежденные файлы, но не смогла исправить некоторые из них. Подробности содержатся в журнале CBS.Log windirLogsCBSCBS.log.

Чтобы исправить эту проблему, вам может потребоваться запустить DISM.


Спасибо, что читаете! На данный момент большинство моих заметок, статей и подборок выходит в telegram канале «Левашов». Обязательно подписывайтесь, чтобы не пропустить новости мира ИТ, полезные инструкции и нужные сервисы.


Респект за пост! Спасибо за работу!

Хотите больше постов в блоге? Подборок софта и сервисов, а также обзоры на гаджеты? Сейчас, чтобы писать регулярно и радовать вас большими обзорами, мне требуется помощь. Чтобы поддерживать сайт на регулярной основе, вы можете оформить подписку на российском сервисе Boosty. Или воспользоваться ЮMoney (бывшие Яндекс Деньги) для разовой поддержки:


Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.

Have you heard about CBS.log? In this post, you will get a detailed introduction of CBS.log Windows 10. Besides, MiniTool software provides several feasible methods to help you fix CBS.log corrupt issue.

You may be not familiar to CBS.log file, but you might experience certain problems related to it. In the following contents, I will give you detailed information about CBS.log file and provide some effective solutions to CBS.log corrupt issue.

Without further ado, let’s have a close look at CBS.log at first.

What Is CBS.log

CBS refers to Component-Based Servicing. Some components might be installed or uninstalled during Windows update, and CBS.log is a file that includes logs about these involved components. This file logs detailed information from your most recent Windows installed updates, and thus it can be used for troubleshooting issues related to your updates.

What’s more, the built-in tool System File Checker also writes to this log file. In other words, when you use SFC.exe, the details of involved verification operation and repair operation will be written to the CBS.log file.

Where is the CBS.log file stored on your device?

Actually, you can find it in the path of %windir%LogsCBSCBS.log. The %windir% means the directory where your Windows is installed, typically C:Windows. So, the common location of CBS.log file is C:WindowsLogsCBSCBS.log.

CBS.log Windows 10

Why and How to Read CBS.log

SFC.exe is a nice utility to resolve various issues caused by corrupted or missing system files. However, sometimes the problematic system files cannot be repaired by SFC scan. When the scanning process completes, you might receive the following message: Windows Resource Protection found corrupt files but was unable to fix some of them. Details are included in the CBS.Log windirLogsCBSCBS.log.

why do you read CBS.log file

This message refers users to CBS.log file but doesn’t give access to view it, which makes users frustrated. How to read CBS.log? Commonly, we can go to the directory where CBS.log file is stored and double-click it to open it. However, things might be a little complicated if you want to read SFC logs only.

Don’t worry. To analyze the log file generated by SFC.exe program, you can follow the steps below.

Step 1: Press Windows + R to open Run window.

Step 2: Input cmd and press Ctrl + Shift + Enter to run Command Prompt as administrator.

Step 3: Type the following command line and press Enter to execute it: findstr /c:»[SR]» %windir%LogsCBSCBS.log >»%userprofile%Desktopsfclogs.txt

In CBS.log file, every SFC.exe program entry has a tag of [SR]. By performing this command, a new file named sfclogs will be created on your Desktop and all the SFC logs will be filtered out and stored altogether in this file.

Open this file with Notepad, and you can view and analyze the details of the scanned system files and information about the files that couldn’t be repaired during SFC scan.

CBS.log Windows 10 generated by SFC

Is It Safe to Delete CBS.log File?

It is harmless to leave the CBS.log file on your drive and you can let it alone. But sometimes, you may find that your drive is heavily fragmented after Windows update and the CBS.log is eating up your disk space. Under this situation, you might need to delete the CBS.log file.

You can feel free to delete it as this operation does no harm to your computer.

When you are trying to delete CBS.log file, you might receive an error saying that this file is in use. The Windows Update service might be responsible for this issue, because it is always ready to write update information to CBS.log file. So, you have to disable it before deleting the file.

Here is a tutorial on how to disable the service and then delete CBS.log file.

Step 1: After invoking Run dialog, input services.msc and press Enter to open Services app.

Step 2: Locate Windows Update service. Right-click the service and choose Stop to disable it temporarily. Then, exit the window.

disable Windows Update service temporarily

Step 3: Open your File Explorer and go to your system drive. Then, navigate to Windows > Logs > CBS folder. You may need to check Hidden items option under View tab in tool bar to show Logs folder.

Note: You can copy and paste the path %windir%LogsCBS to the address bar to locate the folder quickly. Alternatively, you can use the search feature of File Explorer. If it doesn’t work, check this post.

Step 4: Open CBS folder, and delete the CBS.log file or all files in it.

Step 5: After you have deleted the log file safely, open the Service app again to enable Windows Update service.

After that, the file will be recreated with everything it needs but won’t largely take up your disk space.

How to Fix CBS.log Corrupt Issue in Windows 10

If Windows Resource Protection found corrupt files but was unable to fix after you run SFC scan, perhaps CBS.log corrupt issue occurs on your computer.

If possible, you can ignore this error and fix the found corrupt system files manually instead. Just open CBS.log file and find out the corrupted files that SFC cannot fix by searching the word corrupt. And then type the query in your browser to look for solutions.

But this may be too complicated for most users. Alternately, you should fix this issue as soon as possible. Here I put together 4 solutions to this issue and you can try them one by one until you resolve the problem. Let’s see the details.

4 Methods to Fix CBS.log Corrupt Issue in Windows 10

  1. Scan your computer for malware
  2. Run DISM command
  3. Reset your computer to factory settings
  4. Check for hard drive issue

Fix 1: Scan Your Computer for Malware

If you receive the error, it is very likely that your computer has been infected by malware. In this case, you need to scan your computer deeply for malware. You can use your preferred third-party antivirus or Windows built-in utility Windows Defender.

You can follow the steps below to perform a deep offline scan with Windows Defender for your computer.

Step 1: Press Windows + I to open Windows Settings.

Step 2: Go to Update & Security > Windows Security, and then choose Virus & threat protection from the right pane.

Step 3: In the pop-up window, click Scan options.

Step 4: Choose Windows Defender Offline scan option and click Scan now button. This will restart your device, so please save everything you’re doing in advance.

Windows Defender Offline scan

Step 5: When you get a confirmation window, make sure you have saved everything and then click OK button to continue.

This operation will take about 15 minutes and please wait patiently until the process is completed. Once it’s done, open Command Prompt as administrator and try running SFC scan to check if the error is resolved. If it still exits, just move to the next solution.

Fix 2: Run DISM Command

If you are sure that your computer is free from malware but you are still stuck with the same error, you can try running DISM command. You can repair your Windows 10 image with DISM (Deployment Image Servicing and Management) tool and fix system corruption easily.

This command can be executed alongside the SFC scan.

After you have completed SFC scan in Command Prompt, type the following command lines and press Enter after each:

  • dism /online /cleanup-image /checkhealth
  • dism /online /cleanup-image /restorehealth

Once the scanning process is finished, restart your computer and check if the issue disappears.

Fix 3: Reset Your Computer to Factory Settings

Another way to fix CBS.log Windows 10 corrupt issue is to factory reset your computer. This operation will reinstall your Windows but you can choose whether remove your personal files or not. So, you can feel free to try this method.

Step 1: Open Settings and choose Update & Security category.

Step 2: Switch to Recovery tab and click Get started under Reset this PC section.

reset this PC

Step 3: In the new window, you are required to choose an option to reset your computer. You can choose Keep my files to remove installed apps and customized settings but keep personal files, or choose Remove everything to remove them all.

choose a resetting option

Step 4: When you come to the Ready to reset this PC page, confirm your resetting settings and click Reset button. You can click the given link to check the apps to be removed.

Note: If you chose Remove everything, you will get Additional settings page where you can make some changes for the settings of your selected resetting option.

click Reset button

The process will take some time and you need to wait for it to complete. After your computer restarts, check if the issue is fixed. If yes, you can reinstall these removed apps now; if not, try the next workaround.

Fix 4: Check for Hard Drive Issue

Sometimes, your hard drive might be experiencing certain issues, typically like bad sectors . This will also prevent SFC scan from repairing certain system files and thus you might receive CBS.log error. If it is applicable to your case, you need to take some measures to check for hard drive errors.

You can perform this operation in File Explorer. In this tool, right-click the drive which needs to be checked in Devices and drives section, and choose Properties. Go to Tools tab and click Check button to check the drive for file system errors.

check hard drive in File Explorer

Also, you can go to Command Prompt to check your hard drive with CHKDSK command. Just run this tool as administrator and execute the command chkdsk * : /f /r (* refers to the drive letter of the target drive).

Alternatively, you can choose to use a reliable third-party program – MiniTool Partition Wizard is recommended for you. The instruction on how to check hard drive with this utility is also displayed below. You can download and install MiniTool Partition Wizard on your computer to have a try.

Free Download

Step 1: Launch the program to get its main interface.

Step 2: Select the drive on which you want to perform the operation, and choose Check File System feature from the left tool bar.

Note: This feature only works on drives with drive letter. So, you should make sure you have assigned a drive letter for this drive.

choose Check File System

Step 3: When you get a new window, choose Check & fix detected errors option and click Start button.

choose a scanning option

Then, this tool will start scanning your drive and repair the detected errors. If the system drive is selected, you will be required to restart your computer, and this drive will be checked the next time the system restarts.

I have gotten the detailed information about CBS.log in this post, and benefited a lot from the given solutions to CBS.log issue. Share with you all and hope this post is helpful for you.Click to Tweet

Bottom Line

In conclusion, this article has introduced what CBS.log is and how to read and delete CBS.log file. Besides, 4 methods to fix CBS.log Windows 10 issue are also displayed.

Have you fixed the issue with the solutions provided in this post? Do you have any other workarounds to fix this issue? Please share with us on the following comment zone. You can also contact us via [email protected].

Cbs.Log Windows 10 FAQ

How do I view the CBS.log in Windows 10?

To view CBS.log, you can go to the path %windir%LogsCBSCBS.log and double-click CBS.log file to open it.

To view the logs generated by SFC in CBS.log file, you can run cmd as administrator, execute the command findstr /c:»[SR]» %windir%LogsCBSCBS.log >»%userprofile%Desktopsfclogs.txt. Then, double-click the newly-created file on the Desktop to open it.

How do I clear my CBS.log?

To clear your CBS.log file, just follow the steps below:

  1. Disable Windows Update service
  2. Go to File Explorer to delete CBS.log.
  3. Re-enable Windows Update
  4. File is recreated with everything it needs.

Besides, you can also open the file and remove some of the entries at the beginning of the file but leave the end bit to clear the CBS.log file.

Всем привет.

Начну с небольшого определения:
Что такое cbs.log?

Файл-лог журнала обслуживания windows, который содержит подробные сведения об ошибках автономного обслуживания, подробные сведения об ошибках интерактивного обслуживания, а так же как вспомогательный элемент для dism.exe

Не вдаваясь в тонкости осмысливания написанного ( определение взято отсюда ) сообщу следующее:

Многим из нас знакома программа sfc.exe, с помощь которой можно проверить состояние целостности защищенных системных файлов.
(Обсуждение в этой теме:

Обзор утилиты sfc.exe

)
Результат ее работы будет отражен как раз так же в этом логе.
Но, для большинства пользователей, анализ результата проверки остается трудновыполнимой задачей.

Хорошо, если система рапортует о том, что защита ресурсов wiindows не обнаружила поврежденных файлов или что все поврежденные файлы восстановлены.
А что делать, если мы видим что то вроде такого сообщения?

Программа защиты ресурсов Windows обнаружила поврежденные файлы, но не может восстановить некоторые из них

Один из шагов к решению проблемы — это произвести анализ лога, который создается при сканировании. Лог-файл находится по пути %windir%logscbscbs.log и открыть его можно любым текстовым редактором, включая стандартный notepad.
Неподготовленный пользователь, открыв и посмотрев лог, скорее всего испытает острое желание закрыть файл и больше не открывать. Поэтому, для комфорта восприятия, пользователи придумали приводить лог в более читабельный вид, распарсив его и отфильтровав «лишние» записи оставить только те, что нужны.
Сделать это можно разными методами, кстати — в сети распространен метод с парсингом файла cbs.log введя в командной строке простую команду:

findstr/c: «[SR]» %windir%logscbscbs.log > "указать адрес, куда вы хотите сохранить лог"sfcdetails.txt

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

Как быть?
Для более комфортного первоначального анализа мы с коллегами создали такой скрипт:

Проверка целостности системных файлов утилитой sfc

Запустив скрипт вы сможете произвести проверку целостности системных файлов, произвести очистку и восстановление хранилища данных windows, в котором хранятся резервные копии защищенных системных файлов windows.
Из этих копий и производится восстановление поврежденных файлов.
Скрипт выводит аналогичный, но чуть более информативный лог + копирует в каталог запуска скрипта сам файл cbs.log.
А так же очищает старые записи, что немного экономит место на диске и спасает от зависаний компьютера ( при определенных условиях) при попытке открыть cbs.log. Да и читать будет удобнее и меньше.
Это связано с тем, что порой размер файла cbs.log может раздуваться и я видел монстров по 40 с лишним мегабайт… в общем, скрипт его «облегчает» до оптимального объема.
Идем дальше.
Пробуем читать cbs.log.

Что нужно знать?

При обнаружении поврежденных защищенных системных файлов SR пытается их восстановить из хранилища данных.
Само хранилище данных находится по адресу:

И, если по каким то причинам не удалось получить доступ к файлам или в хранилище они тоже оказались повреждены — в таком случае периодически мы можем наблюдать сообщение о невозможности восстановления файлов.
К которому бонусом может присоединиться какая нибудь трабла в работе системы.
=========================================================

Напомню, что лог cbs.log находится по такому пути:

* предварительно необходимо

включить отображение скрытых и системных файлов.

=========================================================

Вернемся, непосредственно, к файлу cbs.log. Вы его уже открыли в текстовом редакторе?
Открывайте.
Лично мне более удобным для работы с файлами такого типа является редактор notepad++
Так как редакторов много и каждый волен выбирать тот, что ему по душе — то далее я буду описывать свои действия в редакторе в контексте интерфейса notepad++ , а вы (если пользуетесь другим) , можете ориентироваться по аналогии в своем.

Думаю вы уже до этого находили информацию о том, что нужные нам действия помечаются тегом [SR] в каждой строке — именно по этому признаку и принято парсить cbs.log. А если вы не знали — значит узнали теперь)
Теперь у нас с вами два варианта: либо переходить сразу к проблемным файлам через поиск (это если у вас уже есть отфильтрованый одним из упомянутых методов лог) либо вывести все строки с тегом [SR].
Я лично всегда так делаю — легче потом будет навигация.
В notepad++ есть возможность вывести в дополнительной области все найденные по маске ( тегу [SR] ) строки.

Делается это просто: открываем поиск (кнопка в виде бинокля), вводим в строку поиска [SR], далее нажимаем кнопку «Найти все в текущем документе» и получаем в нижней области программы все строки найденные по нужному фильтру, а в вверхней области основной текст файла cbs.log, как видно на скриншоте:

1517323608718

Это позволит вам видеть проблемные места (нижняя область) и одновременно смотреть сопутсвующую информацию по ним в основном логе (верхняя область).
Ну как, все получилось?

Далее в нижней области, где отфильтрованы строки с тегом [SR] пропускаем все что выглядит примерно так:

2018-01-22 19:54:56, Info                  CSI    00000015 [SR] Verifying 100 (0x0000000000000064) components
2018-01-22 19:54:56, Info                  CSI    00000016 [SR] Beginning Verify and Repair transaction
2018-01-22 19:54:59, Info                  CSI    00000018 [SR] Verify complete

Сделать это легко — достаточно воспользоваться скроллом, потянув за него указателем мышки.
Почему пропустить? Файлы системой защиты проверяются блоками по 100 файлов и это на сейчас служебная информация, не несущая для нас полезной нагрузки.

Как только находим нечто отличающееся — стоп.
Например:
2017-10-29 21:28:40, Info CSI 000001e1 [SR] Cannot repair member file [l:24{12}]"gpscript.exe" of Microsoft-Windows-GroupPolicy-Script, Version = 6.1.7601.23452, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch

Все, сейчас мы нашли то, что надо.
Если вбить в переводчик то, что написано раздельным текстом, то можно вполне понять что не так.
На примере данной строки давайте и разберемся.

Cannot repair member file  - не удается восстановить файл-член...
PublicKey neutral in the store, hash mismatch - Открытый ключ нейтральный  в магазине, несоответствие хэша

Пусть перевод несколько забавный, но суть мы уловили — не удалось восстановить файл gpscript.exe, в хранилище компонентов он так же считается поврежденным, так как хэш сумма файла не совпадает с эталоном.
Что дальше?
Дальше можно либо приступить к восстановлению хранилища компонентов, либо смотреть какой файл нужен, где он должен лежать и как его восстановить, если нет возможности автоматически восстановить хранилище компонентов.
Начнем с второго варианта — получаем информацию о файле. Находим упомянутую строку в основном логе:

2017-10-29 21:28:40, Info                  CSI    000001e0 Hashes for file member SystemRootWinSxSx86_microsoft-windows-grouppolicy-script_31bf3856ad364e35_6.1.7601.23452_none_677acd98e72e71ccgpscript.exe do not match actual file [l:24{12}]"gpscript.exe" :
  Found: {l:32 b:yHkCWhwG8j0IOFAIlAuv4/o6FtEO2tqdJOWtoUpBlck=} Expected: {l:32 b:GQ5AzLEfZ9lH3YTPo9vNHTiesdUCuZnB7IW2XQQmn1c=}
2017-10-29 21:28:40, Info                  CSI    000001e1 [SR] Cannot repair member file [l:24{12}]"gpscript.exe" of Microsoft-Windows-GroupPolicy-Script, Version = 6.1.7601.23452, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch
2017-10-29 21:28:40, Info                  CSI    000001e2 [SR] This component was referenced by [l:154{77}]"Package_40_for_KB3159398~31bf3856ad364e35~x86~~6.1.1.1.3159398-40_neutral_LDR"

Тут мы отчетливо видим, что файл в хранилище должен быть по адресу:
Hashes for file member SystemRootWinSxSx86_microsoft-windows-grouppolicy-script_31bf3856ad364e35_6.1.7601.23452_none_677acd98e72e71ccgpscript.exe
Версия его: Version = 6.1.7601.23452 и на него ссылается компонент патча KB3159398.
Открываем упомянутый патч на сайте Microsoft:
Download Обновление для системы безопасности Windows 7 (KB3159398) from Official Microsoft Download Center
Находим там ссылку «Связанные ресурсы», переходим.
https://support.microsoft.com/ru-ru…-the-security-update-for-group-policy-june-14
Открываем сведения о файлах и находим тот, что нам нужен:

1517332469390

Все, значит это то, что нам нужно.
Просто переустанавливаем это обновление и нужные файлы перезаписываются. А значит — все станет ОК.

Это был пример на живом логе реальной системы.

Почему необходимо найти именно такой же файл и такой же версии?
Потому что когда данный файл внедрялся в систему, то создается ряд условий, на основании которых система защиты будет считать «правильным» только такой файл, который будет соответствовать этим самым условиям.
Другими словами, если какое то из обновлений системы, к примеру, обновляло версию файла и эталоны, то файл из ранее сделанной резервной копии, но другой версии будет считаться неактуальным.
Именно поэтому часто встречающуюся рекомендацию:
Вставьте диск (флэшку) с дистрибутивом вашей версии операционной системы и введите sfc / scannow …
Можно смело пропускать мимо ушей, глаз или как там еще информация дошла до вас.

Почему?

Тут имеется очень важный нюанс — дистрибутив должен быть именно таким же.
То есть с точно таким же набором обновлений, патчей и заплаток.
А найти такой дистрибутив довольно сложно, если вообще будет возможным.

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

Так же файл, считающийся системой защиты поврежденным может не запуститься или работать некорректно.
Он может некорректно взаимодействовать и с другими компонентами операционной системы или прочим программным обеспечением.

Отсюда можно сделать вывод, что при первоначальной проверке заморачиваться на счет наличия дистрибутива не стоит.
Исключение Windows XP — там система потребует наличия папки I386, которая имеется как раз на дистрибутиве (если у вас нет где то отдельно).
В нашем скрипте проверка ее наличия осуществляется автоматически и пользователю не придется выполнять танцы с бубном для того, что бы указать системе где она, если не удастся обнаружить.
Достаточно смонтировать образ диска и все.

Как еще можно восстановить поврежденные файлы?

Можно попытаться выполнить автоматическое восстановление хранилища компонентов через пункт «Расширенная проверка и восстановление файлов» скрипта, или запустив командную строкуот имени Администратора и ввести команду:
(Для Windows 8 — 10)
dism /Online /cleanup-image /restorehealth

Для Windows 7 команда будет выглядеть немного иначе, а так же потребуется наличие установленного Download Обновление для Windows 7 (KB2966583) from Official Microsoft Download Center

DISM /Online /Cleanup-Image /ScanHealth

В обоих случаях интернет должен быть подключен.
После того, как хранилище компонентов будет восстановлено, попробуйте снова выполнить проверку sfc /scannow
Как правило этой операции бывает достаточно.

=================================

Если вам понадобилось восстановление файлов хранилища данных вручную — то вам понадобится

стать владельцем объекта и получить права на изменение.

=================================

Итак, теперь общее понимание у нас имеется, далее просто будем собирать типовые примеры записей лога cbs.log и методы исправления проблем.

Для того, что бы облегчить себе задачу и сэкономить время+силы, я использую для первоначального анализа файл sfcdoc.log, создаваемый скриптом.
Можно использовать и sfcdetalis.txt — но он менее информативен.

Там мы увидим информацию о версии системы, разрядности, установленных патчах и другие вещи.
Нас в логе интересует блок

------ SFCDoc parsing (start process) ------

Там выводится результат работы программы sfc.exe, который записывается в cbs.log и имеет строки с тегом [sr]
Программа sfc.exe проверяет файлы блоками по 100 штук, отсюда и появляются записи типа:

000028a5 [SR] Verify complete
000028a6 [SR] Verifying 100 components
000028a7 [SR] Beginning Verify and Repair transaction

Итак, в логе sfcdoc.log (или sfcdetalis.txt) мы находим примерно такие строки:

00004fa9 [SR] Cannot repair member file [l:12]'userinit.exe' of Microsoft-Windows-UserInit, version 10.0.15042.0, arch Host= amd64 Guest= x86, nonSxS, pkt {l:8 b:31bf3856ad364e35} in the store, hash mismatch
00004fac [SR] Cannot repair member file [l:12]'userinit.exe' of Microsoft-Windows-UserInit, version 10.0.15042.0, arch Host= amd64 Guest= x86, nonSxS, pkt {l:8 b:31bf3856ad364e35} in the store, hash mismatch
00004fad [SR] This component was referenced by [l:181]'Microsoft-Windows-Client-Features-WOW64-Package-AutoMerged-onecore~31bf3856ad364e35~amd64~~10.0.15042.0.Microsoft-Windows-Client-Features-WOW64-Package-AutoMerged-onecore-Deployment
00004fb0 [SR] Could not reproject corrupted file ??C:WindowsSysWOW64userinit.exe; source file in store is also corrupted

Это файлы, которые не удалось восстановить, либо те, что были восстановлены.

Если буквально, то Could not reproject corrupted file ??C:WindowsSysWOW64userinit.exe значит что указанный файл не удалось восстановить из хранилища.
А source file in store is also corrupted — это говорит нам о том, что в хранилище файл тоже поврежден.

Решение: найти поврежденный файл в хранилище данных, получить на него права доступа и заменить оригинальным файлом.
Как понять, какой файл нам необходим, точнее какая версия файла?

Теперь имеет смысл обратиться к файлу cbs.log.
Скопируйте его в удобное место из каталога

Открыть его можно любым текстовым редактором, лично я предпочитаю

Notepad++

Открываем cbs.log и ищем ближайшую с конца строку с искомым нам файлом: в данном случае это userinit.exe

2017-10-26 23:38:05, Info                  CSI    000041c2 Hashes for file member SystemRootWinSxSwow64_microsoft-windows-userinit_31bf3856ad364e35_10.0.15042.0_none_f7a5dd2f3ed02235userinit.exe do not match actual file [l:12]'userinit.exe' :
  Found: {l:32 mhHTAD/21TkyflJQwItWEJZr9UaGJebx3CamF6tUPf4=} Expected: {l:32 +bkkt7edQArLakaOJRdpxV8MvpFumMUD88WNy60YfA0=}
2017-10-26 23:38:05, Info                  CSI    000041c3 [SR] Cannot repair member file [l:12]'userinit.exe' of Microsoft-Windows-UserInit, version 10.0.15042.0, arch Host= amd64 Guest= x86, nonSxS, pkt {l:8 b:31bf3856ad364e35} in the store, hash mismatch
2017-10-26 23:38:05, Info                  CSI    000041c4 [SR] This component was referenced by [l:181]'Microsoft-Windows-Client-Features-WOW64-Package-AutoMerged-onecore~31bf3856ad364e35~amd64~~10.0.15042.0.Microsoft-Windows-Client-Features-WOW64-Package-AutoMerged-onecore-Deployment'
2017-10-26 23:38:05, Info                  CSI    000041c5 Hashes for file member ??C:WindowsSysWOW64userinit.exe do not match actual file [l:12]'userinit.exe' :
  Found: {l:32 K1Y9CBrNZsBLg7IsV/u9IEgYQ9xrk8frQkTDRknlyMA=} Expected: {l:32 +bkkt7edQArLakaOJRdpxV8MvpFumMUD88WNy60YfA0=}
2017-10-26 23:38:05, Info                  CSI    000041c6 Hashes for file member SystemRootWinSxSwow64_microsoft-windows-userinit_31bf3856ad364e35_10.0.15042.0_none_f7a5dd2f3ed02235userinit.exe do not match actual file [l:12]'userinit.exe' :
  Found: {l:32 mhHTAD/21TkyflJQwItWEJZr9UaGJebx3CamF6tUPf4=} Expected: {l:32 +bkkt7edQArLakaOJRdpxV8MvpFumMUD88WNy60YfA0=}
2017-10-26 23:38:05, Info                  CSI    000041c7 [SR] Could not reproject corrupted file ??C:WindowsSysWOW64userinit.exe; source file in store is also corrupted

Что мы видим?
Hashes for file member ….. do not match actual file
Эта запись гласит о том, что хэш сумма файла не совпадает с оригинальным.
Это и есть причина.
Где надо заменить файл?

SystemRootWinSxSwow64_microsoft-windows-userinit_31bf3856ad364e35_10.0.15042.0_none_f7a5dd2f3ed02235userinit.exe

Запомните, что SystemRootWinSxS — это адрес расположения хранилища данных.
Где SystemRoot эквивалентен переменной %SystemRoot% — путь до каталога windows на системном диске.

wow64 — это говорит нам о том, что речь идет о 64 разрядной системе и версии файла.

Строка

Cannot repair member file [l:12]'userinit.exe' of Microsoft-Windows-UserInit, version 10.0.15042.0

отображает так же служебную информацию, тут нам важно отметить что исходя из этой записи мы видим, что речь идет о версии файла 10.0.15042.0 (version 10.0.15042.0).
Это значит, что мы должный найти точно такую же версию файла и произвести замену в указанном каталоге.
Равно как и в каталоге C:WindowsSysWOW64userinit.exe
Тут есть особенность: так как произвести замену C:WindowsSysWOW64userinit.exe в загруженной системе вряд ли удастся, то вам либо придется сделать это из среды восстановления (в таком случае путь будет Х:Windowsuserinit.exe, где Х — это системный диск), либо из под Live CD/USB, либо — самый оптимальный вариант — просто производим замену в харнилище, а затем производим стандартную проверку sfc /scannow и система все сделает за вас сама.
То есть восстановит поврежденные файлы из хранилища.

* узнать версию файла можно кликнув по нему правой кнопкой мыши — свойства -Подробно.

Upload 2017 11 11 16 12 59

==================================================

Далее разберем следующие строки лога cbs.log

Found: {l:32 b:yHkCWhwG8j0IOFAIlAuv4/o6FtEO2tqdJOWtoUpBlck=} Expected: {l:32 b:GQ5AzLEfZ9lH3YTPo9vNHTiesdUCuZnB7IW2XQQmn1c=}
2017-10-29 21:28:40, Info                  CSI    000001dd [SR] Cannot repair member file [l:24{12}]"gpscript.exe" of Microsoft-Windows-GroupPolicy-Script, Version = 6.1.7601.23452, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch
2017-10-29 21:28:40, Info                  CSI    000001de [SR] Cannot repair member file [l:72{36}]"Microsoft.Build.Engine.resources.dll" of Microsoft.Build.Engine.resources, Version = 3.5.7600.16385, pA = PROCESSOR_ARCHITECTURE_MSIL (8), Culture = [l:10{5}]"ru-ru", VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:b03f5f7f11d50a3a}, Type neutral, TypeName neutral, PublicKey neutral in the store, file is missing
2017-10-29 21:28:40, Info                  CSI    000001df [SR] This component was referenced by [l:168{84}]"Microsoft-Windows-NetFx3-OC-Package~31bf3856ad364e35~x86~ru-RU~6.1.7601.17514.NetFx3"
2017-10-29 21:28:40, Info                  CSI    000001e0 Hashes for file member SystemRootWinSxSx86_microsoft-windows-grouppolicy-script_31bf3856ad364e35_6.1.7601.23452_none_677acd98e72e71ccgpscript.exe do not match actual file [l:24{12}]"gpscript.exe" :
  Found: {l:32 b:yHkCWhwG8j0IOFAIlAuv4/o6FtEO2tqdJOWtoUpBlck=} Expected: {l:32 b:GQ5AzLEfZ9lH3YTPo9vNHTiesdUCuZnB7IW2XQQmn1c=}
2017-10-29 21:28:40, Info                  CSI    000001e1 [SR] Cannot repair member file [l:24{12}]"gpscript.exe" of Microsoft-Windows-GroupPolicy-Script, Version = 6.1.7601.23452, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch
2017-10-29 21:28:40, Info                  CSI    000001e2 [SR] This component was referenced by [l:154{77}]"Package_40_for_KB3159398~31bf3856ad364e35~x86~~6.1.1.1.3159398-40_neutral_LDR"

Cannot repair member file … hash mismatch

Здесь так же говорится, что файл такой то не удалось восстановить и имеется несоответствие суммы хэш.

А вот запись in the store, file is missing говорит о том, что файл не просто поврежден, а полностью отсутствует в хранилище компонентов.

А вот эта строка

2017-10-29 21:28:40, Info                  CSI    000001e2 [SR] This component was referenced by [l:154{77}]"Package_40_for_KB3159398~31bf3856ad364e35~x86~~6.1.1.1.3159398-40_neutral_LDR"

нам говорит о том, что этот компонент связан с обновлением KB3159398.
Если найти в базе Microsoft соответствующую ссылку, то там в перечне изменяемых файлов мы как раз увидим, что обновление выполняет установку файла необходимой версии.
Другими словами решением будет — переустановка обновления KB3159398.

Вот еще один интересный вариант, который вам может попасться в логе:

9:15, Error                 CSI    00000187 (F) Failed on regenerating file [l:22{11}]"browaub.ttf"[gle=0x80004005]

Здесь говорится о том, что попытка восстановления файла была завершена с ошибкой 0x80004005
Не буду вас гонять по поисковикам и скажу сразу что в данном случае процесс блокировал брандмауэр Windows, как бы бредово это не звучало)

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

Download PC Repair Tool to quickly find & fix Windows errors automatically

You may stumble upon an error in Windows 11/10 when Windows Update or System File Checker fails Such errors are stored, inter alia, in the CBS.log file. In this article, we will see what is CBS.log, its location, and how to view a CBS.log file in Windows 11/10.

CBS or Component-Based Servicing is a file that has logs about the installed and uninstalled Windows Update component. So, information of your Windows Update is stored in these log files, even the System File Checker (SFC) writes to CBS.log.

CBS.log file location

CBS.log file will always be present on your Windows computer. If you are curious and want to check the file, launch File Explorer (Win + E), and navigate to the following location.

CBS.log file and fix CBS.log file error

C:WindowsLogsCBS

There you will see a file name, CBS.log. This is the very file that contains the information about your Windows Update component.

How to read CBS.log file

To read log files, you can just go to the following location and read the log file.

C:WindowsLogsCBS

However, if you just want to read the SFC file, it is not the best option.

For that, launch Command Prompt as an administrator, type the following command and hit Enter.

findstr /c:"[SR]" %windir%LogsCBSCBS.log >"%userprofile%Desktopsfclogs.txt

This will create a file, sfclogs.txt, on your desktop. Double-click on it to open the file with Notepad and read the file. You will see “SR” written in front of every transaction. This means all the programs shown here are of SFC.exe.

Can I delete CBS.log file?

CBS.log file is essential to your computer as every time you install a new Windows Update, it writes to the CBS.log file. However, if you think it is eating a huge chunk out of your Hard Drive, you can delete it as it won’t have an adverse effect on your computer.

Before doing that, make sure to disable the Windows Update service from Services (that you can launch from the Start Menu).

Now, you can delete the CBS.log file and you won’t receive any error message.

How to fix corrupt files logged in CBS.log file?

Some Windows may see an error saying as following

Windows Resource Protection found corrupt files but was unable to fix some of them, Details are included in the CBS.Log windirLogsCBSCBS.log.

To fix this issue, you may need to Run DISM and ChkDsk.

Read Next: SFC not working, will not run or could not repair the corrupt file.

Yusuf is an Engineering graduate from Delhi. He has written over 1000 technical articles and has knowledge of programming languages including Java, and C++, and technologies such as Oracle 12C and MsSQL. Troubleshooting Windows is his favorite past-time.

Содержание

  1. Что такое CBS.log? Как прочитать файл CBS.log в Windows 10
  2. Что такое CBS.log
  3. Расположение файла CBS.log
  4. Как прочитать файл CBS.log
  5. Могу ли я удалить файл CBS.log?
  6. Поврежденные файлы регистрируются в журнале CBS.log
  7. Респект за пост! Спасибо за работу!
  8. Последние
  9. Реклама
  10. telegram
  11. Рубрики
  12. СЧЕТЧИКИ
  13. РЕКЛАМА И ДОНАТЫ
  14. Социальные сети
  15. Файл CBS.log содержит записи, которые некоторые файлы не восстанавливаются даже после успешного запуска утилиты SFC на компьютере Windows Server
  16. Симптомы
  17. Причина
  18. Дополнительная информация
  19. «Неуловимый» список установленных обновлений Windows
  20. Предыстория или с чего всё началось.
  21. Консольные команды
  22. Вывод
  23. Windows занимает много места на диске.
  24. Windows занимает много места: суть вопроса
  25. Windows занимает много места: вероятное решение
  26. Второй вариант
  27. Почему размер файла CBS.log составляет 20 ГБ?

Что такое CBS.log? Как прочитать файл CBS.log в Windows 10

Ошибки Windows Update или SFC в Windows 10 сохраняются в файле CBS.log. В этой статье мы рассмотрим, что такое CBS.log, его расположение и как просмотреть файл CBS.log в Windows 10.

best free firewall windows featured image 800x400 1

Что такое CBS.log

CBS или Component-Based Servicing — это файл, содержащий логи об установленных и удаленных компонентах Windows Update. Таким образом, информация о вашем Windows Update хранится в этих файлах журнала, даже System File Checker (SFC) пишет в CBS.log.

CBS file

Расположение файла CBS.log

Файл CBS.log всегда будет присутствовать на вашем компьютере под управлением Windows. Если вам интересно и вы хотите проверить этот файл, запустите Проводник (Win + E) и перейдите в следующее место.

CBS log File

Там вы увидите имя файла CBS.log. Это тот самый файл, который содержит информацию о Windows Update.

Как прочитать файл CBS.log

Вы можете просто открыть его с помощью Блокнота.

SFClogs

Однако если вы хотите просто прочитать файл SFC, это не лучший вариант.

Для этого запустите Командную строку с правами администратора, введите следующую команду и нажмите Enter.

Это создаст файл sfclogs.txt на рабочем столе. Дважды щелкните по нему, чтобы открыть файл с помощью Блокнота, и прочитайте его. Вы увидите, что перед каждой транзакцией написано «SR». Это означает, что все показанные здесь программы относятся к SFC.exe.

Могу ли я удалить файл CBS.log?

Файл CBS.log необходим для вашего компьютера, поскольку каждый раз, когда вы устанавливаете новое обновление Windows, оно записывается в файл CBS.log. Однако если вам кажется, что он съедает огромный кусок вашего жесткого диска, то можете удалить его, так как это не окажет негативного влияния на ваш компьютер.

Перед этим обязательно отключите службу Windows Update.

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

Поврежденные файлы регистрируются в журнале CBS.log

В некоторых Windows может возникнуть ошибка следующего содержания

Защита ресурсов Windows обнаружила поврежденные файлы, но не смогла исправить некоторые из них. Подробности содержатся в журнале CBS.Log windirLogsCBSCBS.log.

Чтобы исправить эту проблему, вам может потребоваться запустить DISM.

Спасибо, что читаете! Подписывайтесь на мои каналы в Telegram, Яндекс.Мессенджере и Яндекс.Дзен. Только там последние обновления блога и новости мира информационных технологий.

Респект за пост! Спасибо за работу!

Хотите больше постов? Узнавать новости технологий? Читать обзоры на гаджеты? Для всего этого, а также для продвижения сайта, покупки нового дизайна и оплаты хостинга, мне необходима помощь от вас, преданные и благодарные читатели. Подробнее о донатах читайте на специальной странице.

Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.

Последние

Реклама

telegram

Рубрики

СЧЕТЧИКИ

РЕКЛАМА И ДОНАТЫ

Социальные сети

©2016-2022 Блог Евгения Левашова. Самое интересное и полезное из мира ИТ. Windows 10, Linux, Android и iOS. Обзоры программ и веб-сервисов. Статьи о мотивации и продуктивности.

Использование материалов разрешается с активной ссылкой на levashove.ru.

Данный блог является личным дневником, содержащим частные мнения автора. В соответствии со статьей 29 Конституции РФ, каждый человек может иметь собственную точку зрения относительно его текстового, графического, аудио и видео наполнения, равно как и высказывать ее в любом формате. Блог не имеет лицензии Министерства культуры и массовых коммуникаций РФ и не является СМИ, а, следовательно, автор не гарантирует предоставления достоверной, не предвзятой и осмысленной информации. Сведения, содержащиеся в этом блоге не имеют никакого юридического смысла и не могут быть использованы в процессе судебного разбирательства. Автор блога не несёт ответственности за содержание комментариев к его записям.

Источник

Файл CBS.log содержит записи, которые некоторые файлы не восстанавливаются даже после успешного запуска утилиты SFC на компьютере Windows Server

В этой статье описывается проблема, из-за которой файл CBS.log записи записей при статических изменениях файла. Так как статичный файл не защищен функцией защиты Windows ресурсов, функция сообщает об изменении файла CBS.log.

Применяется к: Windows Server 2012 R2
Исходный номер КБ: 954402

Симптомы

Для проверки изменений Windows системных файлов на компьютере на Windows Server 2008 вы запустите утилиту System File Checker (SFC) (Sfc.exe). При запуске утилиты SFC вы можете получить следующее сообщение:

Все файлы и ключи реестра, перечисленные в этой транзакции, успешно восстановлены.

Однако при просмотре файла %windir%LogsCBSCBS.log, который создает программа Sfc.exe, можно увидеть следующие записи:

, Информация CSI 00000142 [SR] Ремонт 1 компонентов
, Информация CSI 00000143 [SR] Начало проверки и ремонта транзакции
, Информация CSI 00000145 [SR] Не может восстановить файл члена [l:18 <9>]»img11.jpg» Microsoft-Windows-Shell-Wallpaper-Common, Версия = 6.0.5720.0, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = , Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch
, Информация CSI 00000147 [SR] Не может восстановить файл члена [l:18 <9>]img11.jpg» Microsoft-Windows-Shell-Wallpaper-Common, Версия = 6.0.5720.0, pA = PROCESSOR_ARCHITECTURE_INTEL (0), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = , Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatchch
, Информация CSI 00000149 [SR] Ремонт завершен
, Info CSI 0000014a [SR] Совершение транзакции
, Info CSI 0000014e [SR] Проверка и ремонт транзакции завершена. Все файлы и ключи реестра, перечисленные в этой транзакции, успешно восстановлены

Причина

Статические и мутируемые файлы — это два типа файлов, определенных в системе. Статические файлы не могут быть изменены. Мутируемые файлы можно изменить. Файлы реестра и файлы журналов являются примерами мутируемых файлов. Функция Windows ресурсов (WRP) не сканирует мутируемые файлы. Функция WRP сканирует статические файлы при сканировании компьютера утилитой SFC. Функция WRP помогает защитить большинство статических файлов. Однако в этом случае функция WRP не защищает Img11.jpg статического файла. Если статичный файл изменяется, когда функция WRP сканирует файл, это изменение регистрируется в файле CBS.log. Так как функция WRP не защищает статичный файл Img11.jpg, у функции WRP нет другого выбора, кроме как сообщить об изменении в файле CBS.log.

Дополнительная информация

Программа Sfc.exe записывает сведения о каждой операции проверки и каждой операции восстановления в файл CBS.log. Каждая SFC.exe в файле CBS.log имеет тег [SR].

Служба Windows модулей также пишет в файл CBS.log. Служба Windows модулей устанавливает необязательные функции, обновления и пакеты служб.

Вы можете искать теги [SR], чтобы помочь найти SFC.exe записей программы. Чтобы найти теги [SR] и перенаправить результаты поиска в текстовый файл, выполните следующие действия:

Нажмите кнопку Начните, введите cmd в поле Начните поиск, щелкните правой кнопкой мыши cmd в списке Программ, а затем нажмите кнопку Выполнить в качестве администратора.

Если вам предложен пароль администратора или подтверждение, введите пароль или нажмите кнопку Продолжить.

В командной строке введите следующую команду, а затем нажмите клавишу ВВОД:

Файл Sfcdetails.txt включает записи, которые регистрируются каждый раз, SFC.exe программа выполняется на компьютере.

Введите выход и нажмите кнопку ENTER, чтобы закрыть окно Командная подсказка.

Источник

«Неуловимый» список установленных обновлений Windows

Вы когда-нибудь задумывались, с помощью чего формируется список установленных обновлений Windows? А через какое API его достать? Ответы на эти и другие возникающие вопросы я постараюсь дать в своём небольшом исследовании.

bbrlzcws8p

Предыстория или с чего всё началось.

В нашей компании каждый год проходит конференция молодых специалистов, где каждый участник может решить проблему какого-либо отдела (список тем заранее предлагается).

Раньше на каждое «ТО» с помощью WSUS подтягивались все выпущенные обновления и распространялись на все машины. Также периодически выходили ТСБ (технические сервисные бюллетени), в которых указывалось, что требуется установить необходимые обновления в виде изолированных пакетов. В итоге у нас накапливаются обновления, которые в WSUS отследить нельзя, а можно было увидеть только через панель управления в разделе «Установленные обновления».

image loader

Бывают ситуации, когда АРМ или сервер «падает» и приходится его восстанавливать из образа, созданного некоторое время назад. При восстановлении из образа есть вероятность того, что мы можем потерять нужные нам обновления (которые пришли в виде изолированных пакетов), которые устанавливались до падения машины. Объяснил максимально подробно насколько мог, потому что уточнения будут уже коммерческой тайной.

Вот поэтому и возникла идея создать программу, которая бы могла извлечь этот список обновлений (желательно удаленно по локальной сети), записать в файл/базу, сравнить текущий перечень с неким шаблоном и выдать сообщение на SCADA систему через один из протоколов — SNMP, OPC.

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

Консольные команды

Начнем с простого и воспользуемся тем, что предлагает нам Windows без использования сторонних средств. Это можно сделать с помощью следующих команд:

Вывод консольной команды можно перенаправить в файл и дальше начать его парсить, но это неправильно, плюс вызов программы (по правилам СБ не пройдет) и об удаленном получении списка речь не идёт. Поэтому предлагаю вам просто вызвать команды, сравнить количество обновлений в каждом списке, со списком через Панель управления и продолжить наше расследование дальше.

Формально все методы получения списка обновлений можно разделить на две группы: локальные и сетевые.

image loader

Все методы проверялись на чистых образах систем (Windows 7, 8, Server 2012 R2) с интегрированными обновлениями, после каждого обновления через Центр обновления с официальных серверов Microsoft проводилась дополнительная проверка. Остановимся на каждом из них подробнее.

Примечание: далее для своего удобства все результаты я буду вставлять в List. Это, возможно, не рационально, но тогда мне это казалось хорошей идеей.

Есть и вторая вариация этого метода: Update Session — получение информации с помощью подключения к сессии обновления Windows Update Agent (в данном случае работаем не напрямую с библиотекой).

Microsoft подсказывает об удаленном использовании API.

Главный минусы этих двух методов — не позволяют найти исправления KB, которые не распространяются через Центр обновления Windows. Можно увидеть только то, что прошло через сам агент обновления, то есть данный вариант нас не устраивает.

Система обслуживания образов развертывания и управления ими (Deployment Image Servicing and Management) — это средство командной строки, которое может использоваться для обслуживания образа Windows или для подготовки образа среды предустановки Windows (Windows PE). Является заменой диспетчера пакетов (Pkgmgr.exe), PEimg и Intlcfg.

Данная утилита используется для интеграции обновлений, сервис паков в образ системы. Обновления Windows представляют собой отдельные модули, которые могут быть представлены в нескольких вариантах:

Количество обновлений совпадало с количеством из списка Панели управления до первого апдейта через центр управления — после него количество обновлений стало меньше (было 214, стало 209), хотя по логике они должны были увеличиться. Примеры вывода До обновления, После обновления.

С чем это связано я могу только предполагать — возможно, какие-то обновления замещали предыдущие, следовательно, и количество стало меньше.

Чуть позже я наткнулся на утилиту от китайцев DISM++, которая основана не на DISM API или DISM Core API, но имеющиеся в ней библиотеки не имеют нужных мне открытых методов, поэтому я забросил эту идею и продолжил поиски дальше.

Windows Server Update Services (WSUS) — сервер обновлений операционных систем и продуктов Microsoft. Сервер обновлений синхронизируется с сайтом Microsoft, скачивая обновления, которые могут быть распространены внутри корпоративной локальной сети. Опять же специальный инструмент, предназначенный для работы с обновлениями.

Распространяется только на серверных редакциях ОС Windows, поэтому был развернут следующий стенд:

Чтобы не выделять раздел жесткого диска для новой системы я пользуюсь WinNTSetup и устанавливаю систему в VHD диски — загрузчик, начиная с Windows 7 (редакций Professional/Ultimate), прекрасно справляется с загрузкой с образа диска. Полученные таким образом диски можно спокойно использовать и в Hyper-V — убиваете сразу двоих зайцев. Не забудьте только сделать заранее копию хранилища BCD через команду bcdedit /export e:bcd_backup.bcd.

Настраивать AD для рассылки обновлений я не захотел, поэтому просто прописал в групповых политиках путь к WSUS серверу:

image loader

Обязательно уделите внимание на порт, я из-за опечатки (8350 вместо 8530) не мог получить обновления на клиентских машинах, хотя сделано было всё верно. Так же названия пунктов в групповых политиках на Windows 7 и Windows 8 различаются.

Для получения отчета средствами WSUS необходимо дополнительно установить пакет — система уведомит вас об этом.

Так как интернета нет, то ситуация с обновлениями выходит как на скриншоте ниже:

image loader

Поведение похоже на WUApi — если обновления не прошли через них, то они не знают об этом. Поэтому данный метод снова не подходит.

Windows Management Instrumentation (WMI) в дословном переводе — инструментарий управления Windows.

WMI — реализованный корпорацией Майкрософт стандарт управления предприятием через Интернет для централизованного администрирования и слежения за работой различных частей компьютерной инфраструктуры под управлением платформы Windows. WMI является открытой унифицированной системой интерфейсов доступа к любым параметрам операционной системы, устройствам и приложениям, которые функционируют в ней.

Данный метод позволяет получить данные как с локальной машины, так и удаленно в пределах локальной сети. Для обращения к объектам WMI используется специфический язык запросов WMI Query Language (WQL), который является одной из разновидностей SQL. Получать список мы будем через WMI класс win32_quickfixengineering.

Количественно всё совпадает (даже после обновлений), поэтому было решено использовать этот метод. Для программного создания WMI запросов советую использовать следующую утилиту — WMI Delphi Code Creator. Благодаря ей я немного по другому взглянул на свой код и решил использовать заготовку из этой программы.

Полученные данные методом WMI меня не остановили, и я решился на „поверхностный реверс-инжиниринг“. Воспользуемся утилитой Process Monitor из сборника программ Sysinternals Suite для выявления файлов и ветвей реестра, которые используются при вызове выше перечисленных консольных команд и обращению к пункту „Установленные обновления“ через Панель управления.

Моё внимание привлек файл wuindex.xml, расположенный в папке C:WindowsservicingPackages. Для его анализа была написана следующая программа:

К сожалению, данный файл встречается не на всех системах и принцип его генерирования и обновления остался для меня загадкой. Поэтому снова данный метод нам не подходит.

Вот мы подошли к тому, с чем связаны все эти методы. Продолжая анализ логов Process Monitor я выявил следующие папки и файлы.

Файл DataStore.edb, расположенный в папке C:WindowsSoftwareDistributionDataStore. Это база данных, в которой содержится история всех обновлений установленной версии Windows, включая те обновления, которые только стоят в очереди.

Для анализа файла DataStore.edb использовалась программа ESEDatabaseView. В БД существует таблица tbUpdates, содержимое которой трудно интерпретировать.

image loader

После мое внимание привлек процесс TiWorker.exe, который вызывался каждый раз при открытии пункта в Панели управления. Он „ходил“ по многим папкам, одна из которых вывела меня на верный путь.

C:WindowsSoftwareDistribution — это папка, используемая службой обновления Windows для загрузки обновлений на компьютер с последующей их установкой, а также хранит сведения обо всех ранее установленных обновлениях.

Папка WinSxS, расположенная по адресу C:Windowswinsxs. Это служебная папка операционной системы Windows служащая для хранения ранее установленных версий системных компонентов. Благодаря ее наличию существует возможность отката к более старой версии обновления в случае необходимости.

C:Windowsservicing — основная составляющая всей системы, имя которой Component-Based Servicing (CBS).

CBS — обслуживание на основе компонентов, составляющая Windows, интегрированная с службой Windows Update. В противоположность обслуживанию на основе файлов File-Based Servicing (FBS) (для ОС, предшествующих Windows Vista), в котором файлы обновлялись прямо в системных директориях, в CBS появилась целая иерархия директорий и целое семейство (стек) модулей/библиотек обслуживания.

CbsApi.dll — основная библиотека поддержки технологии CBS. Не имеет открытых методов, поэтому напрямую использовать её я не смог. Microsoft использует TrustedInstaller.exe и TiWorker.exe для доступа к методам данной библиотеки и уже через эти процессы выводит нужные нам данные. ‪Записи ведутся в C:WindowsLogsCBSCBS.log.

На момент создания прототипа программы (на скриншотах можете увидеть май 2019) русскоязычной информации о CBS не было, но в конце августа нашлась очень хорошая статья в блоге — http://datadump.ru/component-based-servicing. Очень интересная статья, которая подтвердила мой опыт и собрала в себе нужную информацию. И ещё по теме: http://www.outsidethebox.ms/17988/

Вывод

Microsoft слишком усложнила тривиальную задачу по получению списка обновлений и сделала этот процесс не совсем явным. Всё это сделано для безопасности, но не для простоты использования. Соглашусь с автором статьи — в получении обновлений стали отсутствовать предсказуемость и прозрачность.

В результате исследования была написана следующая программа, демонстрацию работы которой можно увидеть в данном видео:

Источник

Windows занимает много места на диске.

В статье описывается один из случаев решения проблемы, в которой от сеанса к сеансу Windows занимает много места на жёстком диске, причём очистка временных папок не приносит результата и проблема постоянно возвращается.

zhyostkij disk zapolnen

Пытаетесь обнаружить куда исчезло свободное пространство жёсткого диска? Ситуация усложняется порой и тем, что вроде ничего не устанавливалось, а десятки и иногда даже сотни гигабайт пространства как сдуло… Но слушайте далее.

Пользователи Windows иногда, между тем, сообщают о странном поведении системы. Используя методы обнаружения «поглотителей пространства» в статье «Почему жёсткий диск переполнен?» или правильные настройки дефрагментации с оптимизацией таблицы MFT, можно рассчитывать на временные положительные результаты. Однако к концу сеанса Windows занимает много места повторно : лог-файлы Windows накапливаются раз от раза, занимая порой сотни гигабайт, генерируя отдельные файлы пачками по 100 Мб каждый. «Вредная» папка вроде бы обнаружена — это C:WindowsTemp, однако поделать нельзя ничего: файлы с раcширением .cab заполняют временное хранилище до тех пор, пока свободное место на диске не исчезнет совсем. Это действие схоже с манёвром трояна, замаскированного под антивирус, который к концу «сеанса» сожрёт всё свободное место на HDD.

Windows занимает много места: суть вопроса

Разрабам Windows об этой проблеме давно известно. Известно, что проблема проистекает от результатов работы Компонентно-Ориентированного Обслуживания системы (Component-Based Servicing), создающего порой логи неимоверных размеров. Располагаются оные в папке C:WindowsLogsCBS. Текущий лог именуется как cbs.log. Но как только он достигает в своём размере некоего значения, запускаемый процесс очистки сразу переименовывает этот файл в файл типа .log и сразу пытается его сжать в размерах, присвоив в итоге получившемуся файлу расширение .cab. при помощи системной утилиты makecab.exe. Но вот тут-то пользователя порой и подстерегает «бонус»: когда файл cbs.log достигает размера 2 Гб перед тем, как процесс очистки успевает к нему обратиться за сжатием, указанная утилита.. с ним справиться не может — а он, мол, уже слишком большой: утилита makecab.exe откровенно «тупит», когда сталкивается с файлами таких размеров. Лог переименовывается в CbsPersist-время-дата.log и, когда makecab.exe пытается его сжать, появляется ошибка. Ошибка зацикливается и в итоге: каждые 15 — 30 мин. (у всех по-разному)

Windows занимает много места: вероятное решение

Итак, если вы столкнулись с ситуацией, когда раз от раза Windows занимает много места на жёстком диске, попробуйте так:

ustanovshhik modulej windows

Теперь makecab.exe не сможет неправильно обрабатывать файлы и захламление диска должно прекратиться. А если лог-файлы Windows не понадобятся, вы можете удалить и их.

Второй вариант

Скачайте, разархивируйте и запустите через Power Shell от имени администратора файл

Источник

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

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

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

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

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

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

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

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

100 МБ в вашей временной папке. Решение состоит в том, чтобы удалить файл журнала объемом 2 ГБ (это можно безопасно сделать, поскольку они используются только для устранения неполадок).

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

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

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

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

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

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

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

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

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

100 МБ в вашей временной папке. Решение состоит в том, чтобы удалить файл журнала объемом 2 ГБ (это можно безопасно сделать, поскольку они используются только для устранения неполадок). Большое спасибо SamB за публикацию, вы достигли первопричины этой проблемы. Я на Windows 7 SP1 64-разрядная. Я не могу поверить, что Microsoft еще не исправила это.

Источник

Понравилась статья? Поделить с друзьями:
  • Как найти код онлайн видео
  • Карта как найти драконов
  • Как найти прошивку для флешки
  • Кашель что это за ошибка как исправить
  • Need for speed rivals ошибка msvcp110 dll как исправить