Пользователи, привыкшие к графическому интерфейсу Windows, с опаской относятся к командной строке, избегая её использования, если это возможно. И действительно, большинство системных утилит, запускаемых через текстовый интерфейс, имеет равноценные способы выполнения посредством использования консоли «Выполнить», а то и напрямую с рабочего стола или через меню «Пуск».
Но именно командная строка становится незаменимой, если имеются проблемы при запуске операционной системы. Всё, что нужно сделать, – запустить Windows в этом режиме и воспользоваться средствами восстановления загрузочной записи. Но иногда неудача ждёт и на этом этапе, когда при запуске командной строки появляется сообщение об отказе в доступе.
Сегодня мы рассмотрим причины подобного сбоя и способы устранения проблемы.
Причины отказа в доступе
Большинство пользователей хоть единожды да сталкивались с синим экраном смерти, когда компьютер наотрез отказывается загружать. Существует немало встроенных средств, позволяющих решить проблему самым безболезненным способом, входящих в состав среды восстановления Windows. Одним из них является команда «bootrec /fixboot», выполняемая в режиме командной строки. Зайти в него можно из boot menu, которое вызывается при включении ПК клавишей F8 (обычно, для некоторых BIOS это может быть другая клавиша или комбинация).
Строго говоря, системная утилита bootrec.exe с параметрами /fixmbr и /fixboot просто берёт файлы, необходимые для загрузки операционной системы, с флешки или внешнего диска, и перезаписывает их на системный диск ПК. Так что если загрузочные файлы были повреждены, например, вирусами, эта команда в состоянии вернуть способность Windows к загрузке.
Другое дело, что в некоторых случаях запуск bootrec /fixboot заканчивается выдачей строки «Отказано в доступе».
Причины могут быть разные:
- на системном диске имеются битые сектора;
- при записи образа системы на флешку произошла ошибка;
- вирус присутствовал на том компьютере, где вы создавали загрузочный носитель;
- вы насильственно выполнили перезагрузку компьютера, который в это время находился в процессе восстановления.
В любом случае это не фатально, но, чтобы исправить ошибку, придётся постараться.
Что делать, если отказано в доступе при выполнении bootrec /fixboot
Большая часть средств, используемых для устранения ошибки доступа (при выполнении bootrec /fixboot может также появиться ошибка «Элемент не найден»), выполняется с использованием среды восстановления Windows. Это означает, что вам предварительно нужно подготовить образ системы, записанный на внешний накопитель, а также разобраться со способом входа в Boot Menu.
Интегрированное средство восстановление загрузчика
Самый эффективный способ восстановления загрузки операционной системы, в том числе и при невозможности выполнения bootrec, – это использовать среду восстановления, загрузившись с флешки.
В процессе загрузки нужно будет выбрать язык (естественно, русский), а затем вместо кнопки «Установить» нажать на «Восстановление системы».
В новом окне выбираем вкладку «Поиск и устранение неисправностей», а затем «Восстановление при загрузке». В следующем окне вас попросят указать ОС, для которой нужно выполнить восстановление (выбор будет, если на вашем компьютере установлено несколько операционок).
В принципе на этом ваше вмешательство в процедуру восстановления и закончится. Дальше система перезагрузится, после чего стартует процедура диагностики неисправностей. Будет отсканирован жёсткий диск или SSD на предмет наличия нечитаемых секторов, если ошибки будут обнаружены, утилита автоматически их исправить/устранит, предложив снова перезагрузиться. Соглашайтесь.
Если результат работы средства восстановления Windows окажется отрицательным, появится окно с соответствующим сообщением. В этом случае переходим к следующему пункту, предварительно кликнув по кнопке «Дополнительные параметры».
Перезапись системного загрузочного сектора
Этот способ следует выполнять если неудачей завершился предыдущий. В принципе можно начать и с него, выполнив все пункты предыдущего раздела, вплоть до выбора вкладки «Поиск и устранение неисправностей», а затем, в окне дополнительных параметров, вместо восстановления при загрузке нажмите кнопку «Командная строка».
Когда появится консоль КС, наберите команду bootsect /nt60 sys и нажмите <Enter>.
Если у вас Windows Vista или ниже, вместо параметра /nt60 нужно набрать /nt52. Результат отработки правильно набранной команды (за этим нужно следить очень внимательно) – строка «Загрузочный код успешно обновлён…»
После этого снова набираем bootrec /fixboot, и почти наверняка ошибка Windows 10/8/7 «Отказано в доступе» не возникнет. Когда утилита отработает, появится надпись «Операция успешно завершена». Закрываем окно командной строки и жмём кнопку «Продолжить», после чего Windows должна успешно перезагрузиться.
Восстановление загрузочных записей
Ещё один действенный способ избавиться от ошибки выполнения fixboot – обновление главной загрузочной записи Windows вместе с параметрами загрузки. Делается это следующим образом:
- выполняем все шаги предыдущих способов вплоть до открытия командной строки;
- в терминальном окне КС набираем команду bootrec /rebuildbcd, подтверждаем нажатием клавиши <Enter>. В результате утилита попытается найти на всех разделах диска установленные версии Windows, а если таковых не обнаружится, предложит использовать текущую. Соглашаемся;
- теперь запускаем bootrec с параметром /fixmbr (здесь и далее любая команда требует нажатия <Enter> для подтверждения). Этот параметр отвечает за перезапись главной записи (MBR) на системный раздел;
- теперь можно снова попробовать восстановить загрузочную запись командой bootrec /fixboot. Если предыдущие шаги оказались неуспешными, то этот способ с большой вероятностью завершится удачно.
Форматирование загрузочного раздела
В последних версиях Windows под загрузчик операционной системы отводится отдельный раздел. При возникновении критических ошибок, приводящих к невозможности нормально загрузиться, можно попытаться удалить этот раздел с тем, чтобы создать его заново.
Для этого нам снова понадобится командная строка, и вы уже знаете, как в неё зайти. Дальнейшие действия:
- в окне терминала набираем команду diskpart – это утилита работы с дисками (разметка, форматирование и т. д.);
- затем набираем list disk, которая покажет, какие диски имеются в системе. Нам нужен системный диск, обычно он стоит первым и имеет номер 0;
- переходим в этот диск, набрав sel disk 0 (вместо 0 может быть и другая цифра);
- набираем list vol, чтобы увидеть, какие разделы имеются на выбранном диске. Если их несколько, нужно определить, на каком из них находится загрузчик. Обычно он небольшой, не более 500 МБ, имеет пометку «Скрытый» и использует тип файловой системы FAT32. Запоминаем также имена остальных томов, обозначенных латинскими буквами;
- выбираем этот том, набрав команду sel volume X (где X– номер загрузочного раздела);
- присваиваем загрузочному разделу уникальное имя в виде латинской буквы, которая не должна совпадать с уже имеющимися. Это реализуется командой assign letter=X. Для проверки снова выполняем list vol, в результате наш том получит свою букву;
- выходим из diskpart, набрав команду exit.
Теперь системный раздел с загрузчиком можно отформатировать (без присвоения уникального имени мы бы этого не сделали), для чего набираем format Х: /FS:FAT32. Здесь вместо буквы Х нужно подставить присвоенное на предыдущем шаге имя. Важно не перепутать, иначе вы отформатируете другой раздел, где могут находиться важные для вас данные – они будут потеряны. Для подтверждения операции нажмите «Y» и затем <Enter>.
После форматирования вам предложат присвоить тому метку (имя) – полноценное, не из одной буквы. Но это необязательно, так что смело жмём <Enter>. Предпоследний шаг – сформировать загрузчик «с нуля» на только что отформатированном системном разделе, поскольку без него загрузка Windows производиться не будет. Делается это с помощью команды bcdboot C:Windows /s Х: /f UEFI.
Здесь вместо Х ставим имя нашего тома, параметр /s обозначает, что все загрузочные записи при формировании нового хранилища будут удалены, то есть мы создаём «чистую» версию BCD загрузчика. Параметр /f UEFI указывает, что необходимо скопировать в новый раздел файла EFI загрузчика. В результате выполнения команды должна появиться надпись «Файлы загрузки успешно созданы». Завершающий шаг – команда bootrec /fixboot, в этом случае ошибка «Отказано в доступе», равно как «Не удаётся найти указанный файл», появиться не должна с вероятностью 99%.
Как видим, восстановление испорченной загрузочной записи возможно, даже если она напрочь испорчена, здесь важно в точности соблюдать инструкции и не ошибаться при вводе команд.