Используя DISM в командной строке для проверки хранилища компонентов Windows или других целей, некоторые пользователи могут столкнуться с ошибкой 87: «Неизвестный параметр» или «Параметр не распознан в этом контексте».
В этой инструкции подробно о причинах ошибки 87 в командной строке при использовании DISM в Windows 11, Windows 10 и 7 и о возможных способах её исправления.
Проверьте правильность ввода команды DISM
Самая распространенная причина ошибки 87, особенно если речь идёт не о старых ОС, а о Windows 11 и Windows 10 — синтаксические ошибки при вводе команды.
Чаще всего это бывают следующие варианты ошибок:
- Отсутствие пробелов перед знаком «/» в указанных параметрах команды DISM.
- Неправильный порядок указания параметров (например, если изменить порядок параметров checkhealth и cleanup-image, вы получите указанную ошибку).
- Также русскоязычные пользователи, случается, путают латинские буквы C и S, U и Y.
Даже если вы копируете команду с какого-то сайта, следует учитывать, что ошибки могут быть и там — опечатки, копирование кода с ошибками, никто от этого не застрахован.
Версия DISM
Версии DISM и набор поддерживаемых команд отличаются. Не все команды, которые работают в DISM из Windows 11/10 будут работать в Windows 7 и 8.1. К примеру, если в современной ОС с DISM 10-й версии использовать команду
DISM /online /cleanup-image /checkhealth
она будет исправно работать.
Если ту же команду ввести в Windows 7, с DISM версии 6.1, результатом будет ошибка 87:
Возможные варианты решения:
- Не использовать неподдерживаемые команды, если они не критичны для получения нужного результата.
- Установить последнюю версию DISM, это можно сделать даже в старой версии системы, что будет рассмотрено далее.
Установка последней версии DISM в Windows старых версий
При необходимости использовать последнюю версию DISM в предыдущей версии Windows, вы можете скачать и установить Windows ADK (Комплект средств для развертывания и оценки Windows) нужной версии (например, мы можем установить ADK для Windows 10 в Windows 7) и выбрать пункт «средства развертывания» при установке:
Установщики последних версий Windows ADK доступны на официальной странице https://learn.microsoft.com/en-us/windows-hardware/get-started/adk-install при этом следует учитывать:
- Для установки последних версий требуется наличие .NET Framework 5 на компьютере.
- Это онлайн-установщики и загрузка необходимых компонентов из РФ без VPN не работает.
- Новая версия DISM не заменяет имеющуюся, а устанавливается отдельно, по умолчанию — в папке C:Program Files (x86)Windows Kits10Assessment and Deployment KitDeployment Toolsamd64DISM и потребуется запускать её из этого расположения, либо добавлять в переменные среды.
Если ошибка сохраняется, можно учесть следующие нюансы и попробовать некоторые дополнительные варианты действий:
- Для работы некоторых параметров DISM, например, /spsuperseded требуется, чтобы служба «Установщик модулей Windows» была включена. Включить службу можно в Win+R — services.msc. Находим «Установщик модулей Windows» в списке, дважды нажимаем по службе и устанавливаем тип запуска «Вручную» — значение по умолчанию для этой службы.
- Выполнить проверку целостности системных файлов с помощью команды sfc /scannow
- Если ранее ошибка не возникала, попробовать использовать точки восстановления системы.
- Если есть обновления Windows — попробуйте установить их, однажды в очередном обновлении Windows 10 ошибка 87 была вызвана проблемами в самом обновлении и уже в следующем она была исправлена.
Если проблема сохраняется, опишите в комментариях, при каких обстоятельствах она возникает, а также укажите версию Windows, DISM (отображается после запуска команды), какую именно команду вы пробуете ввести — я постараюсь помочь.
Более или менее продвинутые пользователи нередко пользуются командной строкой, ведь через неё можно влиять на большинство системных процессов. При использовании строки DISM, которая есть в седьмой и следующих версиях Windows, время от времени могут появляться сообщения об ошибке.
Это норма для любой программы, но наша задача — избавиться от неполадки, чтобы выполнить необходимую команду. Ошибка 87 DISM возникает по нескольким причинам, и в каждом случае есть свои пути её устранения.
Иногда пользователи могут столкнуться с ошибкой 87 в строке DISM
Давайте выясним, при каких обстоятельствах обычно появляется такое сообщение и как избавиться от него без посторонней помощи.
С чем связана ошибка 87?
Как правило, она напрямую относится к любым действиям, выполняемым с директорией WinSxS. Если вдруг в Windows пропадёт любой системный файл, он тут же будет восстановлен рабочей копией из этой папки. То есть, WinSxS это очень важная папка с документами.
И вот ошибка 87 возникает в тот момент, когда пользователь пытается проделать какие-то операции с папкой через DISM. А теперь давайте конкретнее рассмотрим ситуации, когда возникает эта неполадка, чтобы в зависимости от них узнать способы избавления от неё.
Ошибка 87 при проверке целостности системных файлов
Время от времени Windows 7, 8, 8.1 и даже последняя версия начинает некорректно работать. Иногда компьютер внезапно перезагружается или попросту часто зависает. В такой ситуации обычно пользователям советуют не только проверить ПК на вирусы, но и выяснить, нет ли каких-либо повреждений в системных файлах.
Чтобы произвести такую проверку, используется командная строка, где вводится sfc /scannow. Если всё хорошо, то пользователь получает соответствующий текст. Однако в некоторых случаях вы получите сообщение о том, что система нашла повреждённые файлы, но ничего не может с ними сделать.
В этот момент в игру вступает DISM — следует открыть его от имени администратора и ввести такие команды:
- DISM /Online /Cleanup-image /ScanHealth — если у вас седьмая версия Windows;
- Та же команда + DISM.exe /Online /Cleanup-image /RestoreHealth — две команды для Windows 8, 10. Первая необходима для поиска повреждений, вторая команда запускает их исправление.
Именно после первой комбинации из списка, которая разработана для седьмой версии системы, всплывает ошибка 87 в командной строке DISM с сопутствующим текстом «Параметр ScanHealth не распознан в этом контексте».
Как её исправить? Первое очень простое решение — проверить правильность ввода комбинации. Поскольку эта командная строка очень требовательна к каждому знаку, убедитесь, что ставите только один пробел перед каждым слешем.
Не помогло? Тогда вам следует скачать обновление под названием KB2966583 на сайте Майкрософт и установить его на своём компьютере.
После успешной установки вы сможете снова запустить командную строку DISM и выполнить восстановление целостности файлов Windows.
Ошибка 87 и попытки почистить директорию WinSxS
Иногда вышеупомянутую директорию, которая работает страховкой для всех самых важных файлов, пытаются уменьшить. Для чего? В большинстве случаев папка WinSxS занимает много места на диске — 5,7 и даже 8 и больше ГБ, что может не нравиться пользователям, особенно если свободной памяти и так не хватает.
Поэтому чтобы немного сэкономить место, можно удалить бэкап папки таким образом:
- Открывается DISM.
- Вводиться текст dism /online /cleanup-image /spsuperseded /hidesp.
Часто именно после этой команды выбивает ошибку 87 с таким текстом: «Параметр spsuperseded не распознан в этом контексте».
Что делать в таком случае? Проверьте работоспособность сервиса «Установщик модулей Windows». Если он нерабочий, установите его, запустите, и затем повторите вышеуказанные действия.
Если же это не помогло, значит, команда для удаления бэкапа уже выполнялась, и больше места вы сэкономить не сможете.
Теперь вы знаете, по каким причинам появляется ошибка 87 в командной строке Windows, и знаете, что делать для её исчезновения. Советуем быть аккуратными при пользовании подобными программами и внимательно следить за тем, в какие процессы вы вмешиваетесь, чтобы не навредить компьютеру.
Опытные пользователи знают, что с помощью текстовой строки управления можно осуществить тонкие системные настройки и повлиять на функционирование процессов операционных систем линейки Microsoft. Начиная с седьмой версии ОС, была внедрена обновленная версия командной строки – DISM, но при ее использовании в Windows 10, пользователи могут столкнуться с ошибкой № 87.
Причина ошибки 87 в DISM
Как и у других программ ОС Windows, у ошибок при выполнении команд может быть несколько причин:
- Одна из них связана с использованием директории WinSxS. Эта директория исполняет роль резервного хранилища, способного восстановить копии значимых системных файлов. Если пользователь через DISM пытается провести манипуляции, влияющие на целостность системных файлов в этом разделе, то ожидаемо столкнется с правомерным отказом.
- Другие причины заключаются в некорректности написания запросов. Командная строка восприимчива к синтаксису, и поэтому опечатки, неправильные символы и лишние пробелы приведут к ошибке выполнения команд.
- Еще одной возможной причиной станет несоответствие прав доступа запрашиваемым функциям. Категории обычных пользователей по умолчанию не доступны возможности управления командами в DISM. Только пользователи, наделенные правами Администратора, в состоянии выполнять такие запросы в строке управления.
- Отказы по причине использования устаревшей версии Командной строки. На операционной системе Windows 10 должна применяться только актуальная, свежая версия DISM.
Решение проблемы
В зависимости от причины, вызвавшей ошибку, применяется один из способов решения проблемы.
Запуск cmd с правами Администратора
Пользователь может быть уверен в своих действиях и выполнять функции правильно, но все равно столкнуться с ошибками из-за отсутствия прав Администратора. Чтобы запустить cmd (так сокращенно называют Командную строку) с административными правами, нужно выполнить следующие действия:
- Открыть меню «Пуск», найти и запустить утилиту «Выполнить».
- В текстовой строке набрать команду «cmd», в появившемся результате поиска навести курсор мыши на Командную строку.
- Щелкнув правой кнопкой мыши, выбрать пункт «Запуск от имени Администратора».
При выполнении таких действий запросы, исходящие от строки управления, будут отрабатываться системой с необходимыми правами Администратора.
Проверка написания
Зачастую ошибка № 87 возникает из-за банальных ошибок в написании команд. Необходимо проверить корректность ввода, убедиться в отсутствии лишних пробелов и символов. Особое внимание стоит уделить написанию символов «/». Перед каждым таким знаком должен быть один отступ пробелом.
Пример правильного синтаксиса написания команды: «DISM.exe /Online /Cleanup-image /Restorehealth».
Установка обновления
Если команды написаны правильно, и выполняются с правами Администратора, но ошибка все равно возникает, то можно предположить, что причина кроется в отсутствии актуальных обновлений. Эта проблема, в первую очередь, касается десятой версии ОС. В 2017 году было выпущено специальное обновление – Fall Creator, которое было призвано устранить такую ошибку.
Если на компьютере пользователя отключена функция автоматической загрузки и установки пакетов обновления для Windows, то операцию по устранению ошибки придется выполнить вручную. Для этого:
- Открыть меню «Пуск», найти и запустить утилиту «Выполнить».
- В текстовой строке набрать команду «ms-settings:windowsupdate».
- В появившемся окне Центра обновления Windows нажать на кнопку «Проверка наличия обновлений».
- После завершения процесса скачивания и установки пакетов обновлений потребуется перезагрузить компьютер.
Если после выполнения описанных действий ошибка 87 сохраняется, то потребуется обновить и версию DISM. Для решения задачи потребуется найти в сети интернет обновленную версию, содержащую в себе фильтр файловой системы «Wofadk.sys», и произвести установку на компьютер.
Восстановление DISM
Если ни один из описанных выше способов не помог решить проблему, то, скорее всего, поврежден один или несколько системных файлов, необходимых для работы утилиты. И, поскольку стандартными средствами уже не получится вернуть функционал, то потребуется применить более радикальный метод – полную переустановку или восстановление операционной системы.
Рекомендуется начать со второго варианта, так как при его использовании не будут затронуты личные данные пользователя, но необходимые файлы и компоненты будут заново инсталлированы в корневые разделы ОС.
Но, если пользователь считает, что текущая версия Windows уже слишком сильно подвержена влиянию файлового и программного «мусора», из-за которого наблюдаются многочисленные сбои, то решение о полной переустановке операционной системы будет предпочтительным.
Содержание
- Способ 1: Запуск cmd с правами администратора
- Способ 2: Проверка написания
- Способ 3: Установка обновления
- Способ 4: Восстановление DISM
- Вопросы и ответы
Способ 1: Запуск cmd с правами администратора
Нередко ошибку удается исправить, просто запустив «Командную строку» с администраторскими полномочиями. Для этого найдите приложение через «Пуск», кликните по нему правой кнопкой мыши и выберите пункт «Запуск от имени администратора».
В «десятке» это можно сделать и через расширенное меню «Пуска».
Впишите команду еще раз.
Способ 2: Проверка написания
Часто пользователи не придают значения правильному написанию команды. В результате, даже если там нет ошибок, отсутствие, например, пробелов или косых черточек уже не позволит выполнить команду. Проверьте правильность ее написания, при необходимости скопируйте строчку ниже и вставьте в консоль клавишами Ctrl + V:
DISM.exe /Online /Cleanup-image /RestoreHealth
Способ 3: Установка обновления
В Windows 7, где действие команд DISM.exe /Online /Cleanup-image /ScanHealth и DISM.exe /Online /Cleanup-image /RestoreHealth объединено в одну (в первую), устранить ошибку 87 можно установкой обновления, без которого обе команды не работают в принципе. Скачивается пакет с официального сайта Microsoft по ссылке ниже.
Скачать KB2966583 с официального сайта Microsoft
- Выберите установленную на вашем ПК операционную систему и нажмите кнопку «Загрузите пакет».
- Укажите подходящий язык и кликните «Download».
- Скачанный пакет запустите и дождитесь завершения проверки.
- В ответ на вопрос об установке нажмите «Да».
- Начнется инсталляция, которая не займет много времени.
- Закройте установочное окно.
Попробуйте снова запустить команду в консоли.
Вероятно, если DISM был критически поврежден в результате действий пользователя, внутренних ошибок, использования «кривой» сборки Windows, есть смысл восстановить его работоспособность. Сделать это не очень просто, и может потребоваться создание загрузочной флешки. Более подробно этот процесс в Windows и в среде восстановления был рассмотрен в статье по следующей ссылке.
Подробнее: Использование и восстановление проверки целостности системных файлов в Windows
При использовании любительской сборки советуем перейти на чистую, а еще лучше лицензионную версию.
Еще статьи по данной теме:
Помогла ли Вам статья?
Одной из распространённых причин неполадок в работе Windows является повреждение системных файлов, например, вследствие внезапного отключения электропитания в момент перезаписывания файла. Для устранения таких неполадок в Windows предусмотрена специальная утилита SFC. Если запустить её с параметром SCANNOW, она просканирует систему на предмет повреждённых и/или удалённых файлов и восстановит их из хранилища компонентов WinSxS. Если SFC не справляется со своей задачей по причине повреждения хранилища, в ход идёт консольная утилита DISM, способная восстановить само хранилище.
Ошибка 87 в Windows при работе с DISM
При этом сначала в командной строке обычно выполняется команда DISM /Online /Cleanup-Image /ScanHealth, а при обнаружении повреждений хранилища выполняется та же команда, но уже с параметром /RestoreHealth вместо /ScanHealth. Но было бы ошибочно считать DISM всесильной, утилита сама может завершить работу с ошибками. Таких ошибок у DISM существует около дюжины, и каждая из них имеет свой код и описание. Сегодня мы коснёмся распространённой ошибки с кодом 87, а заодно посмотрим, что можно предпринять в случае её возникновения.
Отсутствие привилегий
Ошибка 87 может возникнуть, когда пользователь выполняет команду в консоли, запущенной с правами обычного пользователя. Командную строку или PowerShell нужно запускать от имени администратора. Запустить PowerShell с повышенными правами в Windows 10 можно из контекстного меню кнопки Пуск, классическую командную строку — через поиск, так же выбрав в меню соответствующую опцию.
Ошибка синтаксиса
Очень часто причиной ошибки 87 становится банальная ошибка синтаксиса. Либо пользователь ошибается в момент ручного ввода, например, случайно пропускает пробел между передаваемыми параметрами, либо копирует команду DISM с веб-страницы, на которой в команде уже допущена ошибка. Понять, что причиной ошибки 87 стал именно синтаксис нетрудно: в описании ошибки будет указано «неизвестный параметр…» или «параметр не распознан в этом контексте». Проверьте корректность ввода команды, убедитесь, что между передаваемыми параметрами имеются пробелы.
Остановка системных служб
Ошибка с кодом 87 и сообщением «параметр не распознан в этом контексте» может также возникнуть при попытке сжать каталог WinSxS. Для этого DISM передаются параметры /cleanup-image, /spsuperseded и /hidesp, и именно /spsuperseded чаще всего вызывает ошибку. В данном случае к ней приводит остановка системной службы «Установщик модулей Windows». Проверьте её состояние в оснастке управления службами, она должна иметь тип запуска «Вручную». Если она отключена, включите и запустите её, а затем выполните команду DISM.
Отсутствие обновлений
В истории Windows 10, а именно в 2017 году, уже был прецедент с появлением ошибки 87 при работе с DISM. Тогда причиной ошибки была недоработка со стороны разработчиков Microsoft, которые вскоре после этого выпустили патч исправления. Нечто подобное может повториться и в будущем, и тогда вам нужно будет установить последние обновления Windows.
Ошибка 87 при применении образа
Появление ошибки 87 отмечалось и при попытке применения (использовании параметра /Apply-Image) образа Windows 10 в операционной системе более ранней версии. В таких случаях обычно рекомендуют «обновить» саму DISM, перенеся её с компьютера с более новой версией Windows, но это связано с целым рядом сложностей. Пожалуй, будет проще перейти на новую версию операционной системы или выполнить её сброс к исходному состоянию, чтобы восстановить нормальную работу инструмента.