Kali linux настройка grub
Многие из вас установили Kali Linux на виртуальную машину (VM) с помощью Vmware или VirtualBox, в то время как другие установили Kali (или BackTrack) в качестве второй системы. Недостатком установки этих хакерских систем в виртуальную машину является то, что для этого требуется внешний Wi-Fi адаптер (ваш Wi-Fi адаптер подключается через виртуальную машину в качестве проводного устройства eth0), но такой вариант подключения отлично подходит для затачивания ваших навыков хакинга и проведения тестов.
Использование Kali в качестве второй системы не требует использования другого беспроводного адаптера и позволяет использовать ресурсы вашей физической системы в полном объеме, не проходя через гипервизор. Таким образом, когда вам нужна Windows, вы загружаетесь в Windows, а когда нужна Kali, вы загружаетесь в Kali.
Загрузчик операционных систем
Чтобы иметь возможность загружать по своему выбору несколько операционных систем, у вас должен быть загрузчик, и в этом проблема. Загрузчик позволяет нам выбрать операционную систему, которую мы хотим загрузить. Начнем, как всегда, с основ и в первую очередь нам нужно понять, что принято называть «загрузчиком».
Исторически Linux использовал два загрузчика: LILO (Linux Loader) и GRUB. Вы можете найти LILO в некоторых старых системах, но в основном он был заменен на GRUB. GRUB имеет две версии: оригинальный GRUB и новый улучшенный GRUB2. Система Kali поставляется по умолчанию с GRUB2, поэтому мы сосредоточимся на этой более новой версии.
Чтобы помочь вам лучше понять, как работает GRUB, а также как настраивать и устранять неполадки GRUB, мы посвятим целых две статьи этой теме, поэтому следите за обновлениями — не пропустите часть 22 нашей серии по основам Linux.
Читать также: Основы Linux .Часть 13 ( Монтирование дисков и устройств )Небольшое введение в GRUB
GRUB является аббревиатурой для GRAND Unified Bootloader или «Главный унифицированный загрузчик». Он в значительной степени уже заменил устаревший загрузчик LILO, имеющийся на многих старых версиях Linux. GRUB работает, перехватывая управление процессом загрузки, когда BIOS передает управление главной загрузочной записи (MBR), находящейся в первом секторе основного жесткого диска. GRUB подменяет MBR своим собственным кодом, который и контролирует то, какой раздел должен загружается.
Шаг 1. Обзор GRUB
Давайте посмотрим на GRUB2, поскольку именно он и установлен на Kali. GRUB2, в отличие от оригинального GRUB, содержит все свои файлы в трех основных местоположениях. Вот эти места:
- /boot/grub/grub.cfg — это основной файл конфигурации (заменяет menu.lst)
- /etc/grub.d — эта директория содержит скрипты, которые генерируют grub.cfg
- /etc/default/grub — этот файл содержит настройки меню GRUB
Давайте начнем с навигации и поиска в директории GRUB.
Как видно на скриншоте выше, в этом каталоге много файлов, но нам пока нужен только grub.cfg. Это конфигурационный файл нового GRUB2, который поставляется вместе с Kali. Он заменяет старый файл menu.lst, который вы можете найти в оригинальном GRUB. Откроем его с помощью команды more и посмотрим, что у него внутри.
Grub.cfg — это в основном скрипт для запуска и настройки GRUB2. Он генерируется скриптами из директории /etc/grub.d, и вы НЕ должны пытаться редактировать его напрямую (обратите внимание на предупреждение во второй строке файла grub.cfg).
Шаг 2. Директория /etc/grub.d
Посмотрим на содержимое директории /etc/grub.d.
На скриншоте выше видно, что в этом каталоге есть несколько скриптов, которые запускаются для генерации файла grub.cfg. Посмотрим на ключевые файлы:
- 00_header — этот скрипт загружает настройки из /etc/default/grub
- 05_debian_theme — этот скрипт определяет цвета, фон и т. д.
- 10_linux — этот скрипт загружает записи меню
- 20_memtest86 — этот скрипт загружает тесты памяти
- 30_os-prober — этот скрипт сканирует жесткие диски для других операционных систем
- 40_custom — шаблон для ручного добавления других пунктов меню
Шаг 3. Обзор /etc/default/grub
Теперь перейдем в директорию /etc/default и посмотрим, что в ней находится.
В этой директории лежит много файлов и скриптов, которые настраивают различные демоны или службы в Linux. Единственное, что нас здесь интересует — это файл grub, который выделен на скриншоте выше. Откроем его с помощью команды more.
Когда мы это сделаем, то увидим следующий результат.
Этот файл содержит много параметров для настройки GRUB, таких как TIMEOUT, например, и другие параметры. Изменив что-либо в этом файле, вы должны будете запустить в консоли команду «update-grub», чтобы эти изменения вступили в силу, а затем будет сгенерирован новый конфигурационный файл grub.cfg.
Шаг 4. Как работает GRUB2
Прежде чем мы двинемся дальше, мы хотим немного рассказать о том, как работает GRUB2. Он несколько отличается от работы оригинального GRUB, и вам нужно это понимать, прежде чем пытаться что-то изменять или редактировать в GRUB2.
Различия в настройке GRUB и GRUB2:
Файл /etc/default/grub содержит параметры настройки.
Директория /etc/grub.d/ содержит скрипты для того, что отображается в меню GRUB при загрузке системы, а также скрипты для загрузки различных операционных систем. Когда выполняется команда update-grub, она считывает содержимое файла grub и скрипты в директории grub.d и генерирует новый конфигурационный файл grub.cfg.
Чтобы изменить файл grub.cfg, нужно отредактировать файл grub или скрипты, находящиеся в директории grub.d (очевидно, что проще и лучше редактировать только файл grub).
Продолжение следует, оставайтесь с нами…
В следующей статье в серии по основам Linux мы рассмотрим, как редактировать загрузчик GRUB, так что обязательно возвращайтесь, чтобы не пропустить самое главное!
Как правило, дополнительная настройка GRUB не требуется, все необходимые файлы устанавливаются на компьютер самостоятельно во время инсталляции ОС Linux. Нет необходимости заново устанавливать загрузчик, если, например, пользователю нужно провести конфигурацию, так как в этом случае следует только редактировать содержимое /boot/grub/ menu.lst.
Установка GRUB целесообразна в том случае, если его физически не существует на устройстве, иными словами, он может быть стёрт после инсталляции другой системы (чаще всего Windows). Иногда случается и такое, что копии загрузчика не функционируют должным образом или GRUB, по желанию владельца ПК, заменяется другим типовым загрузчиком. Какими бы ни были причины, установка GRUB, в любом случае, должна производиться исключительно с «живой» системы (Knoppix, например). Дело в том, что без функционирующего загрузчика, запустить на ПК дистрибутив Linux, который располагается на жёстком диске, попросту не выйдет. В статье рассмотрим способы установки и настройки загрузчика GRUB.
Загрузчик позволяет выбрать, какую запустить операционную систему
Что представляет собой загрузочный сектор?
Если владелец ПК уверен в своих силах и знаниях, ему будет достаточно прочесть лишь раздел, в котором пошагово расписан процесс установки загрузчика GRUB, однако тем юзерам, которые впервые сталкиваются с подобной проблемой, лучше предварительно узнать об особенностях BIOS и MS DOS.
Жёсткий диск разделён на несколько секторов, в первом из которых осуществляется основная запись диска (пользователи привыкли именовать её как MBR). Для этого требуется всего 512 байт, в которых «спрятана» небольшая программка. Следующий сектор занимает таблица разбиения диска, которая, по обычаю, состоит из четырёх главных разделов, объёмом 64 байта, и цифровой подписи (только 2 байта).
Особенности загрузочного сектора
Загрузочный сектор можно назвать основой основ, так как он находится в MBR и во всех остальных разделах. Как показывает практика, его заключают во все 16 секторов, на которые разделён любой жёсткий диск. Несмотря на тот факт, что в большинстве современных файловых систем, данные, которые включает загрузчик, располагаются не в первом секторе: система XFS, например, нуждается во всех работоспособных секторах диска. Поэтому, в случае, когда данные загрузчика стираются, файловая система полностью разрушается.
Включение устройства
В момент запуска компьютера, в первую очередь начинает запускаться непосредственно сам BIOS. В этот момент происходит считывание данных, хранящихся в MBR первого диска. Спустя несколько секунд, содержимое «идёт» к оперативной памяти, где происходит проверка на наличие в последних байтах шестнадцатеричных кодов 55 АА. Такая проверка заключается в необходимости идентифицировать носители для их последующей загрузки. Небольшая программка, хранящаяся в MBR, необходима при совпадении представленных кодов. Первая программа «цепляет» следующую, расположенную в загрузочном секторе активного раздела, чтобы впоследствии активировать её, и, как следствие, запустить ОС Windows.
В случае наличия не одного жёсткого диска, пользователь может настроить в BIOS порядок, согласно которому будет производиться запуск конкретных жёстких дисков в момент загрузки системы. Благодаря этой особенности, новые ПК имеют возможность загружать систему как с внешнего диска, так и с USB-накопителя. Естественно, изменив порядок загрузки в BIOS, юзер может загружать систему посредством CD и DVD-дисков.
С помощью BIOS вы можете отрегулировать порядок загрузки носителей
Чтобы в будущем не приходилось разбираться с загрузчиками и думать о том, каким образом должна осуществляться настройка GRUB, пользователь должен знать, как установить две операционные системы от разных производителей таким образом, чтобы они не конфликтовали между собой. Как показывает практика, разумнее всего установить изначально загрузчик системы Linux, чтобы впоследствии иметь возможность выбора относительно запускаемой системы.
Однако, если на устройстве стоит одна из последних версий ОС от компании Microsoft (позднее 9х/ME), то в загрузчике системы можно сделать так, чтобы он самостоятельно «беспокоился» о GRUB. Огромным преимуществом такой возможности является отсутствие необходимости лишний раз разбираться с особенностями MBR. Правда, далеко не каждый современный юзер сможет самостоятельно произвести такую манипуляцию, так как процесс этот достаточно сложный. Всё придётся делать вручную.
Среди прочих способов, настроить нормальную работоспособность двух систем, можно прибегнув к дополнительной установке GRUB. Загрузчик необходимо расположить непосредственно в загрузочном секторе главного раздела и впоследствии отметить его в качестве активного. Этот метод также исключает необходимость использовать MBR, однако он может сработать только с основными разделами и файловыми системами, не влияющими на загрузочный сектор раздела.
Для чего важно создать копию MBR?
Восстановление загрузочного сектора может быть осуществлено только посредством команды:
Однако, следует учесть, что посредством этих команд пользователю удастся изменить лишь 446 байт MBR.
Инсталляция в MBR жёсткого диска
GRUB install можно производить сразу же, как только будет создан соответствующий конфигурационный файл (задаётся посредством команды /boot/grub/menu.lst). В каталоге grub в обязательном порядке должны присутствовать такие файлы, как stage1, stage2 и *_stagel_5. В случае их отсутствия, в этот раздел следует записать файлы, содержащиеся в GRUB.
Дальнейшие манипуляции заключаются в запуске загрузчика GRUB и выполнении команды setup. Значения hdl,12 должны быть заменены на имя устройства GRUB раздела диска, содержащего /boot. Следует быть предусмотрительным, так как раздел /boot может располагаться не в системной папке, а в другой. Hd0 отвечает за область хранения загрузочного сектора основного жёсткого диска.
SUSE во время инсталляции пополняется файлом /etc/grub.conf., в котором содержатся команды, относящиеся непосредственно к GRUB install. Если что-то пошло не так, пользователь ПК может в любой момент процедуры заново запустить установку. Помочь в этом может команда grub < /etc/grub.conf.
Способы инсталляции загрузчика
Установка GRUB может быть произведена не только в MBR. По желанию, загрузчик можно расположить в любом загрузочном секторе абсолютно любого жёсткого диска. Несмотря на то, что бывают ситуации, когда такое решение оказывается неоправданным, в перечисленных ниже случаях, установка GRUB в другой раздел весьма упрощает задачу юзера.
Прибегнуть к GRUB install можно в том случае, если запуск загрузчика осуществляется посредством аналогичного устройства Windows. Также решение будет целесообразным, если на компьютере установлено несколько вариантов ОС Linux и ранее инсталлированный GRUB пользователь не собирается менять на другой загрузчик.
Предпочтительнее для оптимизации процесса выбирать системный раздел Linux. Иными словами, если операционная система находится в /dev/sda7, для правильной установки, пользователь должен использовать нижеприведённые команды. Главным различием установки GRUB в MBR или системный раздел является необходимость указать в setup вместо hd0 выбранный раздел.
Прежде чем осуществить GRUB install, следует учесть одну особенность некоторых файловых систем, так как иногда загрузочные сектора раздела не могут быть использованы загрузчиком или иным типовым приложением. В частности, одной из таких систем является XFS — инсталлированный в её загрузочный сектор GRUB, попросту разрушит всю файловую систему.
Инсталляция на USB-накопитель
Благодаря современным технологиям, каждый желающий может загрузить операционную систему посредством USB-накопителя. Если GRUB install будет производиться непосредственно с внешнего носителя информации, а не с помощью Windows или Linux, пользователь должен проверить правильность распознавания накопителя материнской платой.
Прежде чем начать работу, следует отформатировать флешку одним из двух известных способов. Посредством первого метода она очистится как superfloppy, другим — как жёсткий диск. Выбирать вариант очистки следует исходя из особенностей BIOS.
Следующим шагом должна стать активизация поддержки USB-накопителя, для чего в BIOS предусмотрен отдельный параметр. При распознавании USB-накопителя как отдельного загрузочного диска, в BIOS будет изменён список, согласно которому GRUB поочерёдно списывает данные с носителей. В качестве первого диска станет USB-накопитель, остальные жёсткие диски станут доступны посредством hdl и hd2. Если возникнет необходимость, перед GRUB install можно изменить /boot/grub/devices.map.
Если всё сделать правильно, установка GRUB с внешнего носителя будет более чем успешной. GRUB распознаёт флеш-накопитель как hdn+1, где n является числом, соответствующим последнему внутреннему жёсткому диску. Последующая установка GRUB в MBR посредством внешнего накопителя информации нуждается в выполнении нижеприведённой команды:
Дальнейшая перезагрузка ПК должна помочь GRUB появиться в MBR и запустить все имеющиеся системы, которые содержатся в menu.lst. В случае возникновения ошибок, следует зайти через меню загрузчика в интерактивный режим, нажимая кнопку С. Активация команды, состоящей из слова cat и нажатия на клавишу табуляции, помогает узнать пользователю о тех названиях, которые загрузчик присвоил всем жёстким дискам. С помощью клавиши Esc можно выйти назад в меню, а кнопка Е поможет изменить ранее написанные для загрузки команды и вновь их исполнить.
Если ОС Linux хранится на флеш-накопителе или внешнем жёстком диске, который можно подключить к компьютеру исключительно через USB-порт, пользователю следует учесть несколько важных проблем. Дело в том, что GRUB install может быть осуществлён не с первого раза, вероятнее всего, придётся несколько раз изменять настройки BIOS и обозначения приводов. Будет лучше, если все свойства, хранящиеся в файле menu.lst, будут настраиваться только вручную.
Кроме того, в файле Initrd следует хранить все важные USB-модули. При работе с Ubuntu в разделе /etc/fstab и строке kernel, расположенной в menu.lst, нужно указывать не сами названия устройств, так как после перезагрузки системы они могут быть изменены, а номера UUID. Пользователь может самостоятельно в menu.lst посредством uuid указать именно тот каталог, в который впоследствии будут помещены ядро и файл Initrd.
Заключение
Несмотря на кажущуюся сложность, произвести GRUB install может каждый. Содействие с новомодными материнскими платами предусматривает простую и беспроблемную работу любой операционной системы, в том числе и Linux, которая может быть инсталлирована непосредственно на самом USB-накопителе. Настроить правильно все параметры и создать все условия для бесперебойного существования двух различных систем нелегко, кроме свободного времени и знаний, пользователь должен обладать немалым опытом, которого нет у тех, кто только начинает знакомство со средой Linux.
Это простой справочник о том, как изменить фон GRUB в Kali Linux (т. е. На самом деле это изображение Kali Linux GRUB).
Поиск настроек GRUB
Это, как правило, первая проблема, с которой все сталкиваются, где я смотрю?
Существует множество способов найти настройки GRUB.
Если вы запустите update-grub в VMWare / VirtualBox, вы увидите что-то вроде этого:
Если вы используете двойную загрузку, Triple Boot, вы увидите, что GRUB идет и находит другие ОС.
Тем не менее, нам интересна часть фона, в моем случае это то, что я вижу (вы увидите точно то же самое):
Порядок поиска изображений GRUB
В grub-2.02 он будет искать всплывающее изображение в следующем порядке для системы на базе Debian:
- GRUB_BACKGROUND строка в / etc / default / grub
- Первое изображение, найденное в / boot / grub / (найдено больше изображений, оно будет выполняться буквенно-цифровым способом)
- Изображение, указанное в /usr/share/desktop-base/grub_background.sh
- Файл, указанный в строке WALLPAPER в файле /etc/grub.d/05_debian_theme
Теперь держитесь за эту информацию, и мы скоро ее пересмотрим.
Изображение splash Kali Linux GRUB
Поскольку я использую Kali Linux , мы обнаружили, что Kali использует фоновое изображение отсюда: /usr/share/images/desktop-base/desktop-grub.jpg
Чтобы быть уверенным, давайте проверим этот файл .jpg и его свойства.
Это просто символическая ссылка на файл /etc/alternatives/desktop-grub?
Но /etc/alternatives/desktop-grub не является файлом изображения.
Похоже, мне нужно проверить этот файл и его свойства.
Хорошо, это сбивает с толку!
Но по крайней мере сейчас мы можем просто заменить этот файл и получить его.
Прежде чем мы это сделаем, нам нужно проверить свойства этого файла /usr/share/images/desktop-base/kali-grub.jpg и убедиться, что мы будем загружать файлы того же типа и размера.
Таким образом, этот файл представляет данные изображения PNG размером 640 x 480.
Свойства фонового изображения GRUB
GRUB 2 может использовать PNG, JPG / JPEG и TGA изображения для фона.
Изображение должно соответствовать следующим спецификациям:
По умолчанию, если установлен пакет desktop-base, изображения, соответствующие указанной выше спецификации, будут расположены в каталоге /usr/share/ images/desktop-base/.
Быстрый поиск в Google нашел похожие файлы.
Из них я выбрал один.
Вариант 1: замените изображение
Теперь нам просто нужно заменить этот файл /usr/share/images/desktop-base/kali-grub.jpg нашим новым файлом.
Обратите внимание, что это самый простой способ, не обманывая файлы grub-config.
Если вы знакомы с GRUB, тогда измените конфигурацию GRUB по умолчанию и запустите update-grub.
Как обычно, я сделаю резервную копию исходного файла, переименовав его в kali-grub.jpg.bkp
Теперь давайте скопируем наш загруженный файл и переименуем его в kali-grub.jpg.bkp.
И, наконец, запустить update-grub
В следующий раз, когда вы перезапустите свой Kali Linux, вы увидите свое собственное изображение в качестве фона GRUB.
Ниже приводится то, что теперь выглядит мое новое изображение GRUB splash в Kali Linux.
Любите экспериментировать? Наверняка вы когда-либо пытались произвести какие-то действия со своей Linux-системой, причем не так важно какие были цели: изучение и познание новых возможностей или же какая-то более конкретная цель, в виде исправления той или иной ошибки. В любом случае, при работе с дистрибутивами Linux, для загрузки которых, в большинстве случаев, и используется Grub, с последним могут возникать неприятные проблемы, ввиду которых дальнейшая эксплуатация системы просто-напросто невозможна. В этой статье вы узнаете, что делать, если не загружается Linux. Как вести себя в подобной ситуации и какие действия производить, чтобы починить загрузчик Grub. Пожалуй, начнем.
Что такое Grub
Grub (или GRand Unified Bootloader) - загрузчик операционных систем с открытым исходным кодом. Распространяется он под лицензией GNU GPL, в полностью свободном виде. С помощью этого замечательного лоадера можно сделать много всего - основная же функция не ограничивается загрузкой лишь одной операционной системы. Вы можете иметь куда больше операционных систем на своем ПК, загружая любую из них с помощью Grub. На скриншоте выше вы можете видеть как примерно Grub выглядит. Кстати говоря, если вы захотите установить Ubuntu 18.04 рядом с Windows, вам определенно понадобится помощь Grub.
Grub используется в большинстве дистрибутивов Linux в качестве загрузчика по-умолчанию. Разумеется и с ним иногда возникают проблемы. Этим самые проблемы чреваты полным отказом операционной системы. Поэтому для починки Grub нам понадобятся дополнительные инструменты. Какие именно - узнаете далее.
От чего могут возникнуть проблемы
Одна из самых распространенных причин - это неправильный порядок установки двух операционных систем (Linux и Windows). Допустим, если вы захотите установить две этих операционных системы на свой ПК - вам непременно стоит знать правильную последовательность:
- Сначала устанавливаем Windows
- И только потом уже Linux
Если, например, сделать наоборот, то как раз-таки Grub будет поврежден; система будет грузиться напрямую в Windows, а дистрибутив Linux останется недоступным.
Grub может сломаться и по другим причинам. Например, из-за попыток ручного изменения параметров запуска (при недостатке опыта), в таком случае нужно будет либо вручную убирать лишнее, либо полностью переустанавливать Grub.
Восстановление Grub с помощью LiveCD/USB
Для этого способа нам понадобится флешка с дистрибутивом Linux на борту. Подойдет любой: от Ubuntu, Arch или даже Linux Mint. Здесь нужен только терминал, поэтому подойдет даже версия без графической оболочки.
Как создать LiveCD/USB
Само собой, нам понадобится носитель, на который мы временно (а может и нет) запишем систему. Сохраните все важные файлы, которые были на этом носителе, после чего (имеется ввиду на другом ПК, желательно под управлением Windows) запишите загруженный образ дистрибутива на носитель. В качестве примера мы будем использовать дистрибутив Ubuntu.
Идем на официальную страницу загрузки. Загружаем любую понравившуюся версию (лучше взять новейшую для десктопа), после чего записываем ее на USB/CD.
С помощью Rufus:
Последняя версия приложения доступна на официальном сайте. Сразу после загрузки и запуска/установки мы увидим такое окно:
Вставляем носитель, выбираем его в соответствующем меню. Далее выбираем нужную схему раздела и тип системного интерфейса, и после уже открываем файловый менеджер с помощью этой кнопки:
Находим загруженный образ через менеджер, после чего жмем "Старт".
С помощью Etcher:
Опять же, идем на официальный сайт, где скачиваем последнюю версию утилиты. Далее делаем все так, как показано на этой гифке:
Ну а теперь, собственно, можно переходить к восстановлению Grub. Вставляем флешку в наш ПК (где сломан загрузчик), после чего перезагружаем его с этой самой флешки. Как только мы войдем в лайв-систему, сразу открываем терминал, после чего проделываем следующие действия:
Открываем таблицу разделов с помощью команды:
Примерно такая таблица будет выведена на экран:
По этой таблице мы видим, что Linux, в нашем случае, расположен на разделе /dev/sda1.
С помощью следующей команды мы смонтируем этот раздел в /mnt:
Теперь, для записи grub в MBR, нужно ввести следующую команду:
Если нужно только восстановить MBR диска (после переустановки Windows, к примеру), то этих действий будет вполне достаточно.
Если же необходимо обновить и меню grub (после установки Windows), то нужно выполнить еще и эту команду:
Вот и все, восстановление закончено!
Восстановление с помощью chroot
Помимо вышеописанного способа, при восстановлении Grub с помощью LiveCD можно использовать и этот. Тут мы будем использовать утилиту chroot.
Здесь нам, опять же, понадобится таблица разделов. Вводим уже известную команду:
В выводе снова будет эта таблица. Теперь нам надо присмотреться к ней еще внимательнее.
В этом способе нам необходимо примонтировать системный, а также нескольких других важных разделов. Для этого вводим эти команды:
Обратите внимание, что если если разделы /boot или /var находятся отдельно, то Вам нужно будет примонтировать их в /mnt/boot и /mnt/var.
Далее мы переходим в окружающую среду chroot с помощью команды:
И теперь, наконец-таки переустанавливаем Grub с помощью следующей команды:
Если все прошло успешно, выходим из chroot, используя команду:
Далее нужно отмонтировать все разделы. Для этого вводим в терминал:
В случае, если вы монтировали раздел /boot введите команду:
Теперь перезагружаем систему с помощью:
Можно также обновить меню Grub, используя команду:
Восстановление Grub в rescue mode
Если по каким-то причинам у вас нет доступа к LiveCD/USB-носителю, а также к компьютеру, с помощью которого этот самый носитель можно было бы сделать, то этот способ для вас.
Само восстановление проходит таким образом: сначала мы подгружаем все модули, чтобы открыть доступ ко всей функциональной части Grub, после чего запуститься с нужного раздела. Надо понимать, что Grub состоит из двух частей:
Одна из этих частей (первая) записана в MBR диска. В ней присутствует базовый функционал и ничего больше (консоль в rescue mode).
Стало быть, нам нужно определить, в каком разделе находится вторая часть Grub (находится в каталоге /boot/grub), и после чего подгрузить все недостающие модули. А вот уже после этого мы сможем запустить загрузчик с нужного раздела. В rescue mode есть всего четыре команды:
Для начала вводим следующую команду:
В выводе будет что-то подобное:
В некоторых случаях Grub неправильно опеределяет файловые системы находящиеся на разделах дисков. В данном примере загрузчик показывает их как msdos. Мы должны попытаться угадать диски, которые видим. В примере доступно два диска. Диск с индексом 0 содержащий три раздела, и диск с индексом 1 содержащий два раздела. Если вы знаете структуру своих дисков, определить нужный труда не составит.
В загрузчике Grub разделы нумеруются в обратном исчислении. Не очень ясно какой именно из разделов назван, к примеру (hd0,msdos3). Чтобы было более понятно, можно использовать вид (hd0,1). Если в грабе отсчет дисков идет с 0, а разделов с 1, то можно определить, что операционная система установлена в первый раздел первого раздела - (hd0,1). Используем следующую команду:
С помощью этих команд мы приказываем системе использовать какой-то конкретный диск, для выполнения всех остальных операций (в нашем случае, это диск (hd0,1)). Чтобы проверить есть ли на данном диске загрузчик, введем эту команду:
Если в выводе будет список файлов и папок, значит мы все сделали правильно. Теперь можно загрузить все необходимые модули. Для этого выполним команды:
После выполнения команд Grub загрузится в полнофункциональном режиме. Будут найдены все операционные системы, которые установлены на компьютере, после чего будет показано стандартное меню загрузки.
Чтобы закрепить результат (и не проделывать все то же самое после перезапуска ПК), нужно зайти в терминал своего дистрибутива Linux, где с root правами выполнить следующую команду:
sdX - диск, на который должен быть установлен Grub.
Если операционная система расположена на разделе с файловой системой btrfs, то нам необходимо выполнить следующие команды:
И подгрузить модули:
Ну и теперь запустить GRUB:
Восстановление Grub с помощью утилиты Boot repair
С помощью этой замечательной утилиты вы сможете восстановить загрузчик всего в пару кликов. Как видно из скриншота, утилита имеет собственный GUI, ее использование не вызовет трудностей.
Чтобы установить boot repair, вы можете воспользоваться одним из приведенных способов:
- Запись и установка специального образа диска Boot Repair (и дальнейшая загрузка с него)
- Установка Boot repair из PPA-репозитория в LiveCD/USB дистрибутиве.
Если с первым способом все понятно: нужно просто скачать и записать образ с помощью соответствующих инструментов. То во втором уже нужно знать конкретные команды, которые выглядят следующим образом:
В утилите будет доступно два варианта на выбор:
Recommended repair исправляет большую часть известных ошибок, которые могли бы возникнуть при запуске. С его помощью вы сможете пофиксить и загрузчик Grub.
Create a BootInfo summary создает Boot-Info-Script – скрипт, который позволяет диагностировать большинство проблем при загрузке.
Здесь же есть и Advanced options. Он включает в себя варианты для восстановления и настройки загрузчика Grub2 (загрузка по-умолчанию, опции загрузки ядра, отображение или скрытие GRUB при загрузке, удаление GRUB). С помощью этих же инструментов, вы можете восстановить MBR и т.д.
Вам обязательно стоит заглянуть на официальный сайт Boot Repair. Там вы сможете найти более подробную информацию обо всех возможностях и особенностях программы. Там же будет доступна информация о выходе новых версий: фиксах и улучшениях самой утилиты, а также многом и многом другом.
Выводы
Вот мы и рассмотрели несколько вариантов исправления загрузчика Grub. Стоит сказать, что некоторые из них могут показаться сложными или даже невыполнимыми. Это не так, каждый из рассмотренных способов нашел подтверждение в виде сотен и тысяч актов исправления загрузчика Grub в опенсорсном сообществе. Кстати говоря, какой из способов выбрать - решать только вам, любой из них достаточно эффективен, чтобы попасть в этот материал.
Возможно вас заинтересуют и другие похожие материалы про починку загрузчика Grub2. Например, в этом материале вы узнаете, как починить GRUB2 если Ubuntu не хочет загружаться. Там более подробно рассказывается, как фиксить груб с помощью утилиты Boot Repair, возможно вам стоит заглянуть туда, если вы не поняли что-то из этого материала. Что же, ну а на сегодня это все. Надеюсь, что данный материал помог вам разобраться в ошибках. Что, в свою очередь, поможет вам их решить.
Читайте также: