Відновлення системних файлів: команда sfc/scannow.

28.11.2018 windows | для початківців

Перевірка цілісності системних файлів Windows 10 може стати в нагоді, якщо у вас є підстави вважати, що такі файли були пошкоджені або ж виникли підозри про те, що яка-небудь програма могла змінити системні файли операційної системи.


У Windows 10 присутні два інструменти для перевірки цілісності захищених системних файлів і їх автоматичного відновлення при виявленні пошкоджень - SFC.exe і DISM.exe, а також команда Repair-Windo^ Image для Windows PowerShell (використовує DISM для роботи). Друга утиліта служить доповненням першої, у разі, якщо SFC не вдається відновити пошкоджені файли.

Примітка: описані в інструкції дії безпечні, однак, у тому випадку, якщо до цього ви виконували будь-які операції, пов'язані із заміною або зміною системних файлів (наприклад, для можливості встановлення сторонніх тем тощо), в результаті відновлення системних файлів, ці зміни будуть скасовані.

Що таке sfc/scannow?

Практично - це програма, яка, як і багато з інших системних розташовується в теці

C:\Windows\System32

і є невід'ємною частиною механізму захисту ресурсів Windows, який охороняє реєстрові ключі та окремі параметри від ураження (так само як і критично важливі системні файли). Якщо тільки після запуску утиліти та виявить зміни в цих файлах або параметрах, вона - утиліта - приступить (за командою користувача) до виправлення ситуації. Для цього сама Windows завжди тримає кешовану копію файлів у системній теці з однойменною назвою. Є бажання - погляньте:

C:\Windows\winsxs\Backup

Висновки

Очевидно, що утиліта sfc не є панацеєю від усіх видів проблем, що виникають в операційній системі Windows. Нерідкі випадки, коли sfc не може знайти ніяких пошкоджень в системних компонентах, або ж знаходить і усуває їх, проте помилки виникають знову. Подібна поведінка натякає на те, що сам механізм компонентів в операційній системі Windows досить «сирий» і знаходиться в перманентній «беті», про що розробники воліють мовчати, просто підтримуючи його в більш-менш працездатному стані і допрацьовуючи по мірі своїх можливостей від версії до версії. Ця припущення підтверджується великою кількістю помилок, які неможливо виправити автоматизованими системними засобами. У цьому випадку, як і у випадку, коли утиліта sfc не виявила в системі пошкоджених компонентів, при збереженні тенденції до нестабільної роботи системи варто розглянути інші способи діагностики.

System File Checker = Sfc.exe = sfc /scannow

Для запуску перевірки системних файлів відкрийте cmd від імені адміні:


У вікні консолі пишемо знайому команду:

sfc /scannow

Утиліта перевірить потрібне, у разі виявлення невідповідності буде проведена підміна після перезавантаження. У SFC є маленькі хитрощі і приховані нюанси. Будь-який з тих, хто вдається до можливостей цього інструменту, слід пам'ятати, що якщо sfc не впоралася відразу, не знехтуйте запустити її повторно. Але цього разу вимкніть режим Швидкого завантаження. Оптимальна кількість спроб - 3. Тільки після трьох невдалих слід приступати до інших засобів.

Помилка утиліти Sfc.exe: Для завершення відновлення системи потрібне перезавантаження...

Відновлення пошкодженого сховища компонентів Windows 10/Server 2020 за допомогою PowerShell

У версії PowerShell у Windows 10 і Windows Server 2016/2019 є аналоги розглянутих вище команд DISM. Для сканування сховища компонентів та пошуку пошкоджень у образі виконайте:

Repair-WindowsImage -Online –ScanHealth

Якщо помилок у сховищі компонентів не виявлено, з'явиться повідомлення:


ImageHealth State: Healthy

Для запуску відновлення системних компонентів і файлів введіть:

Repair-WindowsImage -Online -RestoreHealth

За відсутності доступу до інтернету ця команда може зависнути в процесі відновлення образу. Ви можете відновити системні компоненти з локальної копії образу Windows у вигляді WIM/ESD файлу, скопійованого з установчого ISO образу Windows 10: Repair-WindowsImage -Online -RestoreHealth -Source E:\sources\install.wim:1

Де, 1 - індекс редакції Windows з WIM або файла ESD (список редакцій Windows у WIM можна вивести так: Get-WindowsImage -ImagePath «E:\sources\install.wim»).


Результати перевірки sfc/scannow

Результати роботи утиліти будуть супроводжуватися деякими повідомленнями залежно від того, чи успішно пройшло відновлення або в роботі стався помилок. Але відразу запам'ятайте: не поспішайте панікувати в разі невдалих висновків утиліти. Запустіть sfc.exe кілька разів і в різних режимах.

  • Для завершення відновлення системи потрібне перезавантаження. Перезапустіть систему Windows і виконайте sfc ще раз:

Вікно означає, що у поточному сеансі вікно консолі можна закрити: утиліту запустять тільки після ПЕРЕЗАВАНТАЖЕННЯ (після ВИМИКАННЯ комп'ютера ситуація може повторитися). Причина повідомлення зрозуміла - файли кешу в дану хвилину обробляються системою («зайняті» якимось процесом/ами: Windows очікує застосування лише встановлених оновлень).

Проблема, яку ви намагаєтеся вирішити, лежить, мабуть, в іншій площині.

  • Захист ресурсів Windows виявив пошкоджені файли і успішно їх відновив.

Найбільш часте пошкодження файлів - або неправильна робота (а частіше видалення) сторонніх програм в/з Windows, а також помилки в роботі жорсткого диска (див. «Погані сектори жорсткого диска»). І утиліта частково ці проблема вирішила, підмінивши на вихідні. Настійно рекомендую поглянути на лог утиліти за адресою в консолі - там можуть бути цікаві деталі для вирішення ймовірних у подальшому помилок:

C:\Windows\Logs\CBS\CBS.log

  1. Захист ресурсів Windows виявив пошкоджені файли, але не може відновити деякі з них. При цьому система відправляє вас до логу програми за подробицями. Рідше, але також зустрічається ще більш категоричне
  2. Захист ресурсів Windows не може виконати потрібну операцію.

Більшість користувачів подібну «заяву» ставить у глухий кут. Я можу запропонувати вам кілька варіантів дій:


  • Іноді каменем спотикання є аудіослужба Windows, причому в Windows 10 це суцільно і поруч. Відкрийте консоль cmd від імені адміністратора і введіть дві послідовні команди:

sc config trustedinstaller start=auto net start trustedinstaller

  • Відразу перевіряємо готовність відповідної служби. Набираємо (у рядку Знайти/Виконати) команду на відкриття консолі

services.msc Шукаємо у списку служб Установник додатків Windows. Тип запуску: Вручну.

  • Будь ласка, перевірте чи теки (і чи не порожні) PendingDeletes і PendingRenames у теці

C:\Windows\WinSxS\Temp

  • Повторіть дію по запуску sfc/scannow, але вже в Безпечному режимі. Запуск Windows в щадному режимі можна запланувати прямо зараз з іншої системної утиліти msconfig:

Якщо результат виявиться тим же, можливо спробувати зрушити запуск утиліти відновлення ще ближче до запуску Windows: цього разу sfc/scannow може перевірити файли ще до завантаження системи. Однак для цього вам потрібен завантажувальний носій з тією копією Windows, яка у вас встановлена:

вставте звантажувальний диск/флешку

упевніться, що система на жорсткому диску видна з флешки/дисковода


Зауважте літеру Локального диска у стовпчику Тека: запам'ятайте її!

COM_SPPAGEBUILDER_NO_ITEMS_FOUND