Як відновити образ Windows за допомогою команди DISM

DISM (Обслуговування та керування образами розгортання) – це потужний інструмент, який дозволяє проводити сканування працездатності та відновлювати пошкоджені операційні системи Windows як в онлайн, так і в офлайн режимах.

Що являє собою команда DISM?

Чи стикалися ви з проблемами у роботі Windows 8, 8.1, 10 чи 11, такими як сині екрани, раптові збої програм, або некоректна робота утиліт чи функцій?

DISM (Обслуговування та керування образами розгортання) – це інтегрована в Windows утиліта командного рядка, призначена для усунення пошкоджених файлів та функцій операційної системи безпосередньо із серверів Windows в Інтернеті.

Інструмент використовується для обслуговування як активних (операційна система, що працює), так і неактивних образів Windows у форматах .wim, .vhd або .vhdx, з метою виправлення проблем. Доступ до DISM можливий через командний рядок і Windows PowerShell.

Системні адміністратори також використовують DISM для обслуговування, перенесення та створення нових образів, зокрема в середовищах Windows PE (середовище передінсталяції), Windows RE (середовище відновлення) та під час інсталяції Windows.

Вперше представлений у Windows 8 та Windows Server 2012 R2 у 2012 році, DISM тепер є невід’ємною частиною всіх сучасних операційних систем Microsoft.

Іншим інструментом для виправлення пошкоджених файлів є перевірка системних файлів (sfc.exe); проте, він зіставляє пошкоджені файли зі збереженим системним сховищем .wim. Якщо останнє пошкоджене, SFC може виявитися неефективним. DISM вирішує цю проблему, скануючи та відновлюючи сховище .wim на основі оригінальних копій, що зберігаються на серверах оновлень Microsoft.

У наступних розділах ми розглянемо деякі команди DISM та їхнє практичне використання з PowerShell і командним рядком Windows для сканування та відновлення операційної системи Windows:

Запуск утиліти DISM через командний рядок

Ви можете скористатися командним рядком для запуску DISM та перевірки й виправлення помилок Windows:

Введіть “cmd” (скорочення від “командний рядок”) у рядку пошуку.

Як показано нижче, клацніть правою кнопкою миші на “Командний рядок” та оберіть “Запуск від імені адміністратора”: для роботи з DISM потрібні права адміністратора.

Далі показано, як використовувати команди DISM для сканування та усунення проблем з Windows.

Відновлення Windows 10 за допомогою DISM

DISM використовує три ключові параметри для сканування, перевірки та відновлення пошкодженого образу Windows: ScanHealth, CheckHealth та RestoreHealth.

Додатково, є два ключі, які використовуються разом із зазначеними вище командами для більш детальної перевірки:

“Cleanup-Image” для детальної перевірки

“Online” для перевірки запущеної операційної системи.

Як використовувати команду DISM CheckHealth?

Аргумент CheckHealth запускає базову перевірку на наявність пошкоджень у сховищі компонентів. Він працює швидко, перевіряючи лише ті помилки, які вже були зафіксовані у файлі журналу. Ця команда сканує лише частину сховища компонентів.

Сховище компонентів відстежує та зберігає інформацію про кожен компонент операційної системи Windows. Для запуску CheckHealth в онлайн режимі, введіть у командному рядку наступну команду та натисніть Enter:

Dism /Online /Cleanup-Image /CheckHealth

Після завершення сканування з’явиться вікно, як показано нижче:

Як використовувати команду DISM ScanHealth?

ScanHealth потребує більше часу, ніж CheckHealth, оскільки він ретельно сканує сховище компонентів на наявність пошкоджень. Тривалість перевірки залежить від швидкості роботи вашої Windows 10.

Виконайте наступну команду з командного рядка для початку сканування:

Dism /Online /Cleanup-Image /ScanHealth

Після завершення сканування з’явиться вікно, як показано нижче:

ScanHealth перевіряє кожен компонент на наявність пошкоджень у сховищі, порівнюючи хеш-значення поточного файлу зі збереженим хеш-значенням, тому сканування Scanhealth зазвичай триває довше, ніж CheckHealth.

Також створюється файл журналу, який можна використовувати для аналізу помилок. Спочатку перевірте файл DISM.log на наявність проблем. Далі перевірте файли журналу Sessions.xml та CBS.log.

Як використовувати команду DISM RestoreHealth?

RestoreHealth є третім важливим параметром DISM, після CheckHealth та ScanHealth.

Він використовується з DISM для відновлення образу Windows в онлайн або офлайн режимі за допомогою різних вихідних файлів.

Наступна команда Restorehealth використовується для відновлення операційної системи в онлайн режимі:

DISM.exe /Online /Cleanup-image /Restorehealth

DISM використовує Windows Update для отримання необхідних файлів для виправлення пошкоджень під час виконання цієї команди. Залежно від ступеня пошкодження, сканування та відновлення сховища компонентів може зайняти певний час. З серверів Windows Update DISM автоматично завантажить та замінить пошкоджені або відсутні файли компонентів.

Після завершення команди з’явиться наступний екран:

Офлайн відновлення образів Windows

Вищенаведені команди DISM призначені для використання в онлайн режимі для поточної операційної системи Windows.

Додавання та видалення оновлень, драйверів, мовних пакетів та інші налаштування можна виконувати в автономному режимі через DISM.

Далі ми розглянемо, як DISM використовується для відновлення офлайн-файлів Windows.

Для виконання операцій в автономному режимі можна використовувати завантажувальні інсталяційні диски, ISO файли Windows 10 або локально збережені вихідні файли, такі як “install.wim” або “install.esd”, з іншого пристрою та підключити їх як диск.

Перш ніж продовжити, переконайтеся, що файли відповідають версії, випуску та мові Windows 10, яку ви хочете відновити.

Розглянемо приклад використання командного рядка DISM для відновлення офлайн-образу.

Для відновлення офлайн-образу запустіть наступну команду DISM у командному рядку:

Dism /Image:C:offline /Cleanup-Image /RestoreHealth /Source:c:testmountwindowsLimitAccess

Джерело потрібно змінити на ваш офлайн-образ, і зазвичай це файл WIM, VHD або VHDX.

LimitAccess вказує DISM не перевіряти Windows Update або Windows Server Update Services на наявність вихідних файлів.

Як запустити DISM через PowerShell?

У попередніх розділах ми розглянули використання командного рядка Windows для пошуку та усунення проблем з операційною системою. Аналогічні дії можна виконати за допомогою командлетів Windows PowerShell.

Введіть “PowerShell” у рядку пошуку та запустіть його з правами адміністратора, як показано на знімку екрана нижче, щоб отримати доступ до командлетів PowerShell.

powershell

Командлети DISM PowerShell часто безпосередньо відповідають аргументам у Dism.exe. Повний список команд DISM разом з їхніми еквівалентами у PowerShell можна знайти на веб-сайті Microsoft.

Для перегляду відповідного синтаксису, перемикачів та параметрів використовуйте команду довідки PowerShell “get-help – examples”.

Деякі з команд, які використовуються в PowerShell:

  • Для CheckHealth: Repair-WindowsImage -CheckHealth
  • Для ScanHealth: Repair-WindowsImage -ScanHealth
  • Для RestoreHealth: Repair-WindowsImage -RestoreHealth

Приклади використання PowerShell для виконання команди DISM

Введіть наступне, щоб запустити командлети CheckHealth у Powershell:

Repair-WindowsImage -online –CheckHealth

Після виконання команди з’явиться наступний екран:

Ви можете використовувати командлети ScanHealth Powershell для ретельної перевірки та виправлення:

Repair-WindowsImage -online –ScanHealth

Після успішного виконання команди з’явиться наступний екран:

Зверніть увагу, що для виконання цих команд потрібні права адміністратора, інакше ви отримаєте повідомлення про помилку “Запитана операція вимагає підвищення прав”, і команда DISM не спрацює.

Повну інформацію про модуль командлетів PowerShell можна знайти на цій сторінці Microsoft.

Вирішення проблем з DISM

Мета DISM – сканування та автоматичне відновлення операційної системи, однак іноді можуть виникати збої.

У цьому розділі ми розглянемо типові помилки, які можуть виникнути під час роботи з DISM.

Помилка: 0x800f0954 – DISM не вдалося. Операція не виконувалася.

Ця помилка досить поширена і виникає, коли команда DISM не виконується.

Причинами можуть бути: конфлікт з антивірусним програмним забезпеченням, активний проксі-сервер, проблеми зі службами оновлення Windows, доступ тільки для читання до install.wim тощо.

Розглянемо шляхи вирішення цих проблем для успішної роботи DISM.

Втручання антивіруса

Рішення: якщо помилка виникає після призупинення роботи антивіруса, можна видалити його та переінсталювати після завершення роботи DISM. Варто зазначити, що Microsoft Defender є надійним антивірусом для Windows 10, тому потреба у сторонніх антивірусах є мінімальною.

Пошкоджені компоненти оновлення Windows та реєстр

Якщо фонова інтелектуальна служба передачі (BITS), криптографічні служби (CryptSvc) та служби оновлення Windows налаштовані неправильно, DISM не працюватиме.

Рішення: для успішного запуску автоматичного оновлення Windows, ці служби повинні мати тип запуску “Автоматично” та статус “Запущено”. Іноді перезапуск цих служб допомагає вирішити проблему:

Вимкнення проксі

Використання проксі може захистити вашу конфіденційність, але при цьому блокує DISM під час виконання команди.

Рішення: вимкніть проксі та запустіть DISM знову.

Доступ до Install.wim тільки для читання

У більшості випадків файл install.wim копіюється з інсталяційного ISO-образу Windows 10 для запуску офлайн-сканування DISM. Якщо install.wim має атрибут “тільки для читання”, DISM не працюватиме.

Рішення: видаліть атрибут “тільки для читання”, перейшовши до “Властивостей” файлу install.wim через контекстне меню (клацніть правою кнопкою миші).

Як виправити помилку DISM 50

Помилка DISM 50 – ще один поширений тип помилки. Вона виникає при спробі виконання однієї з наступних команд:

  • Dism /Online /Cleanup-Image /CheckHealth
  • Dism /Online /Cleanup-Image /ScanHealth
  • Dism /Online /Cleanup-Image /RestoreHealth

Основною причиною цієї помилки є неправильне розташування розділу реєстру.

Щоб вирішити проблему, необхідно видалити наступний ключ:

Запустіть regedit через командний рядок для отримання доступу до реєстру.

Перейдіть до HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl.

Знайдіть папку MiniNT та видаліть її, як показано на малюнку нижче.

Перезавантажте комп’ютер після внесення змін.

Висновок

Інструмент DISM є багатофункціональним і потужним інструментом, який стане у пригоді фахівцям з технічною підготовкою, та ідеально підходить для системних адміністраторів. Цей складний інструмент здатен усунути пошкодження сховища компонентів, з якими SFC і CHKDSK не можуть впоратися, для вирішення проблем операційної системи.

Також можна ознайомитись з деякими найкращими інструментами відновлення для автоматичного усунення проблем Windows 10.