Ошибка grub rescue

Файловая система Windows 7 и описание папок в ней

Формально файловая система Windows – порядок, определяющий способ организации, хранения и именования данных на носителях информации ИТ-оборудования. Но можно сказать и гораздо проще – это формат записи информации на различные носители и, в первую очередь, на жесткий диск компьютера. В Windows 7 используется файловая система NTFS, которая, на сегодняшний день, является одной из самых распространенных в мире.

Основой NTFS является MFT (Master File Table – главная файловая таблица). По сути, она представляет собой файл особого формата, который размещен в специальной MFT-зоне раздела. Эта зона доступна только служебным средствам операционной системы или специальным утилитам, обращающимся к винчестеру напрямую.

MFT представляет таблицу, в которой перечислены все файлы с основными атрибутами и параметрами безопасности. Но не только. В MFT для каждого файла хранятся адреса секторов, в которых размещается его содержимое.

Это очень важная информация, потому что без нее система просто-напросто не знала бы, где находится запрошенный объект и куда нужно переместить читающую головку жесткого диска.

Итак, с файловой системой и с принципами ее работы мы разобрались, теперь давайте перейдем непосредственно к Windows 7. В ней, как и во всех других операционных системах, существует ряд папок, которые можно назвать служебными. По умолчанию они одинаковы у всех пользователей данной ОС. Некоторые из них желательно не трогать, ибо это может привести к сбоям в работе Windows 7. же других можно изменять без какой-либо опаски.

Windows

Вне всяких сомнений – самая важная папка, размещающаяся на активном разделе жесткого диска. В ней хранятся все исполняемые файлы операционной системы, драйвера, модули и пр. А поэтому удалять что-то из этой папки строго не рекомендуется. Стоит отметить, что в некоторых случаях она может иметь и другое название.

Windows.old

Папка со старой операционной системой. Возникает на жестком диске, если установка Windows 7 была осуществлена без его форматирования. Для подавляющего большинства пользователей она не нужна, а поэтому может удаляться совершенно спокойно с помощью утилиты Reg Organizer.

Users

Папка для хранения профилей пользователей. По умолчанию размещается в корне диска с операционной системой. Содержит ряд стандартных папок, а также по одной папке на каждую учетную запись. В них находятся «пользовательские» подпапки, включая рабочий стол (Desktop), документы (Documents), картинки (Pictures), избранное (Favorites) и пр. Их содержание полностью зависит от человека. Другие подпапки используются для хранения служебной информации различных приложений, браузеров и пр.: AppData, ApplicationData, Cookies, Local Settings и т.д. Они скрытые, и изменять их содержимое вручную не рекомендуется.

Boot

Папка, в которой размещаются все загрузочные файлы операционной системы. Она скрытая, вносить в нее изменения не стоит.

ProgramData

Еще одна весьма важная скрытая папка. В ней установленные в операционной системе приложения хранят свои данные, установочные файлы и т.п. Удалять из нее, естественно, ничего не нужно.

Recovery

Папка, в которой хранится образ, необходимый для входа в среду восстановления. Она опять же скрытая, изменять ее нельзя.

$Recycle.Bin

По сути, данная папка является «Корзиной» Windows. Именно в нее перемещается вся удаляемая информация. Папка скрытая, однако, удалять можно как ее саму, так и ее содержимое. По сути, это будет равносильно очистке «Корзины» или ее части

Обратите внимание, что на каждом разделе жесткого диска есть своя папка $Recycle.Bin, в которой хранятся файлы, удаленные именно с него

Что такое Grub?

Для того чтобы понять, как удалить загрузчик Grub необходимо знать, что же это такое. Аббревиатура Grub на английском языке полностью звучит как GRand Unified Bootloader. Что обозначает – загрузчик операционной системы. Он спроектирован компанией GNU.

Рассматриваемый загрузчик по своей сути является неким селектором, который дает возможность пользователю выбирать необходимую ему в данный момент операционную систему. Выбор может осуществляться только в процессе перезагрузки ПК или в момент включения.

Grub 2 (последняя версия загрузчика, разработанная компанией) поддерживает множество операционных систем:

  • FreeBSD;
  • Linux;
  • Solaris.

Но даже если система, которую необходимо запустить, не поддерживается, загрузчик Grub может передать выполнение запуска ПК другому. Например, в Windows это NTLDR. Также возможен пуск MS-DOS, OS/2 и других подобных ОС.

Возможности рассматриваемого загрузчика довольно широки:

  • Grub 2 имеет многомодульную конструкцию. Именно поэтому в него можно добавить все, что угодно. Вплоть до игр;
  • внешний вид загрузчика может быть легко изменен. Он может быть в формате черно-белой таблицы,

    либо иметь стильный дизайн;

  • поддерживается возможность загрузки Mac OS;
  • возможна нормальная работа таких файловых систем, как FAT 16, FAT 32, NTFS, ext (все версии), XFS, ISO.

Откат системы

На Ubuntu нет кнопки «Восстановление системы», нажатие на которую запустит откат к более раннему состоянию, поэтому каждый случай приходится рассматривать отдельно. Посмотрим наиболее распространенные ошибки, после которых Ubuntu требует восстановления: некорректное обновление системы и повреждение загрузчика GRUB.

Если система не запускается, то попробуйте восстановить загрузчик с помощью утилиты boot-repair. Подключите диск-флешку с Ubuntu к компьютеру, запустите систему и откройте терминал. Выполните несколько команд, чтобы установить программу boot-repair:

  • sudo add-apt-repository ppa:yannubuntu/boot-repair.
  • sudo apt-get update.
  • sudo apt-get install boot-repair.

После закрытия консоли запустите утилиту boot-repair. Выберите режим «Рекомендуемый способ восстановления», чтобы программа нашла и исправила ошибку.

Если сбой произошел при обновлении системы, то устранить его можно следующим образом:

  1. Запустите режим root, как при восстановлении пароля.
  2. Включите запись командой «sudo mount -rw -o remount».
  3. Командой «sudo dpkg –configure –a» запустите Менеджер пакетов, чтобы обновить и пересобрать пакеты данных,

Ждать придется долго, минут 30-40. Зато после завершения процедуры система запустится без ошибок, уже будучи обновленной.

GRUB 2 и UEFI

Машины с прошивками UEFI (т.е., практически все машины, продающиеся в течение нескольких последних лет) добавили новый уровень сложности в процесс диагностики проблем системного загрузчика GRUB 2. Несмотря на то, что процедура восстановления работоспособности системного загрузчика GRUB 2, установленного на машине с прошивкой UEFI, не значительно отличается от процедуры восстановления работоспособности этого же загрузчика на машине без прошивки UEFI, в новые версии прошивок вносятся различные изменения, которые являются причиной различных результатов процесса восстановления работоспособности системного загрузчика.

В системах на основе UEFI вам не придется устанавливать что-либо в основную загрузочную запись. Вместо этого вы должны будете установить загрузчик Linux с поддержкой EFI в системный раздел EFI (EFI System Partition, ESP) и выбрать данный загрузчик в качестве используемого по умолчанию с помощью такого инструмента, как efibootmgr в Linux или bcdedit в Windows.

На данный момент системный загрузчик GRUB 2 должен корректно устанавливаться в процессе установки любого из популярных дистрибутивов Linux, что позволяет последнему успешно сосуществовать с ОС Windows 8. Однако, в том случае, если вы получите в результате неработоспособный системный загрузчик, вы сможете восстановить работоспособность системы с помощью live-образа дистрибутива Linux. В процессе загрузки live-образа дистрибутива вам следует убедиться в том, что вы осуществляете загрузку в режиме UEFI. Меню загрузки компьютера должно содержать по два элемента для каждого из съемных носителей — для загрузки в обычном режиме и в режиме UEFI. Используйте последний режим для организации доступа к переменным EFI посредством файлов из директории /sys/firmware/efi/.

Из live-окружения следует смонтировать корневую файловую систему неудачно установленного дистрибутива таким образом, как описано в данном руководстве. Вам также придется смонтировать системный раздел EFI (ESP). Если предположить, что данному разделу соответствует файл устройства /dev/sda1, то вы можете смонтировать данный раздел с помощью следующей команды:

sudo mount /dev/sda1 /mnt/boot/efi

После этого необходимо загрузить модуль ядра efivars с помощью команды modprobe efivars перед созданием окружения chroot с корневой файловой системой неудачно установленного дистрибутива таким образом, как описано в данном руководстве.

Теперь в том случае, если вы используете дистрибутив Fedora, вы можете переустановить системный загрузчик с помощью следующей команды:

yum reinstall grub2-efi shim

После нее следует выполнить команду для генерации нового файла конфигурации системного загрузчика:

grub2-mkconfig -o /boot/grub2/grub.cfg

Пользователи дистрибутива Ubuntu могут выполнить эту же операцию с помощью команды:

apt-get install --reinstall grub-efi-amd64

После восстановления системного загрузчика следует выйти из окружения chroot, отмонтировать все смонтированные разделы жесткого диска и перезагрузить компьютер, перейдя в меню GRUB 2.

Для деактивации сценария из директории /etc/grub.d вам нужно всего лишь убрать бит исполнения, с помощью команды, аналогичной команде chmod -x /etc/grub.d/20_memtest86+, которая позволяет убрать строку «Memory Test» из меню загрузки

Восстановление загрузчика GRUB в Linux

Загрузчик GRUB является универсальным, гибким и достаточно надёжным инструментом для организации загрузки операционных систем (ОС). Однако при наличии некоторых обстоятельств и факторов. От которых не застрахована ни одна система. Могут возникать сбои, в результате которых загрузка системы может быть некорректной или вовсе невозможной. Если в данном случае точно установлено, что система не загружается из-за неработоспособности самого загрузчика. То в данной ситуации далеко не всё так сложно и безнадёжно. Как может показаться некоторым неопытным пользователям или системным администраторам. В большинстве случаев загрузку системы можно довольно быстро и относительно легко восстановить, не прибегая к переустановке системы. Для этого существуют давно проверенные способы, о которых будет рассказано в данной статье.

Кали Линукс не работает после обновления: что случилось-то?

Вам мешают драйверы, битые пакеты или GUI системы повреждена. Но ничего переустанавливать не надо. Всё поправимо.

Для исправления ситуации вводим последовательно команды; после каждой из них проверяем, помогло или нет: заканчивайте командой reboot.

У вас видеокарта от Nvidia? Если нет, переходите к следующему абзацу. Ну, если во время установки обновлений были симптомы, схожие с описанными, они и явились тому причиной. Удалим их из системы командой:

Если уже во время ввода команды или по её исполнению, вы наблюдаете непонятную кодировку, скорее всего, обновление библиотек прошло неудачно. Тем более вы перезагружались… Ничего страшного, просто повторите команду “обновиться” из безопасного режима, настроив файл конфигурации обновлений (первая из команд):

Дождитесь полного обновления и перезагрузитесь.

Если не помогло и зайти в Кали Линукс всё ещё нельзя, отредактируйте скрипт автоматической загрузки пользователя по умолчанию. В безопасном режиме наберите в терминале:

AutomaticLoginEnable=false

AutomaticLoginEnable=true

или просто снимите значок # комментария со строки, придав ему значение исполнительного кода. Перезагружаемся, смотрим.

Если и это не помогло, зайти в Кали Линукс нельзя , так как у вас повреждена графическая оболочка. Загружаемся в Ctlr + Alt + F1 (F2) и сносим её вчистую:

И повторно её подгружаем командой:

Напоминаю, все команды должны исполняться из-под root-а.

Немного теории

Как я уже сказал, основная задача загрузчика — предоставить возможность выбора операционной системы перед загрузкой. Не думайте, что в Windows загрузчик не используется, там он тоже есть и работает, подобно тому, как работает Grub.

Загрузчик может быть установлен в различные таблицы разделов диска. Сейчас самые используемые это GPT и MBR. Установка загрузчика Grub немного отличается для каждой из этих таблиц, учитывая их особенности. Подробнее об отличиях MBR vs GPT можно почитать в отдельной статье. Тут же я скажу, что GPT — более новая и функциональная таблица разделов, MBR — уже устаревшая, но до сих пор часто используемая.

В MBR вариантов немного, Grub записывается в область MBR на диске. Размер сектора MBR занимает первых 512 байт и этого вполне достаточно для того, чтобы установить туда загрузчик.

GPT предоставляет более широкие возможности. Во-первых, для совместимости в GPT эмулируется сектор MBR, и мы можем установить GRUB туда, но такой вариант очень ненадежный и не рекомендуемый. Во-вторых, теперь появилась возможность устанавливать Grub на раздел диска. Мы просто создаем раздел на диске размером 1 Мб и записываем туда то, что раньше записывалось в MBR, это делает установку загрузчика более надежной и защищенной от сбоев.

UEFI предоставляет совсем иной способ установки загрузчика. Тут его не нужно никуда записывать, загрузчик — это обычное приложение EFI, которое помещается на раздел EFI и уже там полностью успешно работает наряду с другими приложениями.

Для установки Grub будет использоваться команда grub-install, во всех случаях. Давайте кратко рассмотрим ее синтаксис и параметры. Синтаксис:

$ grub-install опции диск

Параметров здесь достаточно много, но нам будут нужны только некоторые:

  • — compress — сжать файлы загрузчика;
  • — install-modules=модули — установить только эти модули;
  • — modules — записать эти модули в MBR;
  • — boot-directory — использовать другой каталог для файлов Grub;
  • — bootloader-id — имя загрузчика в меню EFI;
  • — core-compress — сжимать образ, загружаемый в MBR;
  • —efi-directory — использовать системный раздел EFI;
  • — force — установить несмотря на ошибки;
  • — recheck — удалить существующую карту устройств, помогает если возникают ошибки;
  • — removable — установка grub на флешку (только EFI);

Основу разобрали. Теперь перейдем к установке. Дальше я буду предполагать, что все действия выполняются из системы, для которой нужно установить загрузчик или из chroot окружения этой системы.

Подготовка к установке

Для начала следует найти и скачать архив с утилитой. Стоит заметить, что при работе с программой на Windows 7 необходимо загрузить дополнительно приложение BCDEdit. С помощью этой утилиты в системные настройки добавляется мультизагрузочная Grub4Dos. Данная программа не распознается ОС. Без утилиты BCDEdit приложение не запускается поверх стандартного загрузчика.

Стоит отметить особенность, касающуюся распространения установщика программы. Нужно ли скачивать инсталлятор? Специалисты не советуют делать этого. Утилита распространяется в виде архива. Его следует распаковать и настроить.

Стоит ли пользоваться приложением?

Рекомендуется акцентировать внимание на последней версии утилиты. В Grub4DOS пользователям доступна возможность расширения программной оболочки и внесения правок

Это позволяет сделать приложение эффективнее и расширить его функционал.

В Сети можно найти множество утилит, имеющих простую систему установки и настройки. Однако ни один из данных программных продуктов не сможет справиться с задачами, которые с легкостью выполняет Grub4DOS. В аналогичных приложениях нет столь широкого и свободного функционала. Не стоит выбирать утилиты, которые обладают упрощенным интерфейсом и минимумом полезных опций.

От чего могут возникнуть проблемы

Одна из самых распространенных причин — это неправильный порядок установки двух операционных систем (Linux и Windows). Допустим, если вы захотите установить две этих операционных системы на свой ПК — вам непременно стоит знать правильную последовательность:

  • Сначала устанавливаем Windows
  • И только потом уже Linux

Если, например, сделать наоборот, то как раз-таки Grub будет поврежден; система будет грузиться напрямую в Windows, а дистрибутив Linux останется недоступным.

Grub может сломаться и по другим причинам. Например, из-за попыток ручного изменения параметров запуска (при недостатке опыта), в таком случае нужно будет либо вручную убирать лишнее, либо полностью переустанавливать Grub.

Настройка интерфейса

Приложение реагирует лишь на программируемые команды. На начальном этапе пользователю потребуются некоторые из них. Настройка интерфейса осуществляется с помощью файла menu.lst. Он находится в архиве с утилитой. Используя любой текстовый редактор, можно открыть необходимый файл и внести в него изменения.

По умолчанию в нем прописаны несколько команд. Параметр default применяется для запуска процесса автоматического выбора при долгом ожидании. Если пользователь никак не может отметить нужную строчку в меню, то будет загружен тот пункт, который указан напротив данного параметра. Команда timeout позволяет настроить период ожидания выбора владельца компьютера. С помощью параметра color задается цветовая гамма фона основного меню Grub4Dos.

Другие команды из списка позволяют настроить внешний вид утилиты. Напротив программного элемента foreground указывается цвет всего текста. Параметр splash image задает картинку, которая будет отображаться на заднем плане. С помощью команды background можно выбрать цвет фона меню.

Использование утилиты восстановления

Если работа с терминалом кажется сложной, можно автоматизировать процесс восстановления, использовав специальную утилиту boot-repair.

Запустите сборку Linux с флешки или диска. Откройте терминал и выполните последовательно три команды:

  • sudo add-apt-repository ppa:yannubuntu/boot-repair.
  • sudo apt-get update.
  • sudo apt-get install boot-repair.

Установленная программа будет иметь название «Восстановление загрузчика». Запустите утилиту (выполните «boot-repair» в консоли) и выберите режим работы. Новичкам подойдет «Рекомендуемый способ восстановления». После запуска этого режима GRUB будет автоматически восстановлен.

Есть и топорный способ восстановления GRUB – переустановка Linux. Многие новички используют этот радикальный метод, лишь бы не связываться с терминалом. Однако переустановка приводит к удалению пользовательских файлов, поэтому применять её из-за банального повреждения загрузчика – слишком большая роскошь.

Несмотря на то, что операционная система Linux занимает незначительную долю рынка, её различные сборки завоёвывают популярность своей официальной бесплатностью, довольно стабильной работой, а также значительной гибкостью в настройках. Да, некоторые моменты функционируют не так , как на Windows или Mac OS, да и большинство программного обеспечения создаются в первую очередь для этих двух продуктов. Но это останавливает далеко не всех.

Для работы ОС Linux необходимо восстановление загрузчика Grub, если произошел сбой.

Хотя практически любая сборка Linux работает без сбоев, иногда может случиться ошибка загрузчика, из-за чего становится невозможным запустить операционную систему. По каким причинам это может происходить? Как восстановить загрузчик Grub в Linux? Какие рабочие способы существуют? Обо всём этом и даже немного больше мы расскажем в сегодняшней статье.

После того как вы производите инсталляцию Linux на жёсткий диск вашего компьютера, все файлы копируются в отдельные папки. В одних каталогах хранятся файлы обычного программного обеспечения, которое можно спокойно удалить. В других же записываются файлы, без которых операционная система работать не будет. Сюда относятся ядро Linux, графическая оболочка, а также системный загрузчик Grub . Именно последний и применяется для того, чтобы запускать инсталлированную операционную систему. Каким образом это происходит?

В специальном загрузочном разделе система создаёт главную загрузочную запись. Её английская аббревиатура выглядит как MBR, и расшифровывается как Master Boot Record. При старте компьютера BIOS обращается к этой записи, а потом в действие вступает Grub и, когда всё в порядке, происходит запуск Linux. И если же загрузчик повреждён, при запуске произойдёт ошибка и система запускаться не будет.

По каким причинам это может случиться? Подавляющее большинство случаев являются следствием того, что после установки Linux в качестве первой системы вы устанавливаете Windows в роли дополнительной. Компания Microsoft традиционно не любит Linux, поэтому установщик Windows удаляет Grub Linux. Эта же проблема может возникнуть при некорректной установке самого Linux, перехода на другой дистрибутив либо из-за переразметки диска.

Самое важное, что следует учесть — это то, что не нужно сразу же думать о переустановке всей системы. Достаточно лишь просто восстановить Grub и всё будет работать, как и прежде

Перейдём к рассмотрению наиболее действенных способов, доступных даже неопытным юзерам.

Загрузка и восстановление с помощью LiveCD

При использовании любого из альтернативных вариантов загрузки «родной» системы очень полезно сначала узнать (или убедиться), с какого устройства происходит загрузка. Необходимо заранее это выяснить в настройках BIOS компьютера. Это необходимо, если придётся не просто обновить конфигурацию загрузчика, а полностью его переустановить. А для этого очень желательно устанавливать его на то устройство, которому из BIOS передаётся управление для дальнейшей загрузки ОС. Для BIOS материнских плат MSI это выглядит примерно следующим образом:

Рис. 1: BIOS MSI — просмотр и настройка приоритета устройств для загрузки системы.

Как можно видеть, для данной системы загрузочным устройством является SSD-накопитель «Samsung SSD 860 EVO 250 GB». А пока это наименование можно запомнить или где-нибудь записать.

Теперь можно загрузиться с любого Live-образа используя для этого оптический CD/DVD-диск или накопитель USB-Flash

Опуская технические подробности, важно заметить, что для этого должны быть сделаны соответствующие настройки в BIOS компьютера. В качестве Live-образа рекомендуется использовать ту же систему, что и установлена на компьютере

Итак, загрузившись в Live-режиме, первым делом следует запустить командную консоль. Далее, необходимо определить корневой раздел системы, для которой нужно восстановить загрузчик. Это нужно, чтобы войти в программную среду «родной» системы из непосредственно Live-режима и использовать весь доступный инструментарий, в том числе и команды по восстановлению GRUB.

Монтирование корневого и загрузочного раделов

С помощью команды fdisk определяем какой раздел и на каком устройстве используется родной системой как корневой:

Как можно видеть, в системе два диска — sda и sdb. Тут нужно сориентироваться и вспомнить, как размечался диск изначально при установке системы. И определить по данным вывода, какой раздел является корневым. В данном случае это раздел sda2. Его теперь нужно примонтировать командой mount:

Необходимо также примонтировать и раздел /boot

Но очень важно заметить, что если в качестве /boot используется отдельный раздел (а не подкаталог в корневом разделе, как в большинстве современных дистрибутивов, например Ubuntu), то его монтирование будет выглядеть следующим образом:. В данном случае последняя команда приведена условно, как пример

На самом деле файлы загрузчика для данного примера хранятся в подкаталоге /boot, который уже был примонтирован от sda2, и поэтому в последней команде в данном случае нет необходимости

В данном случае последняя команда приведена условно, как пример. На самом деле файлы загрузчика для данного примера хранятся в подкаталоге /boot, который уже был примонтирован от sda2, и поэтому в последней команде в данном случае нет необходимости.

Подготовка программной среды для работы

Далее необходимо определить программное окружение среды, указав каталог /mnt и интерпретатор команд:

Эта команда указывает, где должны выполняться команды и какое программное окружение для этого должно использоваться. В данном случае, теперь ядро Live-образа может полноценно работать с ФС родной системы. Используя все её пакеты, команды, файлы и прочие доступные ресурсы.

Восстановление загрузчика

Теперь нужно обновить MBR (главную загрузочную запись) диска, установив на него загрузчик GRUB. Здесь и нужно вспомнить, какой диск является загрузочным, исходя из конфигурации BIOS. Поскольку ранее это уже было определено, то теперь остаётся узнать, как это устройство обозначается в системе. Для этого полезно выполнить следующий скрипт:

Данный скрипт отработает, если в родной системе установлена утилита hdparm. Но поскольку в большинстве Linux-дистрибутивов она предустановлена и доступна «из коробки», то беспокоиться не о чем.

Как можно видеть, устройству «Samsung SSD 860 EVO 250GB», который ранее был определён как загрузочный, соответствует его определение в системе как /dev/sda . Именно на него и следует производить установку GRUB:

Создание файла конфигурации GRUB:

Ну и напоследок можно выполнить:

Если при выполнении команды grub-install возникают какие-либо ошибки, то можно выполнить её с ключом —recheck. Если же всё нормально, то можно выйти из режима chroot командой:

Далее необходимо отмонтировать все ранее примонтированные устройства и ФС:

Если /boot монтировался из отдельного раздела, то его также необходимо отмонтировать:

Ну и наконец, необходимо отмонтировать также и корневой раздел:

Далее можно перезагрузиться без Live-образа (сделав соответствующие настройки в BIOS и снова указав в качестве загрузочного «Samsung SSD 860 EVO 250GB»). И проверить, что GRUB загружает родную систему.

Восстановление grub

Продолжаем восстановление загрузки ubuntu. Сам /boot раздел мы вернули, но загрузчик grub почему-то не работает и система не грузится. Загружаемся опять с установочного диска и переходим в консоль. Напомню, что у меня такая картина по разделам:

Device     Boot   Start      End  Sectors Size Id Type
/dev/sda1  *       4096  2101247  2097152   1G 83 Linux
/dev/sda2       2101248 20969471 18868224   9G 83 Linux

Первый раздел это /boot, второй корень / . Смонтируем их в /mnt, а так же добавим несколько системных директорий.

sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

Теперь чрутимся в /mnt, чтобы оказаться в нашей системе:

sudo chroot /mnt

И уже отсюда восстанавливаю загрузчик grub:

grub-install /dev/sda
sudo update-grub --output=/mnt/boot/grub/grub.cfg

По идее, ошибок получить не должны. Если получили, то гуглите их. Надо обязательно их решить, иначе система так и не начнет загружаться корректно.

Теперь выходим отсюда и перезагружаем сервер. Вынимаем установочный диск и загружаемся с основного диска. У меня пошла загрузка.

Давайте еще раз повторим все, что мы сделали:

  1. Мы увидели, что система не грузится и валится в grub rescue. Загрузчик не может найти раздел, с которого продолжить загрузку. Мы попробовали в rescue console посмотреть все имеющиеся разделы и не нашли там boot. Если же нашли, то сразу же загрузились с него.
  2. После этого загрузились с загрузочного диска ubuntu, перешли в консоль. Установили утилиту testdisk и просканировали наш диск. Нашли пропавший раздел, восстановили /boot. Если раздел не нашли, то создали вручную.
  3. После этого смонтировали к livecd системе локальные диски, зачрутились в эту систему и штатно восстановили grub загрузчик.
  4. После этого система нормально загрузилась.

Почему «ломается» загрузчик GRUB?

Естественно, само по себе ничего не происходит. Если «сломалась» загрузка GRUB – значит что-то на это повлияло. Очень часто в подобных ситуациях пользователи говорят, что системную конфигурацию не изменяли, а GRUB вдруг перестал работать. И они отчасти правы.

На самом деле GRUB довольно чувствителен к любому изменению как своей, так и системной конфигурации, каким бы универсальным и удобным он ни был. Так, например, изменение идентификатора раздела, хранящего ядра (/boot), уже приведёт к невозможности загрузки системы. И GRUB здесь и ни причём. Нужно искать причину, по которой изменился идентификатор раздела. А они могут быть самыми разными. К примеру, даже если компьютер долгое время не использовался и на его платы не подавалось питание. То это также может быть причиной сброса некоторых настроек BIOS (по причине севшей батареи). Что может привести при последующем после длительного перерыва включении переопределению параметров оборудования. От которых зависит, в некоторых случаях, и идентификатор раздела. Это лишь одна из причин неработоспособности GRUB, самая неочевидная, которую не могут предусмотреть ни разработчики GRUB, ни создатели системных плат.

Наличие ошибок на разделах диска, человеческий фактор (особенно среди малоопытных пользователей) также очень часто являются причиной неработоспособности GRUB. Главное, что нужно понимать — это то, что в большинстве случаев причиной является внешний фактор. A GRUB – это довольно уязвимое место, чувствительное практически к любым внешним воздействиям, поскольку это программная среда, организующая передачу управления компьютером от BIOS (UEFI) к ОС.

Что такое Grub

Grub (или GRand Unified Bootloader) — загрузчик операционных систем с открытым исходным кодом. Распространяется он под лицензией GNU GPL, в полностью свободном виде. С помощью этого замечательного лоадера можно сделать много всего — основная же функция не ограничивается загрузкой лишь одной операционной системы. Вы можете иметь куда больше операционных систем на своем ПК, загружая любую из них с помощью Grub. На скриншоте выше вы можете видеть как примерно Grub выглядит. Кстати говоря, если вы захотите установить Ubuntu 18.04 рядом с Windows, вам определенно понадобится помощь Grub.

Grub используется в большинстве дистрибутивов Linux в качестве загрузчика по-умолчанию. Разумеется и с ним иногда возникают проблемы. Этим самые проблемы чреваты полным отказом операционной системы. Поэтому для починки Grub нам понадобятся дополнительные инструменты. Какие именно — узнаете далее.

Подводим итоги

Если при загрузке компьютера появляется ошибка GRUB Rescue, то стоит понимать, что неисправность касается именно загрузчика, а не конкретной операционной системы. После его восстановления все начнет работать в том же режиме, что и ранее. Никакие файлы на жестком диске не будут уничтожены или изменены.

Аварийный запуск системы из командной строки GRUB

Краткая инструкция по загрузке Windows и Linux из командной строки GRUB на случай каких-либо неполадок. Сразу оговорюсь, что сам grub2 должен запускаться, если же вы не можете попасть в консоль grub2, то вам скорее всего потребуется переустановка grub.

Запуск Linux с помошью командной строки GRUB

Нам понадобится написать всего 3 строчки: «set root«, «linux» и «initrd» и в конце дать команду «boot».

set root=(hd0,5) linux /boot/vmlinuz-2.6.32-generic root=/dev/sda5 initrd /boot/initrd.img-2.6.32-generic boot

Немного поясню — в строке set root указываем на корневой раздел linux. В моем случае это был «hd0,5», он же «/dev/sda5», то есть пятый раздел первого диска. Список доступных разделов диска можно получить, выполнив команду ls.

Далее, командой linux, указываем загружаемое ядро. Полное название ядра знать не обязательно, просто пишем «linux /boot/vmlinuz» и нажимаем tab. Консоль сама допишет правильный результат. У меня был предложен выбор между старым и новым ядром. Только в конце строки не забудьте дописать параметр root=/dev/sda5 или что там у вас.

Для старта системы этого уже должно хватить. Осталось выполнить команду boot. В некоторых случаях перед выполнением «boot» попробуйте дополнительно выполнить команду initrd, как описано выше в примере.

Запуск Windows из командной строки GRUB

Процесс запуска Windows из консоли GRUB ещё проще. Как и в случае с Linux в начале указываем корневой раздел, где находится Windows. В моем случае окошки установлены в /dev/sda1. После чего, отдаем команду chainloader +1, которая заставляет grub2 передать дальшейшее управление загрузкой Windows-загрузчику. Даем команду boot на запуск системы и наблюдаем загрузку винды. Пример:

set root=(hd0,1) chainloader +1 boot

Если считаете статью полезной,не ленитесь ставить лайки и делиться с друзьями.

Комментариев: 8

Единственный работающий мануал на весь рунет.

Если не знаете на каком разделе установлен Линукс (вдруг), можно каждый раздел проверить командой типа ls(hd0,1)/ (со слешем в конце).

Привет, а как сделать так, чтобы каждый раз это не прописывать?

Для этого нужно прописать соотвествующие изменения в загрузчик GRUB. Обычно нужные строки добавляются автоматически при установке системы.

Что делать, если видит только разделы msdos, но я знаю что там есть Linux

Если пишет например (hd0,msdos5) — то это тоже самое, что (hd0,5).

У меня так пишет, хотя там Linux и ext4.

Что делать если на всех разделах не находит виндовс? пишет unknown filesystem

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
IP-файл
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: