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

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Проверка системных файлов (SFC) — это утилита Microsoft Windows, позволяющий пользователю находить и восстанавливать повреждения системных файлов Windows. Компонент доступен в Windows 98, Windows 2000 и всех последующих версиях операционных систем семейства Windows NT. В Windows Vista и Windows 7 проверка системных файлов встроена в защиту ресурсов Windows, которая защищает не только критичные системные файлы, но и ключи реестра, и папки. Под Windows Vista, sfc.exe может быть использован для проверки особых путей, включая папку Windows и папку загрузки.

Защита файлов Windows работает за счёт регистрации уведомлении об изменении файлов в программе входа в систему. Если обнаружены какие-либо изменения защищённых системных файлов, то восстанавливается их изначальная версия из сжатой папки %WinDir%\System32\dllcache. Защита ресурсов Windows устанавливает DACL и ACL для защищённых ресурсов. Права для полного доступа к ним принадлежат сервису установки модулей Windows TrustedInstaller.exe. Администраторы больше не могут изменять системные файлы.

История[править | править вики-текст]

В связи с проблемами с приложениями Windows, способными перезаписывать системные файлы Windows 95, Microsoft создала несколько мер безопасности для защиты системных файлов от атак злоумышленников, повреждений или таких проблем как DLL hell.

Проверка системных файлов впервые появилась в Windows 98 как утилита с GUI. Она предлагала сканирование и восстановление повреждённых системных файлов, путём сопоставления текущих версий содержащимся в базе данных изначальным версиям файлов. Этот метод защиты был базовым. Он определял системные файлы по расширению и местоположению. Можно было восстановить файлы с установочного диска или из места, указанного пользователем. Windows 98 не предлагала никаких методов постоянной защиты, кроме атрибутов файлов; по этой причине не было доступно каких-либо профилактических мер.

Все операционные системы семейства Windows NT, начиная с Windows 2000, предоставляли постоянную защиту файлов, называемую защитой файлов Windows.[1]

В дополнение программа проверки системных файлов (sfc.exe) была переопределена как более мощная утилита командной строки, интегрированная с защитой файлов Windows. В отличие от SFC в Windows 98, она сканирует защищённые системные файлы, используя защиту файлов Windows и позволяет автоматически восстанавливать их из папки DLLCache или с установочного диска.

SFC не было в Windows ME,[2] вместо неё использовалась защита системных файлов. Она, как и защита файлов Windows обеспечивала постоянную защиту.

Версии[править | править вики-текст]

Компонент проверки системных файлов, входящий в состав Windows 2000 с Service Pack менее 4, известен тем, что он аннулирует исправления, предоставленные Microsoft.[3] Проблема была устранена в Windows 2000 Service Pack 4.

Применение[править | править вики-текст]

В операционных системах семейства Windows NT, проверка системных файлов может быть запущена через командную строку, выполнением следующей команды:

sfc /scannow 

При нахождении проблемы будет выполнена попытка заменить проблематичный файл файлом из кэша DLL (%WinDir%\System32\Dllcache\). Если там нет нужного файла или кэш DLL повреждён, то пользователю будет предложено вставить установочный диск Windows или указать путь к файлу. Проверка системных файлов определяет исходный путь установки Windows по значениям реестра SourcePath and ServicePackSourcePath.[4] Для этого может потребоваться установочный диск.[5]

С Windows Vista файлы защищены ACL, но несмотря на это, команда не изменила своего значения.

Начиная с Windows Vista, проверка системных файлов может сканировать конкретные файлы. Также, сканирование может быть осуществлено в другой папке установки Windows для замены повреждённых файлов (в случае, если Windows не загружается). Чтобы запустить такое сканирование, следует выполнить средство проверки системных файлов с другой рабочей установки Windows Vista и более поздних версий или с DVD-диска установки Windows, откуда можно получить доступ к среде восстановления Windows.

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

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]