Windows, при завантаженні, завжди перевіряє диски на наявність ознак системну помилку.
Якщо яка-небудь помилка системи або інші зовнішні чинники змінили параметри завантаження системи, при яких вона автоматично перевіряє диски на помилки, то це можна виправити командою chkntfs / D (відновлює стандартні параметри комп'ютера. Всі диски перевіряються при завантаженні і chkdsk запускається при виявленні помилок).
Але, якщо мучать сумніви і вам необхідно примусово запустити перевірку дисків, то працюємо за такою схемою:
Відкриваємо реєстр утилітою regedit і правимо гілку: # 91; HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager
У розділі Session Manager вносимо зміни в мультістроковий параметр BootExecute.
Там, за замовчуванням, завжди є рядок: autocheck autochk *.
До неї можна додати свої рядки запуску перевірки дисків.
наприклад:
autocheck autochk / p \ ?? \ C:
autocheck autochk / p \ ?? \ D:
Ці рядки регламентують автозапуск перевірки дисків C: і D:
Оскільки запуск виконується в режимі системної служби, до входу користувача в систему, застосовуємо команду autocheck. а не chkdsk.
Якщо потрібно примусово запускати перевірки при перезагрузках, тоді алгоритм наступний:
1. Створюємо reg-файл в якому прописуємо зміни в реєстрі, для запуску перевірки дисків.
2. Створюємо bat-файл. У ньому буде ініціалізація тихою записи змін до реєстру, з нашого reg-файлу.
3. Ставимо bat-файл в автозавантаження.
наприклад:
Для простоти, я наводжу приклад, де наш reg-файл називається 1.reg і лежить в корені диска D, а bat-файл - start.bat.
Reg-файл можемо створити за допомогою експорту гілки, яку ми змінили по інструкції вище.
Лістинг bat-файлу нижче.
УВАГА!
Після перевірки і завантаження системи, ці рядки втечуть з реєстру.
oleg_gf підказав ще один варіант.
Він заснований на тому, щоб примусово встановити «брудний» біт тому, щоб при перезавантаженні, система перевірила диск на наявність помилок.
Встановлюємо «брудний» біт для диска «С».