Проверка целостности файлов windows cmd

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

Утилита SFC.EXE ( S ystem F iles C hecker) существует во всех версиях Windows, начиная с Windows 2000, и предназначена для проверки состояния и восстановления системных файлов. Механизмы защиты важных файлов в разных версиях Windows реализованы по-разному, но все они учитывают тот факт, что какие-либо системные файлы (обычно исполняемые файлы .exe, файлы библиотек .dll, файлы драйверов) могут быть изменены сторонним программным обеспечением, и должен быть механизм, позволяющий проверить их целостность и отменить обнаруженные изменения.

Формат командной строки:

SFC [/SCANNOW] [/VERIFYONLY] [/SCANFILE=файл] [/VERIFYFILE=файл][/OFFWINDIR=автономная папка Windows /OFFBOOTDIR=автономная папка загрузки]

Параметры командной строки:

/SCANNOW — Проверка целостности всех защищенных системных файлов и восстановление, по возможности, проблемных файлов.

/VERIFYONLY — Проверка целостности всех защищенных системных файлов. Восстановление файлов не выполняется.

/SCANFILE — Проверка целостности указанного файла и его восстановление при обнаружении проблем. В параметре файл следует указать полный путь

/VERIFYFILE — Проверка целостности файла, полный путь к которому указан в параметре файл . Восстановление файлов не выполняется.

/OFFBOOTDIR — Расположение автономного каталога загрузки для автономного восстановления

/OFFWINDIR — Расположение автономного каталога Windows для автономного восстановления

Примеры использования команды SFC:

sfc /? — отобразить подсказку по использованию.

sfc /scannow — выполнить проверку целостности системных файлов и восстановить поврежденные. Результаты работы записываются в журнал утилиты \Windows\Logs\CBS\CBS.log.

sfc /verifyonly — выполнить только сканирование системных файлов без исправления.

sfc /VERIFYFILE=c:\windows\system32\cmd.exe — сканировать только файл cmd.exe

sfc /SCANFILE=d:\windows\system32\kernel32.dll /OFFBOOTDIR=d:\ /OFFWINDIR=d:\windows — сканировать только файл kernel32.dll из состава операционной системы, установленной на логическом диске D: . При выполнении сканирования файлов автономной Windows, ведение файла журнала в настоящее время не поддерживается.

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

Начато сканирование системы. Этот процесс может занять некоторое время.

Начало стадии проверки при сканировании системы.
Проверка 100% завершена.

Программа защиты ресурсов Windows обнаружила поврежденные файлы и успешно их восстановила. Подробные сведения см. в файле CBS.Log, который находится по следующему пути: windir\Logs\CBS\CBS.log. Например, C:\Windows\Logs\CBS\CBS.log. Обратите внимание, что ведение журнала в настоящее время не поддерживается для автономного обслуживания.

Начиная с Windows Vista, в качестве средства по обслуживанию компонент операционной системы используется Component-Based Servicing (CBS) — специальный набор программных средств для обеспечения ее целостности. CBS является частью Component Servicing Infrastructure (CSI) , обеспечивающей необходимые изменения текущего состояния Windows, например, при обновлении системы (Windows Update), установке или удалении программ и компонент, обновлении драйверов устройств и т.п. Фактически, CBS предоставляет программный интерфейс (API) инсталляторам для корректного изменения текущего состояния системы. Система обслуживания ОС Windows фиксирует множество событий, связанных с отслеживанием этого состояния, в специальном файле C:\Windows\Logs\CBS\CBS.log

Файл журнала CBS.log, кроме всего прочего, содержит и подробные сведения о ходе выполнения сканирования утилиты sfc.exe и его результатах. Для каждого сканируемого файла записывается дата, время и дополнительные сведения о проверке. Через каждые 100 проверок отображается итоговая информация, сопровождаемая тегом [SR] , что позволяет выделить из довольно объемного текста только те записи, которые содержат данный признак, с использованием команды поиска строки в текстовом файле findstr :

findstr /c:»[SR]» %windir%\logs\cbs\cbs.log >sfcdetails.txt — найти строки, содержащие [SR] и вывести их в файл sfcdetails.txt текущего каталога.

Пример содержимого файла журнала, содержащего только строки с тегом [SR] :

00004b78 [SR] Verifying 100 (0x0000000000000064) components
00004b79 [SR] Beginning Verify and Repair transaction
00004be0 [SR] Verify complete
00004be1 [SR] Verifying 100 (0x0000000000000064) components
00004be2 [SR] Beginning Verify and Repair transaction
00004c30 [SR] Repairing corrupted file «\??\C:\WINDOWS\System32\cmd.exe» from store
00004c5a [SR] Verify complete
. . . .
00005594 [SR] Committing transaction
00005599 [SR] Verify and Repair Transaction completed. All files and registry keys listed
in this transaction have been successfully repaired

Читайте также:  Flash player mac os альтернатива

В данном примере, проверено 100 файлов, в которых не обнаружено никаких отклонений, а в следующей порции был обнаружен и успешно исправлен файл msprivs.dll.mui . Последние 2 строки сообщают о завершении работы, и о том, что все файлы и ключи реестра были успешно восстановлены.

В тех случаях, когда не удалось восстановить поврежденный файл, в журнале будет присутствовать строка, содержащая:

Cannot repair member file Имя Файла Детальная информация о файле

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

Для поиска информации в тексте журналов cbs.log удобно фильтровать записи по характерным признакам событий, зафиксированных в журнале:

findstr /c:»Cannot repair» %windir%\logs\cbs\cbs.log >sfcnotrepair.txt — записывать в текстовый файл sfcnotrepair.txt только те строки журнала cbs.log , которые содержат строку Cannot repair , т.е. на выходе мы получим перечень системных файлов, которые не удалось восстановить.

findstr /c:»succsessfylly repaired» %windir%\logs\cbs\cbs.log >sfcnotrepair.txt — записывать в текстовый файл sfcnotrepair.txt только те строки журнала cbs.log , которые содержат строку succsessfylly repaired , т.е. на выходе мы получим перечень системных файлов, которые удалось восстановить.

В каталоге \Windows\Logs\CBS\ кроме текущего файла журнала cbs.log могут храниться устаревшие копии журналов в виде сжатых файлов с именем CbsPersist_ГГГГММДДnnnnnn.cab , которые, при необходимости можно распаковать для дальнейшего углубленного анализа.

В среде Windows 8-10 для восстановления системных компонент Windows, возможно использование утилиты Dism.exe , поддерживающей (чего не было в Windows Vista/Windows 7) параметр RestoreHealth :

dism /Online /Cleanup-Image /RestoreHealth — для восстановления системных файлов текущей ОС Windows.

Для Windows 7 параметр /RestoreHealth неприменим и функции восстановления объединены с функциями сканирования, задаваемыми параметром /ScanHealth :

dism /Online /Cleanup-Image /ScanHealth — для восстановления системных файлов текущей ОС Windows 7.

Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»

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

Многие знают, что проверить целостность системных файлов Windows можно с помощью команды sfc /scannow (впрочем, это знают не все), но мало кто знает, как еще можно использовать данную команду для проверки системных файлов.

В этой инструкции я покажу, как осуществить проверку для тех, кто вообще не знаком с данной командой, а после этого расскажу о различных нюансах ее использования, которые, думаю, будут интересны. См. также более подробную инструкцию для последней версии ОС: проверка и восстановление целостности системных файлов Windows 10 (плюс видео инструкция).

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

В базовом варианте, если у вас есть подозрение на то, что необходимые файлы Windows 8.1 (8) или 7 были повреждены или потеряны, вы можете использовать специально предусмотренный для этих случаев инструмент самой операционной системой.

Итак, для проверки системных файлов, проделайте следующие шаги:

  1. Запустите командную строку от имени администратора. Для этого в Windows 7 найдите этот пункт в меню Пуск, кликните по нему правой кнопкой мыши и выберите соответствующий пункт меню. Если у вас Windows 8.1, то нажмите клавиши Win + X и запустите «Командная строка (Администратор)» из меню, которое появится.
  2. В командной строке введите sfc /scannow и нажмите Enter. Эта команда выполнит проверку целостности всех системных файлов Windows и попытается их исправить в том случае, если были обнаружены какие-либо ошибки.

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

Дополнительные возможности проверки с помощью SFC

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

Что это нам дает? Предлагаю посмотреть по пунктам:

  • Вы можете запустить только проверку системных файлов без их исправления (ниже будет информация о том, зачем это может пригодиться) с помощью
  • Имеется возможность проверить и исправить только один системный файл, выполнив команду(или verifyfile, если исправлять не требуется).
  • Для проверки системных файлов не в текущей Windows (а, например, на другом жестком диске) можно использовать
Читайте также:  Защитник windows как проверить файл

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

Возможные проблемы при проверке

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

  • Если при запуске sfc /scannow вы видите сообщение о том, что Защите ресурсов Windows не удается запустить службу восстановления, проверьте, что служба «Установщик модулей Windows» включена, а тип запуска установлен «Вручную».
  • Если у вас в системе есть модифицированные файлы, например, вы заменяли значки в проводнике или что-то еще, то выполнение проверки с автоматическим исправлением вернет файлы в первоначальный вид, т.е. если вы меняли файлы специально, это придется повторить.

Может оказаться, что sfc /scannow не удастся исправить ошибки в системных файлах, в этом случае вы можете ввести в командной строке

Эта команда создаст текстовый файл sfc.txt на рабочем столе со списком файлов, исправление которых не удалось — при необходимости вы можете скопировать необходимые файлы с другого компьютера с той же версией Windows или с дистрибутива ОС.

А вдруг и это будет интересно:

Почему бы не подписаться?

Рассылка новых, иногда интересных и полезных, материалов сайта remontka.pro. Никакой рекламы и бесплатная компьютерная помощь подписчикам от автора. Другие способы подписки (ВК, Одноклассники, Телеграм, Facebook, Twitter, Youtube, Яндекс.Дзен)

06.08.2019 в 21:26

Здравствуйте. У меня после введения sfc /scannow ответ такой : Проверка 0% завершена. Защита ресурсов Виндовс не обнаружила нарушений целостности. Почему — то нет 100% проверки. В чем может быть причина? обновления также не устанавливаются на компьютер.

02.10.2019 в 12:24

Добавьте в статью, что в этой команде только один пробел — после «sfc». После палочки пробела нет. Или просто скопируйте:
sfc /scannow

02.10.2019 в 14:35

А зачем это добавлять? В инструкции и так нет пробела..

09.02.2020 в 00:09

Независимо от того, есть пробел или нет, команда выполняется правильно

07.10.2019 в 14:10

У меня просто мелькнуло меню с фоном и пропало. И списка на столе не появилось — словно и не вводил ничего.

07.10.2019 в 14:49

А вы в командной строке вводили (которое черное и большое) или просто в окошко «выполнить»? В командной строке от администратора нужно.

15.10.2019 в 18:05

Довольно давно пользуюсь этим сайтом Только сейчас заметил здесь всегда всё работает

28.12.2019 в 10:57

Здравствуйте. Я сохранил файлик с теми файлами которые не удалось восстановить. А как их исправить теперь?

28.12.2019 в 11:07

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

12.03.2021 в 13:27

Здравствуйте! В статье описана возможность проверки и восстановления конкретного файла.
Меня же интересует другой путь. Возможно ли ИСКЛЮЧИТЬ из проверки (и, конечно, восстановления) определенные файлы/папки?
Например: файлы imageres.dll, imagesp1.dll из C:\Windows\System32

12.03.2021 в 17:49

Здравствуйте.
Нет, такая возможность не предусмотрена (сам как-то искал, читал доки). Так что только где-то их попридержать)

SFC и DISM: Проверка и Восстановление системных файлов в Windows

Всякий раз, когда что-то идет не так с компьютером или ноутбуком, есть ряд инструментов для устранения неполадок, которые вы можете выполнить, чтобы попытаться устранить проблему. В Windows 10/8/7 есть несколько встроенных команд, которые можно использовать для проверки и восстановления поврежденных системных файлов, которые со временем вызывают проблемы при изменении.

Одним из способов устранения неполадок, связанных с Windows, является проверка системы и восстановление системных файлов. Это может помочь во всех типах проблем, таких как медленная система, синий экран смерти, внезапные сбои питания и сбои системы.

Читайте также:  Run ubuntu install from windows

Рассмотрим, как запустить средство проверки системных файлов в Windows с помощью командной строки CMD и PowerShell, таких команд как sfc /scannow и инструмента DISM.

Проверка и Восстановление системных файлов через CMD

Средство проверки системных файлов сканирует ваш компьютер на предмет любого повреждения или изменений в системных файлах, которые в противном случае могли бы помешать нормальной работе вашего ПК. Инструменты заменяет файл правильной версией, чтобы обеспечить бесперебойную работу. С помощью командной строки можно попытаться сканировать и восстановить системные файлы поздних операционных систем, как Windows 10/8/7 /Vista. Разберем две команды sfc /scannow и DISM с помощью CMD.

1. Использование инструмента System File Checker (SFC)

Запустите командную строку (CMD) от имени администратора. Нажмите «поиск» и напишите просто «cmd» или «командная строка», далее по ней правой кнопкой мыши и запуск от имени админа.

Задайте команду sfc /scannow и дождитесь окончания процесса.

Примечание: После сканирования вашей системы будет выдан один из трех результатов:

  • Ошибок системных файлов не будет.
  • Будут ошибки системных файлов и Windows восстановит их автоматически.
  • Windows обнаружила ошибки, но не может восстановить некоторые из них.

Если у вас показывает вариант 3, что ошибка обнаружена и система не может восстановить, то загрузитесь в безопасном режиме и проделайте заново процедуру. Советую отключить шифрование EFS и Bitlocker , если на момент проверки они имеются. Ничего не получилось? Двигаемся ниже.

2. Использование инструмента Deployment Image and Service Management (DISM)

Если вышеуказанное не работает в безопасном режиме, есть один последний способ проверить повреждение в системных файлах и исправить их. Используем инструмент Deployment Image and Service Management (DISM). Команда работает с системами Windows 8/8.1/10. Откройте обратно командную строку от имени администратора и используйте следующую команду:

  • DISM /ONLINE /CLEANUP-IMAGE /RESTOREHEALTH

Процесс может занять длительное время с зависанием процентной шкалы. Закончив работу, перезагрузите компьютер и запустите обратно sfc /scannow, чтобы убедиться, что ошибок нет или ошибка пропала.

Проверка и Восстановление системных файлов через PowerShell

Мы будем использовать Windows PowerShell, чтобы показать, как использовать службу обслуживания и управления DISM для сканирования и исправления поврежденных системных файлов в Windows 10. Этот способ будет более эффективный для обновления windows 10, чем командная строка.

1. Использование инструмента System File Checker (SFC)

Запустите PowerShell от имени администратора. Нажмите «поиск» и наберите windows powershell, после нажмите правой кнопкой мыши и выберите от имени админа.

Задайте в окне PowerShell команду sfc /scannow. Если сканирование обнаружит какие-либо проблемы, Windows попытается их исправить. Если Windows не сможет их исправить, он предупредит вас, что необходимы дальнейшие исследования и действия. Двигайтесь ниже, если обнаружены ошибки.

2. Использование инструмента Deployment Image and Service Management (DISM)

Сканирование DISM обнаруживает поврежденные системные файлы и Windows попытается исправить их, и даст вам отчет о ходе работы в конце. Если Windows не сможет найти файлы, необходимые для восстановления поврежденных системных файлов, вам также будет предоставлена ​​информация о том, что делать дальше, со ссылкой на веб-сайт Microsoft и варианты устранения неполадок. Задайте ниже команду в окно PowerShell.

  • DISM /ONLINE /CLEANUP-IMAGE /RESTOREHEALTH

Если DISM все исправил или не выявил ошибки, то перезагрузите ноутбук, компьютер и запустите для проверки обратно sfc /scannow.

Анализ лога CBS, какие файлы не удалось восстановить

Если после сканирования системных файлов, программа защиты ресурсов Windows обнаружила поврежденные файлы, но не может восстановить некоторые из них, лог файл CBS может помочь нам определить, какие именно файлы повреждены. Для этого:

  • Перейдите по пути C:\Windows\Logs\CBS
  • Откройте файл CBS.log в блокноте или текстовом редакторе.
  • В блокноте нажмите Ctrl+F, чтобы вызвать поиск
  • В поиске напишите Cannot repair member file, чтобы найти файлы, которые не удается восстановить.
  • Если поиск не дал результатов, то найдите записи [SR] и вы обнаружите, что все они одинаковы 100 components.
  • Ищите листая вручную любые изменения, отличные от 100 components, где вы и найдете поврежденный файл или указание.
  • Ориентируетесь по времени, когда вы примерно запускали сканирование SFC, так как лог может быть и за вчерашний день.

Оцените статью