Ручная установка обновлений Windows из MSU и CAB файлов
Обновления для операционной системы Windows выпускаются в виде файлов с расширением MSU или CAB. Если на компьютере не работает (отключена) служба Windows Update (Центр обновления Windows), вы можете скачать и установить накопительные обновления или обновления безопасности Windows вручную. В этой статье мы покажем, как скачать и установить в Windows обновления в формате MSU и CAB файлов.
Как вручную скачать MSU файлы обновлений для Windows?
Microsoft выпускает обновления и патчи в формате CAB файла. Именно в таком виде ваш компьютер получает обновления с серверов обновлений Microsoft или локального сервера WSUS. Для более удобного ручного распространения отдельных обновлений клиентами через каталог обновлений Microsoft, такие CAB файлы упаковываются в специальный формат MSU (Microsoft Update Standalone Package).
Вы можете скачать MSU файлы обновлений Windows (а в некоторых случаях и CAB) и других продуктов MSFT можно в каталоге обновлений Microsoft (https://www.catalog.update.microsoft.com/). Перейдите в Microsoft Update Catalog, найдите и скачайте нужное обновление. К примеру, я хочу установить обновление стека 2022-05 Servicing Stack Update for Windows 10 Version 21H2 for x64-based Systems (KB5014032). Нажмите на кнопку Download.
Переместите скачанный файл ssu-19041.1704-x64_70e350118b85fdae082ab7fde8165a947341ba1a.msu в каталог C:temp. Переименуйте файл на более короткое имя — windows10-21h2-kb5014032.msu.
Установка обновлений из MSU файлов в Windows
Для запуска установки пакета обновления в Windows достаточно дважды щёлкнуть по скачанному MSU файлу. Если обновление применимо к данному компьютеру, откроется диалоговое окно Автономного установщика обновлений Windows (Windows Update Standalone Installer), в котором нужно подтвердить установку апдейта.
Также вы можете установить msu пакет обновления из командной строки с помощью утилиты wusa.exe.
Для установки обновления в «тихом» режиме (пользователю не будут показываться никакие всплывающие окна) с отложенной перезагрузкой, откройте командную строку с правами администратора и выполните команду:
wusa.exe c:Tempwindows10-21h2-kb5014032.msu /quiet /norestart
Через некоторое время проверьте, что обновление успешно установлено:
wmic qfe list | findstr 5014032
Или найдя в журнале событий Установка (Event Viewer -> Windows Logs -> Setup) запись с Event ID 2 от источника WUSA с текстом:
Windows update "Security Update for Windows (KB5014032)" was successfully installed. (Command line: "wusa.exe c:Tempwindows10-21h2-kb5014032.msu /quiet /norestart ")
Обновление Windows "Security Update for Windows (KB5014032)" было успешно установлено. (Командная строка: C:Windowssystem32wusa.exe c:Tempwindows10-21h2-kb5014032.msu /quiet /norestart)
Обратите внимание, что установка обновлений в msu формате в Windows через wusa.exe выполняется медленнее, чем при установке того же обновления в виде cab файла. Причина в выполнении дополнительного сканирования на серверах Windows Update/WSUS. См статью о медленной установке msu обновлений.
Как извлечь CAB файл из MSU обновления?
Если служба Windows Update (wuausrv) работает некорректно, вы не сможете установить обновление из MSU файла. В этом случае можно вручную распаковать пакет MSU, извлечь из него CAB файл обновления и вручную установить его в Windows.
Чтобы распаковать MSU пакет в каталог C:Tempkb4056887 (каталог нужно предварительно создать), выполните следующую команду:
expand -f:* “C:Tempwindows10.0-kb4056887-x64.msu” C:Tempkb4056887
Microsoft (R) File Expansion Utility Version 10.0.10011.16384 Copyright (c) Microsoft Corporation. All rights reserved. Adding C:Tempkb4056887WSUSSCAN.cab to Extraction Queue Adding C:Tempkb4056887Windows10.0-KB4056887-x64.cab to Extraction Queue Adding C:Tempkb4056887Windows10.0-KB4056887-x64-pkgProperties.txt to Extraction Queue Adding C:Tempkb4056887Windows10.0-KB4056887-x64.xml to Extraction Queue Expanding Files .... Expanding Files Complete ... 4 files total.
Как вы видите в каталоге появилось 4 типа файлов:
- .xml файл (Windows10.0-KB4056887-x64.xml) — содержит метаданные пакета msu и используется программой Wusa.exe
- .cab файл (Windows10.0-KB4056887-x64.cab — один или несколько) – непосредственно архив с обновлением Windows
- *pkgProperties.txt файл (Windows10.0-KB4056887-x64-pkgProperties.txt)– содержит свойства пакета (дата выпуска, архитектура, тип пакета, ссылка на KB и т.д.)
Также вы можете открыть любой MSU файла с помощью утилиты 7-ZIP и извлечь из него CAB файл.
Установка CAB файла обновлений в Windows 10/11
Вы можете установить CAB файл обновления в Windows двумя способами.
Наиболее универсальный способ установки обновления из CAB файл – утилита DISM.exe. Команда установки может быть такой:
DISM.exe /Online /Add-Package /PackagePath:c:Tempkb4056887Windows10.0-KB4056887-x64.cab
Deployment Image Servicing and Management tool Version: 10.0.10240.16384 Image Version: 10.0.10240.16384 Processing 1 of 1 - Adding package Package_for_KB4056887~31bf3856ad364e35~amd64~~10.0.1.0 [==========================100.0%==========================] The operation completed successfully.
Примечание. Обратите внимание, как быстро происходит установка пакета через DISM по сравнению со скоростью установки обновления из MSU файла.
Если нужно установить CAB пакет в тихом режиме и подавить запрос на перезагрузку компьютера после установки обновления, команда DISM будет такой:
start /wait DISM.exe /Online /Add-Package /PackagePath: c:Tempkb4056887Windows10.0-KB4056887-x64.cab /Quiet /NoRestart
Команда DISM.exe /Add-Package позволяет установить и MSU обновление (поддерживается только установка в офлайн образ Windows). Также вы можете в параметре
/PackagePath
указать путь к каталогу, в котором хранятся MSU и CAB файлы обновлений. DISM рекурсивно просканирует указанные каталог и вложенные папки и установит в образ Windows все найденные CAB и MSU пакеты.
Здесь нужно отметить, что команда DISM.exe /Add-Package не проверяет зависимости и требования к окружению при добавлении CAB файла в образ Windows (в отличии от wusa.exe которая предварительно проверяет, применимо ли MSU обновление к компьютеру.
Для установки CAB файлов в образ Windows вместо команды DISM /Add-Package можно использовать PowerShell командлет
Add-WindowsPackage -Online -PackagePath "C:win10_kb123456.cab"
В Windows 8 и Windows 7 можно установить обновление с помощью менеджера пакетов Pkgmgr. Команда:start /w Pkgmgr /ip /m:c:"c:Tempkb4056887Windows-KB123456.cab"
Note: The PkgMgr.exe has been deprecated. Please update your scripts to use dism.exe to extract, install, uninstall, configure and update features and packages for Windows.
Примечание. Обратите внимание, что языковые пакеты Windows (MUI) также распространяются в формате CAB. Однако не получиться использовать для их установки команду DISM. Вместо этого, для установки новых языков в систему нужно использовать отдельную утилиту lpksetup.exe.
Вы можете добавить в контекстное меню File Explorer контекстное меню для установки CAB файлов. Для этого добавьте следующие *.reg файл в реестр:
Windows Registry Editor Version 5.00 [-HKEY_CLASSES_ROOTCABFolderShellRunAs] [HKEY_CLASSES_ROOTCABFolderShellRunAs] @="Install" "HasLUAShield"="" [HKEY_CLASSES_ROOTCABFolderShellRunAsCommand] @="cmd /k dism /online /add-package /packagepath:"%1""
Теперь для установки CAB файла нужно выбрать пункт Install в контекстном меню.
Установка CAB и MSU обновления с помощью скриптов
Если вам нужно установить сразу несколько CAB или MSU обновлений на компьютере, вы можете использовать BAT и PowerShell скрипты. Благодаря таким скриптам вам не придется по ставить обновления вручную по одному.
Создайте на диске каталог с обновлениями и скопируйте в него все MSU файлы, которые нужно обновить. Теперь для установки всех обновлений из указанного каталога, достаточно запустить скрипт install_msu.bat:
Set Folder="C:updates"
for %%f in (%Folder%*.msu) do (
wusa.exe %%f /quiet /norestart
)
По аналогии можно использовать PowerShell скрипт для установки MSU обновлений из указанной папки:
$dir = (Get-Item -Path c:temp -Verbose).FullName
Foreach($item in (ls $dir *.msu -Name))
{
echo $item
$item = $dir + "" + $item
wusa $item /quiet /norestart | Out-Null
}
Данная инструкция по ручной установке накопительных (если вы не помните что это такое, прочитайте статью про новую модель обновлений Windows систем) и любых других обновлений Windows применима ко всем поддерживаемым версиям ОС: Windows 11/10/8.1 и Windows Server 2022/2019/2016/2012R2.
Windows 10
Ручная установка обновлений Windows из MSU и CAB файлов