Утилита 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 есть одна полезная "штучка", которая может сама искать и исправлять ошибки в самой системе. Причём она не будет трогать программы сторонние, а лишь проверит свои системные файлы. Это полезно и интересно тем, что многие не задумываются о том, что причина может скрываться в самой системе, а лихорадочно начинают , и так далее. В общем . Да, это полезно и может привести к хорошим результатом, но при всех этих действиях хорошо помнить ещё о том, о чём я напишу ниже.

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

Итак, запускаем :

и вводим в неё sfc /scannow :


Начнется проверка системы:


Вам остаётся только ждать.

Кому интересно, вот описание команды и ключей.

sfc
где:
/scannow – выполняется немедленное сканирование всех защищаемых системных файлов.
/scanonce – однократное сканирование всех защищённых системных файлов при следующей загрузке системы.
/scanboot – проверка всех защищенных системных файлов при каждой загрузке
/REVERT – Устанавливает исходные параметры по умолчанию.
/ENABLE – Включение нормальной работы защиты файлов Windows
/PURGECACHE – Очистка файлового кэша и немедленная проверка файлов
/CACHESIZE=x – Устанавливает размера файлового кэша

В командной строке (Пуск -> Выполнить -> cmd) пишем команду sfc / и нужный ключ.

После окончания проверки система сообщит о результатах и попросит перезагрузиться.

На этом у меня всё. Всем спасибо за внимание.

Средство проверки системных файлов (System File Checker), встроенное в Windows, умеет проверять системные файлы на наличие повреждений и любых других изменений. Если файл был изменен, утилита автоматически заменит его правильной версией.

Когда следует использовать эти команды

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

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

Исправление системных файлов командой SFC

Команду SFC следует выполнять от имени администратора. Чтобы это сделать, в Windows 10 или 8.1 нажмите правой кнопкой мыши на значке «Пуск» (Start) и выберите опцию «Командная строка (администратор)» (Command Prompt (Admin)). Кроме того, во всех версиях Windows можно выполнить поиск в меню «Пуск»/на начальном экране по словам «командная строка», нажать на нужной ссылке правой кнопкой мыши и выбрать «Запуск от имени администратора» (Run as Administrator).

Для полной проверки системы введите в окне командной строки следующую команду и нажмите :

Не закрывайте окно, пока не завершится выполнение команды. Процесс может оказаться довольно продолжительным. Если все в порядке, по итогам проверки появится сообщение «Защита ресурсов Windows не обнаружила нарушений целостности» (Windows Resource Protection did not find any integrity violations).

Если появляется сообщение «Защита ресурсов Windows обнаружила поврежденные файлы, но не может восстановить некоторые из них» (Windows Resource Protection found corrupt files but was unable to fix some of them), для начала попытайтесь загрузить систему в безопасном режиме. В Windows 10, 8.1 или 8 для этого зажмите клавишу при выборе опции «Перезагрузка» (Restart) в меню выключения, чтобы попасть на экран выбора дополнительных параметров загрузки. В Windows 7 и более ранних версиях перезагрузите компьютер и в процессе запуска зажмите клавишу . Загрузившись в безопасном режиме, вновь выполните команду sfc /scannow.

Исправление неполадок SFC командой DISM

В Windows 10, 8.1 и 8 исправить повреждение хранилища компонентов, препятствующее нормальной работе SFC, можно с помощью средства Deployment Image & Servicing Management (DSIM).

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

DISM /Online /Cleanup-Image /RestoreHealth

Не закрывайте окно командной строки до завершения процесса. Проверка может занять до 10 минут. Если индикатор прогресса долго держится на 20% – не волнуйтесь, это нормально.

Если по результатам выполнения команды DISM будут внесены какие-либо изменения, перезагрузите компьютер. После этого снова выполните команду SFC, и она сможет заменить поврежденные файлы правильными.

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

Восстановление системы или возврат в исходное состояние

Если проблемы сохраняются и исправить их с помощью этих инструментов не удается, можно принять более радикальные меры. Средство восстановления системы (System Restore) позволяет вернуть Windows к более раннему состоянию, что позволит решить проблему, если в том состоянии операционная система была еще исправна.

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

Если при выполнении описанных выше команд возникают другие ошибки, попробуйте поискать по их описанию в Интернете. Часто в выводе команды содержится информация о файлах журнала (логах), в которых можно найти более подробные сведения об определенных проблемах. А в конечном итоге вовсе не обязательно тратить время на диагностику сложных проблем, когда можно просто восстановить заводское состояние или переустановить Windows.

У описанных выше команд есть и другие возможности. Например, с помощью SFC можно проверять и исправлять отдельные системные файлы. А с помощью DISM можно выполнить быструю проверку системы без исправления либо указать утилите на файл WIM или ESD, содержащий системные файлы Windows.

Материалы

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

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

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

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

1.

  • Запустите командную строку (CMD) от имени администратора. Нажмите "поиск" и напишите просто "cmd" или "командная строка", далее по ней правой кнопкой мыши и запуск от имени админа.
  • Задайте команду sfc /scannow и дождитесь окончания процесса.


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

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

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


2. (DISM)

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

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


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

Мы будем использовать Windows PowerShell, чтобы показать, как использовать службу обслуживания и управления DISM для сканирования и исправления поврежденных системных файлов в Windows 10. Этот способ будет более эффективный для обновления Anniversary 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.


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

Многие программы резервного копирования и синхронизации каталогов включают в себя дополнительные функции проверки целостности созданных копий. Тем не менее, время от времени повреждение файлов может возникать из-за сбоев или ошибок в самих программах. Например, когда вы просто копируете файлы с помощью проводника Windows, то операционная система проверяет целостность файлов на основе CRC (специальное число, так же именуемое контрольной суммой, рассчитываемой на основе данных файла) и эта проверка, в большинстве случаев, помогает избежать ошибок. Однако, сбои в системных компонентах или же дефекты жесткого диска могут привести к тому, что в конечном итоге копия файла будет повреждена. Кроме того, в случае передачи по сети, существует вероятность, что часть битов была некорректно передана, из-за чего полученная копия, несмотря на проверки, окажется поврежденной.

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

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

ExactFile это одна из бесплатных утилит, которая позволяет легко производить проверки хэш функций для больших наборов файлов. Скачать программу можно по странице разработчика по этой ссылке . Использовать ExactFile очень просто. Для проверки каталогов, необходимо перейти на вкладку "Create TestFile Applet", после чего выбрать нужную директорию и алгоритм для вычисления значения контрольной суммы (по умолчанию это MD5). После чего нажать кнопку "Go". Начнется процесс вычисления контрольных сумм. По окончанию процесса, в проверяемом каталоге будет создано два файла - "TestFiles.exe" (файл для запуска проверки сумм текущего каталога) и "checksums.exf" (файл, внутри которого будут перечислены все контрольные суммы файлов в данном каталоге). Теперь, для проверки целостности, вам достаточно запустить TestFile.exe. В рамках проверки, будут отображаться не только измененные файлы, но и отсутствующие. Так что для если вам нужно будет проверить копию каталога, то достаточно скопировать эти файлы в каталог с копией и запустить "TestFile.exe".

Одним из возможных сценариев использования этой программы - это совместное использование с приложениями для резервного копирования. Алгоритм в данном случае будет достаточно простым. Сначала вы запускаете ExactFile, которая создает апплет TestFile для проверки файлов и их данных внутри каталога. Затем выполняете резервное копирование файлов. И в конце запускаете TestFile.exe в резервной копии. Существует версия ExactFile для консольной строки, которую можно использовать в командных файлах совместно с другими программами, как например, с тем же резервным копированием.

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

Примечание : В случае с полной резервной копией, вы можете использовать хитрость с созданием виртуального диска на основе архива, при помощи программы WinMount . И уже на виртуальном диске запустить проверку файлов.

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

В целом, ExactFile это отличная небольшая утилита с большим потенциалом.


  • Как создать PDF файл с возможностью редактирования в OpenOffice?

Технические советы