Описание
CHKDSK – Выводит на экран отчета о состоянии диска в форме, зависящей от используемой файловой системы. Команда chkdsk также составляет список ошибок на диске и исправляет их. Выполненная без параметров команда chkdsk выводит информацию о состоянии текущего диска, но не исправляет ошибки.
В доступе отказано, так как у вас нет достаточных прав или
диск, возможно, занят другим процессом.
Вам необходимо вызвать эту служебную программу в режиме с повышенными правами
и убедиться в том, что диск разблокирован.
То первым делом, надо попытаться запустить данную команду из командной строки, запущенной с правами администратора, более подробно можно прочитать в нашей статье: Как запустить командную строку с правами администратора
Chkdsk
CHKDSK — проверка диска. Системное приложение / утилита в операционной системе MS DOS и Windows, которое позволяет найти и исправить даже самые тяжелые проблемы в работе файловой системы жесткого или SSD диска.
Название является сокращением от английского — check disk. Кроме поиска, исправления основных ошибок и восстановления логической структуры диска, дополнительно проверяет на поврежденные сектора и позволяет отключать их использование для операционной системы.
В windows 7:
get-winevent -FilterHashTable @{logname="Application"; id="1001"; starttime="01/01/2021"}| ?{$_.providername –match "wininit"} | fl timecreated, message
Нажмите клавишу Win, напечатайте PowerShell и нажмите Enter.
Увеличить рисунок
Вы уже поняли, где посмотреть отчет проверки chkdsk?
В windows 8 и новее:
Get-EventLog -LogName Application -Source chkdsk | Select-Object -Last 5 -Property TimeGenerated,Message | Format-Table -Wrap
Восстанавливаем диск
Ваш компьютер перестал нормально функционировать, Windows загружается через раз или вообще не загружается, слышите непонятные повторяющиеся звуки и шумы из системного блока. В чем же может быть дело, спросите вы меня?
Скорее всего у вас шумит один из вентиляторов, расположенных внутри системного блока. Так же возможно такие шумы издает жесткий диск — ему не хватает питания, на нем есть ошибки или он скоро выйдет из строя, такое случается. Нужно задуматься о покупке нового и сохранения информации на старом жестком диске, пока это возможно.
Как я уже сказал выше, в операционной системе Windows имеется встроенная утилита chkdsk, с помощью которой можно проверить жесткий диск на наличие ошибок и восстановить работу операционной системы, если она не загружается.
Данный способ работает не всегда, но в большинстве случаев на моей практике, с помощью программы chkdsk, удавалось восстановить прежнюю работоспособность операционной системы Windows. Так же вам могут помочь безопасный режим и полезная F8.
Существует три способа как запустить программу chkdsk на вашем компьютере:
- Запуск программы chkdsk из под Windows
- Запуск утилиты chkdsk из под командной строки
- Запуск chkdsk с помощью загрузочного диска Windows
Используем графический интерфейс windows
Зайдите в папку «Мой компьютер» и нажмите правой кнопкой мыши на диске, который вы хотите проверить и выберите пункт «Свойства».
Перейдите на вкладку «Сервис»:
В окне поставьте галочки напротив всех пунктов и нажмите «Запуск»:
Если это диск, на котором установлена операционная система Windows, то программа сообщит, что проверка начнется после перезагрузки. В ином случае она начнется сразу же.
Как подсчитать среднее время трех последних загрузок системы
Если вы читали мою книгу об ускорении загрузки, то знаете, о чем я говорю 🙂
Увеличить рисунок
Диагностический пакет содержит набор скриптов PowerShell. И фрагмент одного из них я хочу вам показать, поскольку он напрямую связан с темой сегодняшнего разговора.
Просто скопируйте код и вставьте его в окно консоли PowerShell.
# Получение трех последних событий о загрузке $events = Get-WinEvent -maxevents 3 -FilterHashtable @{logname=»Microsoft-Windows-Diagnostics-Performance/Operational»; id=100} # Представление данных каждого события в виде XML $event = $events.ToXml() $event1 = $events.ToXml()
$event2 = $events.ToXml() # Извлечение значений BootTime из элемента Data для каждого события # и вычисление среднего времени в секундах $3BootAvg = ` ($($event.SelectSingleNode(«//*»).»#text») ` $($event1.SelectSingleNode(«//*»).»#text») ` $($event2.
Результат будет примерно таким:
Увеличить рисунок
В PowerShell можно представить данные события в формате XML, а затем извлекать значения из нужных элементов. XML-файл можно увидеть… правильно, в журнале событий.
Кто такой поставщик
В Windows есть служба «Журнал событий Windows» (eventlog), которая записывает события в разные журналы. Поставщик WMI (provider) отвечает за сопоставление данных из журналов событий классам WMI (инструментарий управления Windows), работающих под капотом системы. PowerShell отлично справляется с извлечением и обработкой данных WMI, при этом команды получаются очень компактные.
Поставщиком события chkdsk является Microsoft-Windows-Wininit, и на рисунке выше это хорошо видно. Заметьте, что в столбце «Источник» указан просто Wininit, но в подробностях указано полное имя поставщика.
Интересно, что для многих событий можно указать поставщика просто в качестве еще одного фильтра хэш-таблицы, исключая третий шаг команды. Но с Microsoft-Windows-Wininit это не сработало по неведомой мне причине.
Параметры
Параметр | Описание |
---|---|
том: | Указывает букву диска (с последующим двоеточием), точку подключения или имя тома |
[путь] имя_файла | Задает местонахождение и имя файла или имена множества файлов, для которых команда chkdsk проверит степень фрагментации. Для задания нескольких файлов можно использовать подстановочные знаки (* и ?) |
/f | Задает исправление ошибок на диске. Диск должен быть заблокирован. Если диск не заблокирован командой chkdsk, отображается запрос на проверку диска при следующей перезагрузке компьютера |
/v | Выводит на экран имена проверяемых файлов и каталогов |
/r | Обнаруживает поврежденные сектора и восстанавливает ту часть данных, которая еще может быть прочитана. Диск должен быть заблокирован |
/x | Используйте только с файловой системой NTFS. При необходимости инициирует операцию отключения тома в качестве первого действия. Все открытые дескрипторы диска будут неверны. Включает также функциональные возможности параметра /f. |
/i | Используйте только с файловой системой NTFS. Выполняет менее тщательную проверку записей индекса, что уменьшает время, необходимое для работы команды chkdsk |
/c | Используйте только с файловой системой NTFS. Пропускает проверку циклов в структуре папок, что уменьшает время, необходимое для работы команды chkdsk |
/l[:размер] | Используйте только с файловой системой NTFS. Устанавливает указанный размер журнала. Если размер не указан, параметр /l выводит текущий размер |
/? | Отображение справки в командной строке |
Параметры команды chkdsk
CHKDSK [том[[путь]имя_файла]] [/F] [/V] [/R] [/X] [/I] [/C] [/L[:размер]] [/B], где
Поиск результатов сканирования chkdsk в windows 8.1 и 10 | белые окошки
Для проверки состояния жёсткого диска в Windows имеется встроенная утилита CHKDSK, запускаемая пользователем из командной строки или окошка «Выполнить». После завершения процедуры утилита, как и полагается, выводит результаты сканирования. Если же Chkdsk проводит автоматическую проверку диска ещё до загрузки Windows, в этом случае результаты проверки будут скрыты, и чтобы просмотреть записи, вам придется отыскать их в системном журнале.
В Windows 7 и более ранних версиях системы всё было немного проще: после автоматической проверки до загрузки системы Chkdsk выводил результаты, в Windows же 8.1 и 10 Chkdsk, вернее, autochk.exe показывает только проценты прогресса. Сделано это было ради упрощения Windows и как мы уже сказали, получить доступ к результатам проверки можно только через журнал событий. В Windows 8.1 журнал находится здесь: Панель управления -> Администрирование -> Просмотр событий.
В «десятке» открыть его можно, перейдя по цепочке Меню Пуск -> Все приложения -> Средства администрирования -> Просмотр событий.
После того как записи загрузятся, в левой колонке выбираем Журналы Windows -> Приложения, в правой колонке — Фильтр текущего журнала.
В открывшемся окошке в поле «Все коды событий» вводим 26226 и жмём «ok».
События Chkdsk тут же будут отфильтрованы в средней колонке окна журнала.
Описанный способ можно вполне применить и для Windows 7, только вместо идентификатора
26226
используется
1001
.
Примеры использования
Если требуется проверить диск D и исправить все обнаруженные ошибки в Windows, введите следующую команду:
chkdsk d: /f
Если обнаружена ошибка, выполнение программы сhkdsk приостанавливается и выводятся соответствующие сообщения. По окончании выполнения команды chkdsk на экран выводится отчет, содержащий сведения о текущем состоянии диска. До завершения работы chkdsk нельзя открывать какие-либо файлы на указанном диске.
chkdsk *.*
Chkdsk выведет отчет о состоянии диска, а затем список фрагментированных файлов, удовлетворяющих шаблону команды.
Примечания
- Чтобы выполнить команду chkdsk для жестких дисков, необходимо быть членом группы администраторов.
- Если требуется исправить ошибки на диске с помощью команды chkdsk, нельзя открывать файлы на этом диске. В противном случае выводится следующее сообщение о ошибке:
Невозможно выполнить команду Chkdsk, так как указанный том используется другим процессом. Следует ли выполнить проверку этого тома при следующей перезагрузке системы? [Y(да)/N(нет)]Если пользователь выберет эту возможность, команда chkdsk проверит диск и автоматически исправит ошибки при перезагрузке компьютера. Если проверяемый раздел диска является загрузочным, команда chkdsk автоматически перезагрузит компьютер после проверки этого диска. - Команда chkdsk выполняет проверку дискового пространства и его использования для файловых систем FAT и NTFS. Команда Chkdsk позволяет получить отчет о состоянии со сведениями по каждой файловой системе. Отчет о состоянии диска включает перечень найденных ошибок. Если команда chkdsk запущена без параметра /f в активном разделе, может быть получено сообщение о наличии серьезных ошибок, так как диск нельзя заблокировать. Для поиска ошибок команду chkdsk нужно запускать время от времени на каждом диске.
- Если указан параметр командной строки /f, программа chkdsk исправляет ошибки на диске. При работе chkdsk должна обеспечиваться возможность блокирования диска для исправления ошибок. Поскольку при исправлении ошибок обычно изменяется таблица размещения файлов и иногда происходит потеря данных, программа chkdsk запрашивает подтверждение в следующем виде:
Потерянных кластеров: 10; цепочек: 3. Преобразовать потерянные цепочки кластеров в файлы [Y(да)/N(нет)]?
Если ввести Y, Windows сохраняет каждую потерянную цепочку в корневом каталоге как файл с именем формата Filennnn.chk. После завершения выполнения chkdsk можно проверить эти файлы на наличие нужных сведений. Если ввести N, Windows исправляет ошибки на диске без сохранения данных из потерянных блоков.
- Если параметр командной строки /f не используется, программа chkdsk только выдает сообщение о наличие ошибок в файле, но не исправляет их.
- Если команда chkdsk /f запущена на диске большого объема (например 70 Гб) или диск содержит большое количество файлов (например несколько миллионов), для завершения работы программы chkdsk может потребоваться очень много времени (возможно несколько дней). В течение всего этого времени компьютер будет недоступен для пользователей, так как chkdsk не возвращает управления до завершения работы.
- Система Windows выводит отчет программы chkdsk о состоянии диска с файловой системой FAT в следующем формате:
Серийный номер тома: B1AF-AFBF 72214528 байт всего на диске 73728 байт в 3 скрытых файлах 30720 байт в 12 каталогах 11493376 байт в 386 пользовательских файлах 61440 байт в поврежденных секторах 60555264 байт доступно на диске 2048 байт в каждом кластере Всего кластеров на диске: 35261. 29568 кластеров на диске
- Система Windows выводит отчет программы chkdsk о состоянии диска с файловой системой NTFS в следующем формате:
Тип файловой системы: NTFS. ПРЕДУПРЕЖДЕНИЕ! Параметр F не указан. CHKDSK выполняется в режиме только чтения. Этап 1. Проверка базовой структуры файловой системы... Обработано записей файлов: 378112. Проверка файлов завершена. Обработано больших файловых записей: 7749. Обработано поврежденных файловых записей: 0. Этап 2. Проверка связей имен файлов... Обработано записей повторного анализа: 126. Обработано записей индекса: 488430. Проверка индексов завершена. Проверено неиндексированных файлов: 0. Восстановлено неиндексированных файлов в утерянное и найденное: 0. Обработано записей повторного анализа: 126. Этап 3. Проверка дескрипторов безопасности... Проверка дескрипторов безопасности завершена. Обработано файлов данных: 55160. CHKDSK проверяет журнал USN... Обработано байт USN: 37157896. Завершена проверка журнала USN Windows проверила файловую систему и не обнаружила проблем. Дальнейшие действия не требуются. 40843662 КБ всего на диске. 17084612 КБ в 166171 файлах. 125184 КБ в 55161 индексах. 0 КБ в поврежденных секторах. 476406 КБ используется системой. 55312 КБ занято под файл журнала. 23157460 КБ свободно на диске. 4096 байт в каждой единице распределения. Всего единиц распределения на диске: 10210915. Доступно единиц распределения на диске: 5789365. Проверка диска и вывод отчета.
- Если указан параметр /f, команда chkdsk выводит сообщение об ошибке, если на диске найдены открытые файлы. Если же параметр /f не указан и на диске найдены открытые файлы, chkdsk может выводить сообщения о потерянных блоках на диске. Это произойдет в случае, когда открытые файлы еще не записаны в таблице размещения файлов. Если программа chkdsk сообщает о большом количестве потерянных блоков дискового пространства, должна быть рассмотрена возможность ремонта диска.
- Используйте параметр командной строки /r для обнаружения физических ошибок диска в файловой системе.
- Испорченные сектора, о которых сообщает команда chkdsk, были маркированы при первом форматировании диска. Такие сектора не представляют опасности.
Проверка ошибок на жестком диске с помощью powershell
В версии PowerShell 4.0 появился отдельный командлет для проверки диска Repair-Volume. Это командлет является PowerShell аналогом команды chkdsk.
Чтобы из PowerShell выполнить онлайн проверку жесткого диска на ошибки, выполните команду:
Repair-Volume –driveletter C –scan
Если нужно выполнить офлайн проверку и автоматически исправить ошибки, используйте параметр offlinescanandfix:
Repair-Volume –driveletter E –offlinescanandfix
Если ошибок на диске не найдено, вы увидите сообщение NoErrorsFound.
Также поддерживается быстрое исправление ошибок с помощью параметра spotfix (исправляются только ошибки, найденные при онлайн сканировании):
Repair-volume –driveletter E –spotfix
Можно проверить сразу несколько локальных дисков:
Repair-Volume -DriveLetter EHI –SpotFix
Через CIM сессии проверить диски на удаленных компьютерах:
Repair-Volume –driverletter c -scan –cimsession fs01,fs02,dc01
Смотрим логи работы утилиты
После того, как вы выполните проверку, результат ее работы можно будет посмотреть в системе. Для этого:
1. Нажмите одновременно клавиши WIN R и введите команду — eventvwr.msc
2. В левом столбце перейдите по «Журналы Windows» — «Приложение». В правом окне откройте строку с источником «Chkdsk».
В заключение
Утилита действительно удобна в использовании и решает множество ошибок. Особенно она выручает, когда ПК вообще нормально не грузится и получается запустить лишь безопасный режим Виндовс.
Итоги
Сегодня мы с вами подробно рассмотрели тему как запустить CHKDSK — восстановление жесткого диска, проверили наш жесткий диск на наличие ошибок и поврежденных секторов тремя разными способами, с помощью волшебной программы чек диск. Для любителей видео записал видео урок, который можете посмотреть ниже.