Использование средств проверки системных файлов. Проверка системных файлов на ошибки

При неполадках в работе компьютера не лишним решением будет произвести проверку ОС на предмет целостности файлов системы. Именно повреждение или удаление данных объектов часто служит причиной некорректной работы ПК. Посмотрим, как можно выполнить указанную операцию в Виндовс 7.

Если вы замечаете какие-то ошибки при работе компьютера или его некорректное поведение, например, периодическое появление синего экрана смерти, то, прежде всего, необходимо . Если данная проверка никаких неисправностей не обнаружила, то в этом случае следует прибегнуть к сканированию системы на предмет целостности файлов системы, о котором мы подробно поговорим ниже. Данную операцию можно выполнить как воспользовавшись возможностями стороннего ПО, так и применив запуск внедренной утилиты Виндовс 7 «SFC» через «Командную строку» . Следует, заметить, что даже сторонние программы используются только для того, чтобы активировать «SFC» .

Способ 1: Windows Repair

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


Подробнее о работе данной утилиты мы поговорим при рассмотрении Способа 3 , так как её можно запустить также методом использования внедренных Microsoft инструментов операционной системы.

Способ 2: Glary Utilities

Следующей комплексной программой для оптимизации работы компьютера, с помощью которой можно проверить целостность файлов системы, является . Использование данного приложения имеет одно важное преимущество перед предыдущим способом. Оно заключается в том, что Глори Утилитес, в отличие от Windows Repair, имеет русскоязычный интерфейс, что значительно облегчает выполнение задачи отечественным пользователям.


Более подробная информация о работе «SFC» представлена при рассмотрении следующего метода.

Способ 3: «Командная строка»

Активировать «SFC» для сканирования на предмет повреждения файлов системы Виндовс, можно используя исключительно средства ОС, а конкретно «Командную строку» .


Внимание! Для того чтобы «SFC» смог не только проверить целостность файлов системы, но и произвести их восстановление в случае обнаружения ошибок, перед запуском инструмент рекомендуется вставить установочный диск операционной системы. Это обязательно должен быть именно тот диск, с которого Виндовс устанавливалась на данный компьютер.

Есть несколько вариаций использования средства «SFC» для проверки целостности файлов системы. Если вам нужно выполнить сканирование без восстановления по умолчанию недостающих или поврежденных объектов ОС, то в «Командной строке» нужно ввести команду:

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

sfc /scanfile=адрес_файла

Также особая команда существует для проверки операционной системы, расположенной на другом жестком диске, то есть, не той ОС, в которой вы работаете в данный момент. Её шаблон выглядит следующим образом:

sfc /scannow /offwindir=адрес_каталога_с_Виндовс

Проблема с запуском «SFC»

При попытке активировать «SFC» может произойти такая проблема, что в «Командной строке» отобразится сообщение, говорящее о неудачной активации службы восстановления.

Самой частой причиной данной проблемы является отключение системной службы «Установщик модулей Windows» . Чтобы иметь возможность просканировать компьютер инструментом «SFC» , её следует обязательно включить.

  1. Щелкайте «Пуск» , переходите в «Панель управления» .
  2. Заходите в «Система и безопасность» .
  3. Теперь жмите «Администрирование» .
  4. Появится окошко со списком различных системных средств. Жмите «Службы» , чтобы произвести переход в «Диспетчер служб» .
  5. Запускается окошко с перечнем системных служб. Тут нужно отыскать наименование «Установщик модулей Windows» . Для облегчения поиска жмите по названию колонки «Имя» . Элементы построятся согласно алфавиту. Обнаружив нужный объект, проверьте, какое значение стоит у него в поле «Тип запуска» . Если там надпись «Отключена» , то следует произвести включение службы.
  6. Кликните ПКМ по наименованию указанной службы и в списке выберите «Свойства» .
  7. Открывается оболочка свойств службы. В разделе «Общие» щелкните по области «Тип запуска» , где в данный момент установлено значение «Отключена» .
  8. Открывается список. Тут следует выбрать значение «Вручную» .
  9. После того, как необходимое значение установлено, щелкайте «Применить» и «OK» .
  10. В «Диспетчере служб» в колонке «Тип запуска» в строке нужного нам элемента установлено значение «Вручную» . Это означает, что теперь можно запускать «SFC» через командную строку.

Как видим, запустить проверку компьютера на целостность файлов системы можно как при помощи сторонних программ, так и воспользовавшись «Командной строкой» Виндовс. Впрочем, как бы вы не запускали проверку, все равно её выполняет системный инструмент «SFC» . То есть, сторонние приложения могут только облегчить и сделать интуитивно понятным запуск встроенного инструмента для сканирования. Поэтому специально для того, чтобы произвести данный вид проверки, нет смысла скачивать и устанавливать ПО сторонних производителей. Правда, если оно уже для общих целей оптимизации системы установлено на вашем компьютере, то, конечно, можете использовать для активации «SFC» данные программные продукты, так как это все-таки удобнее, чем действовать традиционно через «Командную строку» .

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

SFC в среде Windows

Для выполнения подобной проверки в Windows достаточно запустить командную строку с правами администратора и выполнить:

Sfc /scannow

Ниже приводится таблица с синтаксисом утилиты и с пояснением значений используемых ключей.

Таблица 1 - Синтаксис утилиты sfc.exe

SFC

/SCANNOW Проверка целостности всех защищенных системных файлов и восстановление, по возможности, проблемных файлов.
/VERIFYONLY Проверка целостности всех защищенных системных файлов. Восстановление файлов не выполняется.
/SCANFILE Проверка целостности указанного файла и его восстановление при обнаружении проблем. В параметре <файл> следует указать полный путь
/VERIFYFILE Проверка целостности файла, полный путь к которому указан в параметре <файл>. Восстановление файлов не выполняется.
/OFFBOOTDIR Расположение автономного каталога загрузки для автономного восстановления
/OFFWINDIR Расположение автономного каталога Windows для автономного восстановления
например:
sfc /SCANNOW
sfc /VERIFYFILE=c:\windows\system32\kernel32.dll
sfc /SCANFILE=d:\windows\system32\kernel32.dll /OFFBOOTDIR=d:\ /OFFWINDIR=d:\windows
sfc /VERIFYONLY


SFC в среде Windows RE

Взяться за написание статьи подвигло непонятное поведение утилиты sfc. exe в среде Windows RE при загрузке с установочного диска или диска восстановления, а именно предложение перезагрузить систему и выполнить проверку еще раз.

Рисунок 1 - Запуск утилиты в среде восстановления без ключей и требование перезагрузки

Подобное поведение имеет вполне логичное объяснение: для среды Windows RE раздел диска, с находящейся на ней операционной системой, является автономным каталогом. Следовательно, запуск утилиты с ключами /OFFBOOTDIR и /OFFWINDIR обязателен. Дальше выясним значения этих ключей.

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

Рисунок 2 - Раздел с системой в проводнике Windows

Рисунок 3 - Раздел с системой в оснастке "Управление дисками"

Вадим Стеркин предложил замечательный способ определения букв разделов в среде восстановления . Есть и другой - воспользоваться утилитой DISKPART . Загрузитесь в среду восстановления с установочного диска Windows, войдите в командную строку и выполните последовательно:

DISKPART List disk Sel disk 0 Detail disk

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

В операционной системе Windows 10 предусмотрены 2 метода анализа целостности файлов – через инструменты SFC.exe и DISM.exe. Команды не заменяют друг друга, а дополняют, проверяя различные библиотеки системы на целостность файлов. Именно поэтому рекомендуется выполнить не одну из них, а обе. Инструменты позволят проверить целостность файлов Windows 10 и заменить поврежденные или измененные на оригинальные элементы.

Важно: Если ранее пользователь компьютера целесообразно вносил изменения в системные файлы операционной системы, они будут отменены. Инструменты Windows заменят измененные элементы оригинальными, даже если проблема в работе компьютера или приложения не вызвана их действиями.

Как проверить целостность файлов в Windows 10 с помощью SFC

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

Через командную строку в интерфейсе Windows

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


Если с системными файлами Windows нет никаких проблем, после проверки пользователь увидит сообщение, что «Защита ресурсов Windows не обнаружила нарушение целостности». В такой ситуации можно переходить к проверке файлов с помощью DISM.

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

Обратите внимание, если у вас имеются подозрения, что сбой в работе системы связан с определенным файлом, можно не выполнять полную проверку SFC. Достаточно ввести команду sfc /scanfile=”адрес до файла” , и он будет заменен мгновенно на оригинальную версию, если в него ранее вносились изменения или он работает с ошибкой.

Через среду восстановления

Чтобы провести проверку целостности файлов с помощью команды SFC через среду восстановления, потребуется выполнить следующие действия:

Нажмите в левом нижнем углу на кнопку «Пуск» и перейдите в «Параметры»:


diskpart list volume

После выполнения второй команды отобразится список доступных томов. Здесь требуется обратить внимание на диск, который зарезервирован системой и на системный раздел с операционной системой. Далее с ними потребуется производить манипуляции.

Продолжите вводить команды:

Exit sfc /scannow /offbootdir=C:\ /offwindir=E:\Windows

В последней команде требуется указать диски, которые были отмечены выше. То есть, в приведенном примере команды диск C является разделом с загрузчиком, а диск E – местом, где установлена операционная система Windows 10.

Внимание: Велика вероятность, что буквы дисков у вас будут отличаться от приведенных в примере, поэтому команда будет варьироваться.

  1. После ввода последней из четырех команд начнется сканирование целостности файлов операционной системы.

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

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

Как проверить целостность файлов в Windows 10 с помощь DISM

Как отмечалось выше, после проверки с помощью SFC рекомендуется приступить к анализу системы инструментом DISM. Он в ходе проверки исследует другие каталоги (и еще раз «пройдется» по файлам, которые были проверены SFC).

Проверка с помощью инструмента DISM несколько отличается от анализа системы за счет SFC. Пользователь имеет возможность выбрать одну из трех команд, чтобы провести проверку системы. Каждая из них имеет различный уровень воздействия.

Dism /Online /Cleanup-Image /CheckHealth

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

Dism /Online /Cleanup-Image /ScanHealth

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

Dism /Online /Cleanup-Image /RestoreHealth

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

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

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

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

SFC

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

/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 проверок отображается итоговая информация, сопровождаемая тегом , что позволяет выделить из довольно объемного текста только те записи, которые содержат данный признак, с использованием команды поиска строки в текстовом файле findstr :

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

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

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

В данном примере, проверено 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 XP. Однако у этого способа масса недостатков: приходится тратить много времени на повторную инсталляцию и настройку системы, к тому же важные могут быть потеряны. Поэтому лучше не торопиться с переустановкой, а сначала попробовать менее радикальные способы восстановления системы.

Проверка системы

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

Если при запуске утилиты Scannow система сообщает, что вы установили неправильный компакт-диск, то может быть два варианта:

  • На диске записан неоригинальный дистрибутив Windows XP.
  • Дистрибутив оригинальный, но более ранней версии (на диске SP1, а на компьютере – SP3).

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

Загрузка удачной конфигурации

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

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

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

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

Ручная замена

Чтобы выполнить ручную замену файлов, нужно загрузиться с аварийного носителя ERD Commander. Но сначала запишем дистрибутив ERD на флешку.

Создание загрузочной флешки ERD Commander занимает минут 10. После завершения процесса перезагрузите компьютер и нажмите F11 для запуска Boot Menu. Выполните загрузку с подключенной флешки. Теперь можно восстановить системные файлы, заменив их с носителя ERD Commander.

Важно: для корректной замены вам нужно знать, какие системные файлы Windows XP повреждены. Посмотреть список поврежденных данных можно в сообщении об ошибке, которая выдает системе при запуске. Перемещать с ERD Commander следует только эти поврежденные данные.

Восстановление производится с оригинального дистрибутива Windows XP. ERD Commander не содержит необходимые данные, он лишь создает среду для перемещения.

  1. При появлении стартового окна ERD Commander выберите загрузку пятой версии (для Windows XP).
  2. Выполните подключение к установленной системе.
  3. Появится рабочий стол, отдаленно похожий на XP. Установите диск с дистрибутивом Виндовс и откройте его через «Мой компьютер».

Ваша цель – найти на установочном диске поврежденные файлы и скопировать их в папку «Windows». Все необходимые данные на диске хранятся в каталоге «I386». Посмотрим, как проводится восстановление на примере файла userinit.exe, отвечающего за запуск важных системных процессов:

Перенесенный файл не готов к работе – его нужно еще распаковать. Распаковка осуществляется через командную строку:

  1. Откройте меню «Start» и запустите инструмент «Run». Это аналог инструмента «Выполнить» в меню «Пуск» в среде Виндовс.
  2. Введите команду такого вида: «expand c:\windows\system32\userinit.ex_ c:\windows\system32\userinit.exe». Пробел должен быть только между командой и адресами файлов; внутри пути к файлу пробелов нет.

Разберем синтаксис команды: expand – это запрос на замену файла. Первый путь – это запакованные данные, второй путь – поврежденный файл, который нужно заменить. После выполнения распаковки нужно перезапустить компьютер и загрузиться с жесткого диска. Если вы заменили все поврежденные данные, то Виндовс XP должна загрузиться без ошибок.