Chkdsk - це утиліта, знайома "з пелюшок" будь-якому адміністратору системи Windows. Її призначення - виконання сервісного обслуговування файлової системи NTFS, знаходження і виправлення помилок на томах NTFS і структурі її метаданих, а також локалізація фізичних помилок на жорсткому диску (пошкоджені сектора, втрачені кластери і т.д). У Windows Vista і Windows 7 утиліта chkdsk практично не зазнала жодних змін в порівнянні з версією в XP. Косметичні зміни в основному стосувалися збільшення її швидкодії, однак на великих томах з великою кількістю файлів, її продуктивність залишала бажати кращого (перевірка помилок на таких томах займала неприпустимо великий період часу).
У Windows 8 утиліта CHKDSK була істотно допрацьована, причому однією з найбільш гарних новин є той факт, що тепер для виправлення більшості помилок перезавантажуватися не потрібно, все виконується онлайн, не вимагаючи виходу з Windows при роботі з системним диском. Тепер користувачі системі Windows не будуть стикатися з розчаруванням, коли після несподіваної перезавантаження системи, запускається перевірка диска, скасувати яку не можна, і доводиться чекати її завершення (до речі, якщо chkdsk запускається після кожної перезавантаження Windows - відключити його можна так: Не перевіряти диска при завантаження Windows ).
Windows 8 - Chkdsk і System Health
Перш за все зазначимо, що в Windows 8 в порівнянні з Windows 7 з'явилася низка нових параметрів. Ось список параметрів утиліти chkdsk в Windows 7:
Ось параметри chkdsk в Windows 8:
Як ви бачите, з'явився ряд додаткових параметрів. Розберемося з ними трохи пізніше. Спочатку коротко поговоримо про нову модель оцінки працездатності дисків в Windows 8. Можливо, ви пам'ятаєте, що раніше диск міг перебувати в одному з двох станів: healthy (здоровий) або dirty (дослівно, брудний). Тепер же кількість станів файлової системи збільшилася.
перше стан Healthy - це означає, що на файлової системі помилки не виявлені і ніяких дій не потрібно. Файлова система знаходиться в цьому стані переважна більшість часу.
Наступне стан, що не показане на малюнку, знаходиться між Healthy і Spot Verification Needed - Online Self-Healing. Online Self-Healing це спеціальна функція NTFS, що вперше з'явилася в Windows Vista, що забезпечує виправлення помилок файлової системи онлайн (при запущеній Windows). У Windows 8 кількість помилок, які може виправити цю роботу, було збільшено.
Після спроби автоматичного виправлення (self-healing) необхідно упевниться в наявності пошкодження на файлову систему. Це пов'язано з тим, що досить часто зустрічаються помилки, причина яких знаходиться не на диску, а в оперативній пам'яті. Для визначення подібних помилок в Windows 8 з'явилася нова служба Spot Verification Service . Ця служба активується файлової системою і її завдання упевнитися, що помилка пов'язана саме з файлової системою. Якщо це так, то диск переходить в стан Online Scan Needed.
У Windows 8 існує спеціальне завдання сервісного обслуговування, яке запускається щодня. Дане завдання виявляє і відзначає знайдені пошкодження в файлової системі для подальшої перевірки. Наступний етап Spot Fix. Саме тут виявляються відмінності chkdsk в Windows 8 від попередніх версій Windows. Spot Fix це технологія і новий атрибут утиліти chkdsk, що дозволяє перевірити диск і виправити знайдені помилки буквально за кілька секунд. Час роботи chkdsk з ключем spotfix буде залежати від кількості знайдених помилок, а не загальної кількості файлів. Нижче наведено порівняння часу роботи chkdsk з ключами chkdsk / f (Стара версія) і chkdsk / spotfix (Нова). У старій версії chkdsk при перевірці диск знаходився в стані офлайн так довго, скільки потрібно для виправлення пошкодження файлової системи і повернення томи в стан healthy, час простою прямо в цьому випадку прямо пропорційно кількості файлів на томі.
Як ви бачите, в системі Windows Server 2008 R2 при 300 млн файлів час даунтайм перевищує шість годин, а в Windows Server 8 - всього лише кілька секунд. В принципі, розробники Microsoft прийняли правильне архітектурне рішення: помилки виявляються онлайн, створюється список "поганих" файлів і секторів, і відновлення в офлайн режимі йде саме по зібраному списку. В результаті, даунтайм системи помітно нижче.
Запустити утиліту chkdsk вручну можна з командного рядка або за допомогою графічного інтерфейсу: Computer-> Правою кнопкою миші по диску -> Properties.
І на вкладці Tools необхідно натиснути кнопку Check.
Більшість помилок виправляються без перезапуску ОС, однак якщо знайдена помилка зачіпає системні або використовуються файли, то з'явиться запит про необхідність перезавантаження. Але і в цьому випадку, після перезавантаження процес виправлення помилки займе всього лише кілька секунд.
Повернемося до нових параметрів командного рядка утиліти chkdsk в Windows 8.
- / scan - запуск онлайн сканування, всі помилки на файлової системі виправляються без перезавантаження.
- / forceofflinefix - використовується разом із ключем / scan, виконує ті ж операції, що і / spotfix
- / perf - З допомогу даного ключа можна істотно прискорити процес онлайн сканування, за рахунок того, що процесу chkdsk буде дозволено споживати більше системних ресурсів (продуктивність інших додатків в цей час знизитися).
- / spotfix - новий параметр, при застосуванні якого істотно зростає швидкість виправлення помилок на диску.
- / offlinescanandfix - запуск офлайн-процедури перевірки диска і виправлення помилок.
При використанні ключів / spotfix і / offlinescanandfix на системному диску, або диску, який в даний момент використовується, з'явиться пропозиція виконати дану перевірку після наступного перезавантаження системи.
Крім того, запланувати перевірку диска C: (або іншого томи) можна за допомогою команди:
chkntfs c:
Визначити поточний стан диска і виконати його перевірку можна через Action Center (інформація «Drive Status»), інтерфейс провідника Explorer (у властивостях диска), PowerShell (команда Repair-Volume) і Server Manager.
Ще один цікавий момент, якщо розділ при запуску Windows Server 2012 визначається як dirty (наприклад, після несподіваного ребута), то перевірятися будуть тільки системні розділи. Всі інші диски залишаються на совісті адміністратора, ну і self-healing'а.
Отже, процедури перевірки диска і виправлення помилок на файлової системи, а також утиліта chkdsk в Windows 8 були істотно доопрацьовані, в результаті час визначення, визначення та виправлення помилок помітно зменшилася. У найближчому ж майбутньому при переході на нову файлову систему ReFS, планується зовсім відмовитися від утиліти chkdsk, тому що всі етапи перевірки будуть проходити в онлайн режимі без відключення томи.