Table of Contents
- Issue
- Reason
- Resolution
- Troubleshooting
Issue
Windows updates failed to install with error code: 800F0831 in Windows Server 2012 R2
Reason
If any previous update is missing on the server then you will get the above error. To find the missing patch you have to check the CBS logs on the affected server and you will find the similar entries like below.
2017-05-10 10:09:45, Error CBS Failed to resolve package 'Package_514_for_KB3205401~31bf3856ad364e35~amd64~~6.3.1.4' [HRESULT = 0x800f0831 - CBS_E_STORE_CORRUPTION]
2017-05-10 10:09:45, Info CBS Mark store corruption flag because of package: Package_514_for_KB3205401~31bf3856ad364e35~amd64~~6.3.1.4. [HRESULT = 0x800f0831 - CBS_E_STORE_CORRUPTION]
In this case, it was KB3205401 missing on the server. hence request you to find out the correct missing package on the server and install it to resolve the issue
Resolution
- Install the missing patch and reboot the server.
- Post reboot try patching it will resolve the issue completely.
Troubleshooting
If the missing patch does not install: reported not applicable; remove the update via DISM first. Note the KB detailed within the CBS log after «Store corruption, manifest missing for package:»; In this case KB3205401. This KB is not installed
or visible within control panel or Powershell (get-hotfix | select hotfixid) however, the manifest file is present within the folder C:WindowsservicingPackages.
Download the KB3205401 MSU file from the Microsoft Update catalog and extract the CAB file to a temp directory.
expand C:tempupdateswindows8.1-kb3205401.msu /f:* C:tempupdateskb3205401
Then remove the package using DISM; this will in affect remove the manifest file from C:WindowsservicingPackages
dism /online /remove-package:C:TempUpdateskb3205401Windows8.1-KB3205401-x64.cab
Finally after removing the corrupted manifest files /updates the intended update will install via DISM/SCCM successfully and the CBS log will not have any corruption errors.
Dism /online /add-package /packagepath:C:TempUpdateskb123456Windows8.1-KB123456-x64.cab
Ошибка 0x800f0831 обычно обнаруживается уязвимыми пользователями в WindowsUpdate.log с помощью средства просмотра событий после сбоя обычной установки накопительного обновления. Хотя эта проблема в основном возникает в связи со службами Windows Server Update, она также подтверждается в версиях Windows для конечных пользователей.
Ошибка Центра обновления Windows 0x800f0831
Как выясняется, наиболее распространенной причиной, которая вызывает это сообщение об ошибке, является отсутствие манифеста предыдущего пакета обновления. Другими словами, компонент WU (Центр обновления Windows) не знает, что было установлено в последний раз, поэтому он отказывается устанавливать новые пакеты обновлений. Если этот сценарий применим, вы можете решить проблему, установив отсутствующее обновление вручную.
Другой потенциальной причиной, которая приведет к ошибке 0x800f0831, является сценарий, в котором ваш компьютер конечного пользователя не может обмениваться данными с серверами Центра обновления Windows. Этому может способствовать повреждение системных файлов или VPN-соединения или прокси-серверы.
Однако проблема также может быть вызвана отключенной службой WU или отсутствием .NET 3.5 Framework. В этом случае вам потребуется включить платформу из меню «Функции Windows» или установить ее с совместимого установочного носителя.
В редких случаях обновления Windows могут завершиться с ошибкой 0x800f0831 из-за некоторого типа повреждения системы. Эту проблему можно решить с помощью восстановления системы, выполнения сканирования SFC и DISM или путем обновления компонентов вашей ОС (с помощью чистой установки или восстановления установки).
Способ 1. Установите отсутствующее обновление вручную
Если вы ищете быстрый способ решения проблемы, лучший шанс решить проблему за один раз — установить сбойное обновление вручную. Как выясняется, существует одно сбойное обновление, которое, как сообщается, является причиной этой проблемы (KB4512489).
Если этот сценарий применим, вы можете использовать каталог Центра обновления Майкрософт, чтобы найти и установить отсутствующий пакет вручную. Это эффективно в тех ситуациях, когда проблема вызвана поврежденной зависимостью WU. Несколько пострадавших пользователей подтвердили, что эта операция работает для них.
Вот краткое руководство по использованию каталога Центра обновления Майкрософт для исправления ошибки 0x800f0831:
- Используйте браузер по умолчанию и перейдите по этой ссылке (Вот) для доступа к каталогу Центра обновления Майкрософт.
- Как только вам удастся приземлиться в правильном месте, воспользуйтесь функцией поиска в верхнем правом углу экрана, чтобы найти обновление, которое обычно не устанавливается.Поиск обновления, которое вы хотите установить вручную
- Когда вы увидите список результатов, найдите соответствующий драйвер и решите, какой драйвер загрузить в соответствии с архитектурой вашего процессора и уязвимой версией Windows.Выбор правильного Центра обновления Windows
- После того, как вам удастся найти правильное обновление Windows для вашей ситуации, нажмите на кнопку «Загрузить», связанную с ним, и дождитесь завершения процесса.
- Как только загрузка будет завершена, перейдите в папку, в которую вы ее загрузили, затем щелкните правой кнопкой мыши на INF-файле и выберите «Установить» в появившемся контекстном меню.Установка драйвера Inf
- На экране установки драйвера следуйте инструкциям на экране для завершения процесса установки, а затем перезагрузите компьютер.
Если эта операция не позволила вам обойти ошибку 0x800f0831 или вы ищете метод, который исправит компонент, вызывающий проблему, перейдите к следующему потенциальному исправлению ниже.
Способ 2: отключить VPN или прокси-сервер (если применимо)
Второй по величине причиной, которая может вызвать ошибку 0x800f0831, является какое-то вмешательство, которое приводит к блокировке связи между вашей версией Windows для конечного пользователя и сервером Windows Update. В подавляющем большинстве зарегистрированных случаев эта проблема была создана VPN-клиентом или прокси-сервером.
Некоторые пользователи, которые изо всех сил пытались решить эту проблему, подтвердили, что им удалось решить проблему путем удаления своего VPN-клиента или отключения прокси-сервера (в зависимости от сценария, который был применим).
Мы разработали два отдельных руководства, чтобы учесть оба сценария, которые могут быть применимы, поэтому следуйте тому, какое из них применимо к вашей текущей ситуации.
Примечание. Если вы не используете ни VPN-соединение, ни прокси-сервер, пропустите нижестоящие руководства и перейдите непосредственно к способу 3.
Отключить VPN-соединение
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Затем введите «appwiz.cpl» и нажмите Enter, чтобы открыть меню «Программы и компоненты».Введите appwiz.cpl и нажмите Enter, чтобы открыть список установленных программ.
- Как только вам удастся попасть на экран «Программы и компоненты», прокрутите вниз список приложений, которые вы установили и обнаружили стороннюю VPN, которая, как вы подозреваете, может вызывать проблему.
- Когда вы найдете стороннее решение VPN, которое, как вы подозреваете, может вызывать проблему, щелкните его правой кнопкой мыши и выберите «Удалить» из появившегося контекстного меню.Удаление инструмента VPN
- Как только вы попадете на экран удаления, следуйте инструкциям на экране для завершения процесса, а затем перезагрузите компьютер.
- После завершения следующей последовательности запуска попытайтесь установить сбойное обновление еще раз и посмотрите, не возникла ли у вас такая же проблема.
Отключить прокси-сервер
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Внутри текстового поля введите «ms-settings: network-proxy» и нажмите Enter, чтобы открыть вкладку «Прокси» собственного меню «Настройки».Запуск диалога: MS-настройки: сеть-Wi-Fi
- Перейдя на вкладку «Прокси», прокрутите вниз до раздела «Настройка прокси вручную», а затем просто отключите переключатель, связанный с «Использовать прокси-сервер».Отключение использования прокси-сервера
- После того, как вам удастся выполнить эту модификацию, перезагрузите компьютер и посмотрите, была ли проблема решена при следующем запуске компьютера.
Если ни один из этих двух сценариев, где это применимо, перейдите к следующему потенциальному исправлению ниже.
Способ 3: установите статус Центра обновления Windows на Автоматический
Если компьютер, на котором происходит сбой установки Центра обновления Windows, является частью общего домена, возможно, сетевая политика или средство оптимизации системы сторонних производителей в конечном итоге отключили основную службу, отвечающую за функцию обновления.
Если этот сценарий применим, вы можете решить проблему, открыв экран «Службы», установите для параметра «Тип запуска» значение «Автоматический» и принудительно запустите службу Центра обновления Windows.
Вот краткое руководство о том, как это сделать:
Примечание. Приведенные ниже шаги должны быть универсальными, поэтому вы должны следовать им независимо от используемой версии Windows.
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Затем введите «services.msc» внутри текстового поля и нажмите Enter, чтобы открыть экран «Службы».Введите «services.msc» в диалоговом окне «Выполнить» и нажмите EnterПримечание. Если вас попросит UAC (Контроль учетных записей), нажмите Да, чтобы предоставить административные привилегии.
- Как только вы окажетесь на экране «Службы», прокрутите список локальных служб и найдите службу Windows Update. Как только вы увидите его, либо дважды щелкните по нему, либо щелкните правой кнопкой мыши и выберите «Свойства» в контекстном меню.Свойства Центра обновления Windows
- После того, как вам удастся попасть на экран свойств Центра обновления Windows, выберите вкладку «Общие» и начните с установки раскрывающегося меню, связанного с типом запуска, на «Автоматический».
Установка типа запуска службы обновления Windows на автоматический - Нажмите Применить, чтобы сохранить изменения, затем перезагрузите компьютер и посмотрите, будет ли проблема решена при следующем запуске компьютера.
В случае, если тип запуска Центра обновления Windows уже был установлен на Автоматически, и это не решило проблему, перейдите к следующему способу ниже.
Способ 4. Включение .NET Framework 3.5
Если вы столкнулись с проблемой при попытке установить накопительное обновление, вам следует изучить возможность отключения платформы .NET 3.5. Процесс установки накопительных обновлений является более сложным и может завершиться ошибкой, если не включены все необходимые зависимости.
Несколько затронутых пользователей подтвердили, что им удалось решить проблему с помощью меню «Функции Windows», чтобы убедиться, что платформа .NET 3.5 отключена.
Вот краткое руководство по включению .NET Framework на вашем компьютере с Windows:
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Внутри текстового поля введите «appwiz.cpl» и нажмите Enter, чтобы открыть меню «Программы и компоненты».Введите appwiz.cpl и нажмите Enter, чтобы открыть список установленных программ.
- Когда вы окажетесь в меню «Программы и компоненты», нажмите «Включить или отключить функции Windows» (в левой части экрана).В разделе «Программы и компоненты» нажмите «Включить или отключить компоненты Windows».
- На экране функций Windows убедитесь, что установлен флажок, связанный с .NET Framework 3.5 (включая .NET 2.0 и 3.0), и нажмите кнопку «ОК», чтобы сохранить изменения.Включение .NET Framework 3.5
- Нажмите кнопку «Да» в окне подтверждения, затем дождитесь включения 3.5 .NET Framework. Как только это произойдет, перезагрузите компьютер и посмотрите, будет ли проблема решена после следующего запуска компьютера.
Если вы все еще сталкиваетесь с той же ошибкой 0x800f0831, перейдите к следующему потенциальному исправлению ниже.
Способ 5: установка .NET Framework 3.5 через CMD
В случае, если описанный выше метод вызвал ошибку, когда вы попытались включить .NET Framework 3.5, или опция не была доступна на экране компонентов Windows, вы можете самостоятельно выполнить установку, установив отсутствующую платформу с терминала CMD с повышенными правами.
Мы собираемся создать собственный сценарий CMD, который будет принудительно устанавливать .NET Framework 3.5 и автоматически применять команды.
Но имейте в виду, что для этого вам понадобится совместимый установочный носитель Windows. Если у вас его нет наготове, вам нужно его создать.
Примечание. Ниже описано, как создать совместимый установочный носитель для Windows 7 (здесь) и Windows 10 (здесь).
Когда вы получите готовый носитель, следуйте приведенным ниже инструкциям, чтобы принудительно установить .NET Framework 3.5 из командной строки с повышенными привилегиями CMD:
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Затем введите «notepad.exe» и нажмите Ctrl + Shift + Enter, чтобы открыть окно блокнота с повышенными правами. Когда вас попросит UAC (Контроль учетных записей), нажмите Да, чтобы предоставить административные привилегии.Открытие повышенного окна Блокнота
- Внутри окна блокнота с повышенными правами вставьте следующий код:
@echo off Title .NET Framework 3.5 Offline Installer for %%I in (D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist "%%I:\sourcesinstall.wim" set setupdrv=%%I if defined setupdrv ( echo Found drive %setupdrv% echo Installing .NET Framework 3.5... Dism /online /enable-feature /featurename:NetFX3 /All /Source:PLACEHOLDER:sourcessxs /LimitAccess echo. echo .NET Framework 3.5 should be installed echo. ) else ( echo No installation media found! echo Insert DVD or USB flash drive and run this file once again. echo. ) pause
Примечание. Замените PLACEHOLDER на букву диска, на котором в данный момент находится установочный носитель.
- Как только код будет успешно вставлен, перейдите в «Файл»> «Сохранить как» и выберите подходящее место, где вы хотите сохранить файл.Сохранение скрипта в произвольном месте
- Вы можете назвать исправление так, как хотите, но важно, чтобы оно заканчивалось расширением * .cmd *. Затем нажмите Сохранить, чтобы создать сценарий, который, мы надеемся, исправит ошибку 0x800f0831.
Создание исправления CMD - Перейдите в папку, в которой вы сохранили файл .cmd, затем щелкните его правой кнопкой мыши и выберите «Запуск от имени администратора» из контекстного меню. Затем нажмите кнопку «Да» в окне подтверждения и дождитесь завершения процесса.
- После установки .NET 3.5 Framework перезагрузите компьютер и посмотрите, будет ли проблема решена при следующем запуске компьютера.
Если вы все еще сталкиваетесь с той же ошибкой 0x800f0831, перейдите к следующему потенциальному исправлению ниже.
Метод 6: Выполнение сканирования SFC и DISM
Если ни один из приведенных ниже способов не позволил вам исправить ошибку 0x800f0831, вполне вероятно, что проблема на самом деле вызвана каким-либо повреждением системных файлов. В случае, если этот сценарий применим, вы должны начать с запуска нескольких утилит (DISM и SFC), которые оснащены для исправления и замены поврежденных экземпляров.
DISM (Deployment Image Servicing and Management) — это инструмент, который сильно зависит от подкомпонента WU. Требуется подключение к Интернету, чтобы исправить поврежденные системные файлы.
С другой стороны, SFC (System File Checker) является на 100% локальным и использует локально кэшированный архив для замены поврежденных данных на работоспособные эквиваленты.
Поскольку две утилиты работают по-разному, мы рекомендуем вам запускать обе программы в быстрой последовательности, чтобы максимально увеличить ваши шансы на успех.
Вот краткое руководство по выполнению сканирования SFC и DISM из приглашения CMD с повышенными правами:
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Затем введите «cmd» и нажмите Ctrl + Shift + Enter, чтобы открыть командную строку с повышенными привилегиями. Когда вы увидите UAC (Контроль учетных записей), нажмите Да, чтобы предоставить доступ администратора.Введите «cmd» в диалоговом окне «Выполнить»
- Как только вы окажетесь внутри командной строки с повышенными правами CMD, введите следующую команду и нажмите Enter, чтобы запустить SFC scan.sfc / scannow.Примечание. Эта утилита будет использовать локально кэшированные данные для замены любых плохих файлов Windows на исправный эквивалент. Но как только вы начнете это сканирование, не закрывайте его пораньше — это приводит к тому, что ваша система подвергается воздействию плохих секторов, которые могут создавать различные проблемы.
- После завершения сканирования SFC перезагрузите компьютер и дождитесь завершения следующего запуска.
- При следующем запуске снова выполните шаг 1, чтобы открыть еще один повышенный терминал CMD. На этот раз выполните приведенную ниже команду, чтобы запустить сканирование DISM: dism / online / cleanup-image / restorehealthПримечание. Перед началом этой процедуры убедитесь, что ваше интернет-соединение стабильно. DISM использует Центр обновления Windows для загрузки исправных копий поврежденных системных файлов, которые необходимо заменить.
- После завершения операции перезагрузите компьютер и проверьте, устранена ли проблема при следующем запуске компьютера.
Если вы все еще имеете дело с той же ошибкой 0x800f0831, перейдите к последнему исправлению ниже.
Метод 7: Использование восстановления системы
Если вы начали замечать эту проблему только недавно после установки драйвера или обновления или после неожиданного выключения компьютера, и ни одно из ожидающих обновлений не установлено, вероятно, недавнее изменение системы привело к невозможности установки обновлений.
Если этот сценарий применим, вы сможете исправить эту проблему с помощью утилиты восстановления системы, чтобы вернуть компьютер в рабочее состояние, когда эта проблема не возникала.
Помните, что по умолчанию Windows 7, Windows 8.1 и Windows 10 настроены на регулярное сохранение новых снимков восстановления (при важных системных событиях). Поэтому, если вы не изменили это поведение по умолчанию (или стороннее приложение сделало это за вас), у вас должно быть множество снимков восстановления на выбор.
Но имейте в виду, что использование моментального снимка восстановления системы означает, что любые изменения, сделанные после создания моментального снимка, также будут потеряны. Это включает в себя любые установленные приложения, игры и любые другие системные изменения, которые вы сделали за этот период времени.
Если вы знаете о последствиях, ниже приведены пошаговые инструкции по восстановлению системы для восстановления работоспособного состояния компьютера:
- Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить». Затем введите «rstrui» и нажмите Enter, чтобы открыть меню «Восстановление системы».Открытие мастера восстановления системы через окно «Выполнить»
- Как только вы окажетесь на начальном экране восстановления системы, нажмите Далее, чтобы перейти к следующему меню.Использование восстановления системы
- На следующем экране запустите операцию, установив флажок «Показать больше точек восстановления». Затем начните со сравнения дат каждой сохраненной точки восстановления и выберите дату, которая старше, чем возникновение этой проблемы.Восстановление вашей системы к предыдущему моменту времени. Примечание. Но не выбирайте слишком старую точку восстановления, чтобы не потерять столько данных.
- Выбрав правильную точку восстановления системы, нажмите Далее, чтобы перейти к следующему меню.
- После этого утилита настроена и готова к работе. Чтобы применить это исправление, просто нажмите «Готово», чтобы начать процесс. После этого ваш компьютер будет перезагружен, и при следующем запуске системы будет применено старое состояние.Запуск процесса восстановления системы
Если ошибка 0x800f0831 все еще происходит или этот метод не применим, перейдите к следующему потенциальному исправлению ниже.
Метод 8: Выполнение чистой установки / ремонта
Если вы зашли так далеко, и ни один из вышеперечисленных методов не позволил вам решить проблему, это, скорее всего, связано с неким повреждением системы, которое не может быть решено традиционным способом. Если этот сценарий применим, ваш единственный шанс исправить проблему — сбросить все компоненты Windows.
Когда дело доходит до этого, у вас есть два варианта:
- Чистая установка — это самое простое решение из двух. Вам не нужен установочный носитель, и вы можете развернуть это исправление непосредственно из графического интерфейса Windows 10, Windows 8.1 и Windows 7. Однако, если вы заранее не сделаете резервную копию своих данных, ожидайте полной потери личных данных.
- Восстановите установку — если вы ищете более сфокусированный подход, вы должны использовать этот метод. Вам понадобится совместимый установочный носитель, но главное преимущество заключается в том, что вы сможете хранить все свои личные данные, включая приложения, приложения, личные носители и даже некоторые пользовательские настройки.
Следуйте за тем методом, который вам удобнее.
Ошибка с кодом 0x800f0831 появляется при установке обновления Windows и может быть вызвана разными причинами.
Сообщение об ошибке с кодом 0x800f0831
Такой сбой может наблюдаться, если при установке накопительных обновлений «Центр обновления» не может определить, какое именно обновление было установлено ранее, из-за чего он не способен произвести установку нового. Причиной также может послужить отключение службы центра обновлений, невозможность соединения с серверами «Центра обновления» из-за включенного VPN или прокси-сервера, отсутствие в системе нужных библиотек или наличие повреждений в системных файлах ОС.
Из этой статьи вы узнаете, как исправить ошибку 0x800f0831 в Виндовс в зависимости от причины ее возникновения.
Устанавливаем обновление вручную
Если проблемное обновление не удается установить автоматически, мы можем загрузить и установить его вручную.
- Сначала нам необходимо узнать номер обновления, при установке которого возникает ошибка. Для этого с помощью комбинации клавиш «Windows» + «I» откроем «Параметры» Windows 10 и перейдем в раздел «Обновление и безопасность».
Открываем раздел «Обновление и безопасность»
- В окне «Центр обновления Windows» нажимаем на пункт «Просмотр журнала обновлений» и находим обновление, рядом с которым отображается код ошибки 0x800f0831.
Просматриваем журнал обновлений
- Затем нам следует перейти в «Каталог Центра обновления Майкрософт», ввести в поле поиска номер нужного обновления и нажать кнопку «Найти».
Вводим номер обновления в строке поиска
- В результатах поиска ищем обновление, которое соответствует версии установленной на нашем компьютере операционной системы, и жмем на кнопку «Загрузить».
Находим нужное обновление в результатах поиска и загружаем его
- После скачивания обновления, устанавливаем его вручную и перезагружаем ПК.
Загрузка …
Отключаем VPN и прокси-сервер
VPN или прокси-сервер могут блокировать подключение к серверам «Центра обновления Windows». Попробуем отключить эти настройки.
- Воспользуемся клавишами «Windows» + «I» для открытия окна «Параметры» в Windows 10 и перейдем в раздел «Сеть и Интернет».
Открываем раздел «Сеть и Интернет»
- Перейдем в раздел «Прокси-сервер» и установим переключатель «Использовать прокси-сервер» в положение «Отключено». Также деактивируем соответствующие настройки в разделе «VPN».
Деактивируем прокси-сервер и VPN
- Перезагружаем компьютер и пробуем установить обновление.
Загрузка …
Если предыдущий способ не помог, возможно какое-то стороннее ПО отключило службу «Центра обновления Windows». В этом случае следует настроить ее автозапуск.
- Нажмем клавиши «Windows» + «R», чтобы открыть окно «Выполнить», введем команду services.msc и подтвердим ее кнопкой «ОК» или клавишей «Enter».
Открываем окно «Службы»
- Откроется окно со списком всех служб Windows. В конце этого списка найдем службу «Центр обновления» и дважды щелкнем по ее названию.
Находим в списке службу «Центр обновления»
- Отобразится окно свойств выбранной службы. На вкладке «Общие» раскроем список «Тип запуска» и выберем пункт «Автоматически», затем нажмем кнопку «ОК».
Выбираем автоматический тип запуска службы
- Закроем окно «Службы», перезагрузим компьютер и снова попробуем обновить Windows, чтобы проверить, не исчезла ли ошибка с кодом 0x800f0831.
Загрузка …
Включаем компонент .NET Framework 3.5
Если в операционной системе Виндовс деактивирован компонент «.NET Framework 3.5», его отсутствие также может привести к ошибке 0x800f0831 при установке обновлений.
- Откроем раздел «Программы и компоненты» панели управления Windows. Для этого нажимаем горячие клавиши «Windows» + «R», в окне «Выполнить» вводим команду appwiz.cpl и подтверждаем ее, нажав кнопку «ОК» или клавишу «Enter».
Открываем окно «Программы и компоненты»
- В левой части окна выбираем пункт «Включение и отключение компонентов Windows». На экране появится окно «Компоненты Windows», где нам нужно включить компонент «.NET Framework 3.5», установив соответствующий флажок и нажав кнопку «ОК».
Активируем компонент «.NET Framework 3.5»
- После установки выбранного компонента перезагружаем компьютер.
Загрузка …
Восстанавливаем поврежденные системные файлы
Если ни один из описанных в данной статье способов не помог справиться с ошибкой, вероятно, системные файлы были повреждены, так что нам необходимо произвести их восстановление. Воспользуемся утилитой «Windows PowerShell», запустив ее от имени администратора.
- Нажмем сочетание клавиш «Windows» + «R» и запустим приложение «PowerShell» из окна «Выполнить». В поле ввода набираем команду powershell, а затем, чтобы запустить оболочку с правами администратора, нажмем кнопку «ОК», удерживая клавиши «Ctrl» + «Shift».
Запускаем «PowerShell» от имени администратора из окна «Выполнить»
- Запустим программу «System File Checker» (SFC), которая проверит системные файлы ОС и в случае необходимости восстановит их. Для этого введем в командную строку: sfc /scannow и подтвердим команду клавишей «Enter». Процесс займет определенное время, нужно дождаться его окончания, а затем перезагрузить ПК.
Запускаем сканирование системных файлов программой «System File Checker»
- После перезагрузки снова запустим оболочку «Windows PowerShell» с привилегиями администратора и воспользуемся другим инструментом восстановления системных файлов «Deployment Image and Service» (DISM). Для этого напечатаем в командной строке следующий текст: dism /Online /Cleanup-image /Restorehealth. После нажатия клавиши «Enter» будет запущено сканирование, нам также необходимо дождаться его завершения и перезагрузить компьютер.
Запускаем проверку системных файлов программой «Deployment Image and Service»
Загрузка …
Мы перечислили различные причины появления ошибки 0x800f0831 и описали несколько вариантов решения данной проблемы. Один из них должен помочь вам устранить сбой при установке обновлений Windows.
Загрузка …
Post Views: 7 279
I recently had an issue installing Windows updates on some servers running Windows Server 2012 R2. The server would install most updates but not the monthly update rollups or the security only updates.
I checked the event logs and saw event 0x800F0831
This didn’t give much information on why the update was failing so I checked the CBS log under C:WindowsLogsCBS and found the below error. This pointed to a missing or corrupted update for KB4343898 which in my case was the August 2018 monthly update rollup.
CBS Failed to resolve package ‘Package_1101_for_KB4343898~31bf3856ad364e35~amd64~~6.3.1.9’ [HRESULT = 0x800f0831 – CBS_E_STORE_CORRUPTION]
CBS Mark store corruption flag because of package: Package_1101_for_KB4343898~31bf3856ad364e35~amd64~~6.3.1.9. [HRESULT = 0x800f0831 – CBS_E_STORE_CORRUPTION]
Next step was to check to see if the update was showing on the server so I used the PowerShell command Get-hotfix to search for the update.
Get-hotfix | where {$_.hotfixid -like “KB4343898”}
If I check the package folder C:WindowsservicingPackages I can see the update is referenced but not the package showing the error in the CBS log.
I had this issue a few years back and the fix was to add the update using Dism and the update cab file. To extract the update run expand updatefile /f:* exportpath
expand C:tempwindows8.1-kb4343898-x64.msu /f:* C:tempKB4343898Once the update is extracted use Dism to add the problematic update this should install the missing files.
Dism /online /Add-package:C:tempKB4343898Windows8.1-KB4343898-x64.cab
Once completed reboot the server if required, then try the update again, it should now install without issue.
Published
October 15, 2018December 24, 2020
Иногда при установке обновлений Windows происходят ошибки, и иногда они влияют не только на одно конкретное обновление, но и начинают мешать в дальнейшем.
Ниже набросаю чеклист, для борьбы с этим неприятным явлением с примерами из моей практики
Симптом: не устанавливаются обновления Windows Update с ошибкой 800f0831. Это касается не всех подряд обновлений, а какой-то части из них. Проблемы с установкой могут тянуться месяцами, без особого влияния на сервер в целом.
- Проверьте логи CBS, они расположены тут:
C:WindowsLogsCBSCBS.log
Обычно в них можно найти строку с упоминанием о проблеме поиском вхождения «, Error» (В нашем случае это: Failed to resolve package ‘Package_1103_for_KB4462926~31bf3856ad364e35~amd64~~6.3.1.5’ [HRESULT = 0x800f0831 — CBS_E_STORE_CORRUPTION]). Часто там ссылаются на ранее некорректно установленное обновление, или побитое хранилище. Запоминаем виновника торжества (в нашем случае это KB4462926 Конкретная часть Package_1103 — нам не принципиальна. Все равно удалятьлечить будем все KB целиком) - Пробуем установить разные обновления по отдельности, каждый раз проверяем CBS-лог, убеждаемся, что проблема именно в этом самом криво установленном обновлении
- Идем на http://catalog.update.microsoft.com и скачиваем интересующее нас обновление из первоисточника
- Распаковываем его из MSU до *.cab (можно обычным 7-zip, например)
- Дальше начинаем играться разными методами. Какой именно сработает — сложно предсказать
- Перенастраиваем источник обновлений на глобальный Windows update (отключаем от WSUS если он используется)
- Удаляем в WSUS запись для этого сервера (если он тянет обновления именно с WSUS). Это нужно, т.к. при настройке на WSUS могут некорректно отрабатывать ключи /Online в утилите DISM. Подробнее тут
- Пробуем полечить хранилище с помощью команд
DISM /Online /Cleanup-Image /CheckHealth (проверяет «флаг состояния хранилища». время выполнения 10-20 сек)
DISM /Online /Cleanup-Image /ScanHealth (собственно сканирует само хранилища на предмет онаружения в нем ошибок. Время выполнения 10-20 мин)
DISM /Online /Cleanup-Image /RestoreHealth (пытается полечить хранилище. время выполнения 10-20 мин) - Часто вышеприведенные команды не дают результата, поэтому идем далее. Пробуем удалить битое обновление командой DISM /online /remove-package /packagepath:E:DistribKB4462926unpackWindows8.1-KB4462926-x64.cab Используем именно ключ /packagepath с полным путем к распакованному обновлению
- Если после удаления «битого обновления» нормальные все равно продолжают на него ругаться, что ж попробуйте заново установить это битое обновление. И тут есть нюанс: если просто жмакнуть на MSU файл, система ругается что обновление для нее неподходящее и не ставит его. А вот если запустить команду
DISM /online /add-package /packagepath:E:DistribKB4462926unpackWindows8.1-KB4462926-x64.cab то обновление нормально добавляется в хранилище.