Установка и настройка загрузчика grub ос linux
Содержание:
- Восстановление GRUB 2
- Конфигурация GRUB
- Что такое Grub и из-за чего он может повреждаться
- Восстановление GRUB 2
- Как удалить загрузчик Grub в UEFI
- Восстановление GRUB 2 после установки Windows
- Система Ubuntu не загружается
- Как восстановить загрузчик GRUB?
- Восстановление в rescue mode
- /etc/grub.d
- Установка Grub на флешку
- Что еще предпринять, чтобы починить загрузку
- Способ 3. Ремонт с помощью Boot Repair в Ubuntu
- Генерация файла конфигурации GRUB
- Что такое GRUB?
- GRUB2. Восстановление. Запуск системы.
- Монтирование вашей установки Arch Linux
- Восстановление GRUB 2
- Восстанавливаем загрузчик GRUB через Boot-Repair в Ubuntu
- Почему «ломается» загрузчик GRUB?
- Восстановление Grub после установки Windows 10
Восстановление GRUB 2
Сначала необходимо загрузится с LiveDVD. Когда система загрузится, открываем терминал (Ctr+Alt+T) и смотрим структуру разделов с помощью команды:
У меня, как видно по выводу команды, диск разделен на 6 разделов: два NTFS для Windows, Extended (расширенный) и три отмечены как Linux для Ubuntu. Чтобы установить GRUB необходимо примонтировать корневой раздел Ubuntu — мой sda5:
И чтобы записать GRUB в загрузочную запись, нужно выполнить в терминале команду:
После этого можно перезагрузить компьютер:
GRUB восстановлен. Но остался один момент. Сейчас на виртуальной машине была установлена Windows 10, но в меню загрузчика по прежнему она отображалась как семерка, из-за чего при попытке ее запуска выскакивала ошибка. Чтобы исправить это достаточно было просто загрузится в Ubuntu (не LiveDVD) и через терминал обновить загрузчик:
Вот так просто можно восстановить GRUB после установки Windows
Конфигурация GRUB
# cat /etc/grub.conf # создаётся с помощью imagebuilder default=0 timeout=0 hiddenmenutitle Amazon Linux 2018.03 (4.14.181-108.257.amzn1.x86_64) root (hd0,0) kernel /boot/vmlinuz-4.14.181-108.257.amzn1.x86_64 root=LABEL=/ console=tty1 console=ttyS0 selinux=0 nvme_core.io_timeout=4294967295 initrd /boot/initramfs-4.14.181-108.257.amzn1.x86_64.imgtitle Amazon Linux 2018.03 (4.14.177-107.254.amzn1.x86_64) root (hd0,0) kernel /boot/vmlinuz-4.14.177-107.254.amzn1.x86_64 root=LABEL=/ console=tty1 console=ttyS0 selinux=0 nvme_core.io_timeout=4294967295 initrd /boot/initramfs-4.14.177-107.254.amzn1.x86_64.img
Здесь, как вы видите, присутствует более 1 записи меню. Запись меню наряду с параметрами содержит информацию о расположении образов ядра и initrd. Каждая запись начинается с “title…” и содержит численный порядок, начиная с 0. Значение “default” определяет текущий образ ядра, который используется для загрузки serve=. В конфигурации, приведённой выше, значение представлено как “0”. Это означает, что действует первая запись меню (4.14.181–108.257.amzn1.x86_64). Давайте взглянем на строку ядра. Вся структура name, указанная после местоположения образа ядра (выделена жирным курсивом и разделена пробелами), представляет параметры загрузки:
Важно знать её, чтобы добавлять параметры в правильную запись меню
Что такое Grub и из-за чего он может повреждаться
После того как вы производите инсталляцию Linux на жёсткий диск вашего компьютера, все файлы копируются в отдельные папки. В одних каталогах хранятся файлы обычного программного обеспечения, которое можно спокойно удалить. В других же записываются файлы, без которых операционная система работать не будет. Сюда относятся ядро Linux, графическая оболочка, а также системный загрузчик Grub. Именно последний и применяется для того, чтобы запускать инсталлированную операционную систему. Каким образом это происходит?
В специальном загрузочном разделе система создаёт главную загрузочную запись. Её английская аббревиатура выглядит как MBR, и расшифровывается как Master Boot Record. При старте компьютера BIOS обращается к этой записи, а потом в действие вступает Grub и, когда всё в порядке, происходит запуск Linux. И если же загрузчик повреждён, при запуске произойдёт ошибка и система запускаться не будет.
По каким причинам это может случиться? Подавляющее большинство случаев являются следствием того, что после установки Linux в качестве первой системы вы устанавливаете Windows в роли дополнительной. Компания Microsoft традиционно не любит Linux, поэтому установщик Windows удаляет Grub Linux. Эта же проблема может возникнуть при некорректной установке самого Linux, перехода на другой дистрибутив либо из-за переразметки диска.
Самое важное, что следует учесть — это то, что не нужно сразу же думать о переустановке всей системы. Достаточно лишь просто восстановить Grub и всё будет работать, как и прежде
Перейдём к рассмотрению наиболее действенных способов, доступных даже неопытным юзерам.
Восстановление GRUB 2
Сначала необходимо загрузится с LiveDVD. Когда система загрузится, открываем терминал (Ctr+Alt+T) и смотрим структуру разделов с помощью команды:
У меня, как видно по выводу команды, диск разделен на 6 разделов: два NTFS для Windows, Extended (расширенный) и три отмечены как Linux для Ubuntu. Чтобы установить GRUB необходимо примонтировать корневой раздел Ubuntu — мой sda5:
И чтобы записать GRUB в загрузочную запись, нужно выполнить в терминале команду:
После этого можно перезагрузить компьютер:
GRUB восстановлен. Но остался один момент. Сейчас на виртуальной машине была установлена Windows 10, но в меню загрузчика по прежнему она отображалась как семерка, из-за чего при попытке ее запуска выскакивала ошибка. Чтобы исправить это достаточно было просто загрузится в Ubuntu (не LiveDVD) и через терминал обновить загрузчик:
Вот так просто можно восстановить GRUB после установки Windows
Как удалить загрузчик Grub в UEFI
Эта проблема тоже решается с помощью утилиты Bootice. Только на это раз вам нужна именно 64-битная версия программы.
Одно из преимуществ UEFI на MBR в том, что здесь можно устанавливать сразу несколько загрузчиков на специальный раздел. Для удаления загрузчика Grub и восстановления функциональности Windows достаточно переместить Grub чуть ниже в очереди загрузки UEFI.
Откройте программу, перейдите на вкладку UEFI и нажмите Edit Boot Enteries. Откроется такое окно:
Здесь у вас есть два варианта действий. Либо опустить Grub ниже загрузчика Widnows кнопкой Down, либо полностью удалить запись о загрузчике кнопкой Del. Но в обоих случаях файлы загрузчика останутся на диске. Полностью удалить загрузчик Grub со всеми его файлами нужно из командной строки. Это немного сложный процесс, но всё же мы его разберём.
Кликните в левом нижнем углу экрана правой кнопкой мыши, в открывшемся контекстном меню выберите Командная строка от имени администратора.
Далее нам понадобится утилита diskpart, все действия мы выполним с помощью неё. Запустите её командой:
Затем смотрим доступные диски:
И выбираем наш единственный диск, на котором сейчас установлена Windows, а раньше была установлена Ubuntu:
После того, как был выбран диск, мы можем посмотреть список разделов на нём:
Среди этих разделов есть и раздел с файлами EFI, для обычной системы он скрыт, но не для этой утилиты. В нашем случае это Volume 2. Как правило, это небольшой раздел с файловой системой FAT32 и отмеченный как системный.
Мы выбрали этот раздел текущим с помощью команды:
Затем назначим ему букву, чтобы можно было с ним работать:
Утилиту можно закрывать. Дальше продолжаем выполнять действия в консоли. Сделать всё с помощью проводника вы не сможете, потому что нужны права администратора. Переходим на диск E:
Переходим в папку EFI:
Удаляем папку с файлами загрузчика Ubuntu:
Готово: удаление загрузчика Grub завершено, и теперь его файлов больше нет в системе.
Восстановление GRUB 2 после установки Windows
Если вы на своем компьютере используете дуалбут из Windows и Linux, то вероятно уже знаете, что во время установки ОС для того, чтобы было меньше возни, лучше устанавливать сначала ОС от Microsoft а потом только Ububtu, Debian или что вы там желаете установить. Связано это с тем, что Windows не видит других операционных систем кроме своих и поверх загрузчика GRUB записывает в MBR свой загрузчик. Соответственно, если вы установите сначала Linux а потом Windows, то в итоге не сможете загрузить Linux, так как его просто не будет в списке загрузки. Но что же делать если вам все же необходимо переустановить Windows или просто установить ее на компьютер с Linux? Не переустанавливать же ради этого и Linux? Нет. Просто после всего, что вы сделаете нужно будет восстановить загрузчик GRUB.
Для демонстрации я приведу свой случай с виртуальными машинами, но данный способ ничем не отличается от восстановления GRUB на реальном железе.
У меня на один виртуальный жесткий диск были установлены Ubuntu 14.04 и Windows 7. И вот мне захотелось попробовать developer версию Windows 10. Я решил установить ее поверх семерки. Как и положено, после всех манипуляций Windows 10 заработала, а Ubuntu не запускалась. Так как Ubuntu мне нужна была для работы я решил восстановить затертый GRUB.
Система Ubuntu не загружается
Рассмотрим, с чем в первую очередь может быть связана проблема с загрузкой системы. Вот список наиболее вероятных причин:
- Первое самое очевидное — у вас сломался жесткий диск, на который установлена система. Тут все ясно и починить вряд ли что-то получится. Надо менять диск и переустанавливать на новый диск систему. Далее не буду рассматривать этот случай.
- Возникли проблемы с загрузчиком grub, который запускается перед загрузкой основной системы. Вы в него попадаете, но дальше видите какие-то ошибки, чаще всего связанные с тем, что не найден корневой раздел системы, поэтому загрузка невозможно. С этими же проблемами вы можете оказаться в режиме recovery mode, где можно выполнить какие-то действия.
- У вас поврежден загрузчик, с которого начинается загрузка системы после старта компьютера. Это небольшая область в начальных секторах жесткого диска. Если с загрузчиком проблемы, то загрузка даже не начинается и вы сразу получаете ошибку на тему того, что с данного жесткого диска невозможно загрузиться.
Далее я отдельно рассмотрю второй и третий случаи. Начнем со стандартного режима восстановления grub.
Как восстановить загрузчик GRUB?
Если случалось так, что файлы в соответствующих разделах полностью затерты, то придется заниматься восстановлением загрузчика. Процесс этот можно осуществить двумя способами.
Первый из них предполагает взаимодействие с системой через терминал:
- Требуется загрузить Linux с того носителя, который использовался при инсталляции. Иногда необходимо войти в БИОС, чтобы включить загрузку с диска или флешки.
- Далее стоит открыть терминал, нажав комбинацию клавиш Ctrl + Alt + T, и вывести существующие разделы на экран посредством команды sudo fdisk —i.
- После этого появится таблица с каталогами. Нужно найти корневой раздел и смонтировать его. Для этого следует ввести sudo mount /dev/sda5/mnt. Вместо sda5 требуется прописать имя конкретного раздела. Он может отличаться.
- Восстановить загрузчик помогает команда sudo grub-install – root-directory=/mnt /dev/sda.
- В самом конце нужно ввести sudo reboot для перезагрузки.
При необходимости можно воспользоваться специальной утилитой, чтобы автоматизировать процесс. Для этого после загрузки с установочного носителя придется ввести всего три команды. Пример для дистрибутива Ubuntu.
- первая – sudo add-apt-repository ppa^yannubuntu/boot-repair;
- вторая – sudo apt-get update;
- третья – sudo apt-get install boot-repair.
Восстановление в rescue mode
При отсутствии загрузочного диска, можно восстановить Grub из его консоли. Восстановление происходит следующим образом: сначала нужно подгрузить все модули, чтобы стала доступна вся функциональность Grub, а затем уже запуститься с нужного раздела. Как известно, Grub состоит из двух частей. Первая часть записана в MBR диска. Она содержит базовую функциональность, то есть в ней есть консоль в rescue mode и ничего больше. Вначале нужно определить, на каком разделе находится вторая часть груба (она лежит в каталоге /boot/grub), подгрузить недостающие модули. И только потом можно будет дать команду запуска с нужного раздела. В rescue mode доступно всего четыре команды:
Вначале следует дать команду:
В ответ она выведет, например, следующее:
Иногда Grub может неправильно опеределить, какие файловые системы находятся на разделах дисков. В данном случае определяет их как msdos. Нам нужно постараться угадать, какие диски мы видим. В данном случае видно два диска. Диск с индексом 0 содержит три раздела, диск с индексом 1 содержит два раздела. Зная структуру своих дисков несложно определить нужный диск.
Этими командами мы указываем использовать диск (hd0,1) для дальнейших команд. После чего нужно проверить, действительно ли на этом разделе есть то, что нам нужно. Даем команду:
если в ответ получаем список всех файлов в этой директории, то диск и раздел выбраны правильно. Подгружаем модули:
После чего Grub перейдёт в полнофункциональный режим. Он автоматически найдет все операционки, которые можно подгружать, и покажет своё Grub-меню.
Дальнейшее восстановление сводится к тому, чтобы загрузить нужный нам Linux, и в нем от рута дать команду:
Где sdX, диск, на который нужно установить Grub.
/etc/grub.d
Эта папка содержит в себе скрипты, которые используются для создания файла «grub.cfg». При обновлении GRUB они находят все установленные на компьютере системы и ядра и формируют в файле «grub.cfg» меню загрузки, которое мы и видим. Два основных из них:
- «10_linux» и «30_os-prober» отвечают за поиск Linux ядер и остальных ОС на других разделах соответственно.
- Файл «40_custom» позволяет добавлять свои пункты загрузки. Это может быть полезно, если вы, например, хотите добавить какие-то особые варианты загрузки системы.
Файл «40_custom» должен заканчиваться пустой строкой, иначе последний пункт не будет отображаться в меню!
Пример
Добавляем режим загрузки без графической заставки, с текстовым отображением процесса загрузки (verbose mode). Для этого мы немного отредактируем обычный пункт загрузки. допустим, он выглядит так (в «/boot/grub/grub.cfg«):
menuentry "Ubuntu, Linux 2.6.32-020632rc6-generic" { recordfail=1 if ; then save_env recordfail; fi set quiet=1 insmod ext2 set root=(hd0,5) search --no-floppy --fs-uuid --set 0e717c2a-24bd-4abe-acfe-ecf98fc814f8 linux /boot/vmlinuz-2.6.32-020632rc6-generic root=UUID=0e717c2a-24bd-4abe-acfe-ecf98fc814f8 ro quiet splash initrd /boot/initrd.img-2.6.32-020632rc6-generic }
Для того, чтобы сделать из этого verbose mode, нам нужно убрать опции quiet и splash и изменим название самого пункта. В итоге получаем:
echo "adding verbose mode" >&2 menuentry "Ubuntu, Linux 2.6.32.rc6 verbose-mode" { recordfail=1 if ; then save_env recordfail; fi set quiet=1 insmod ext2 set root=(hd0,5) search --no-floppy --fs-uuid --set 0e717c2a-24bd-4abe-acfe-ecf98fc814f8 linux /boot/vmlinuz-2.6.32-020632rc6-generic root=UUID=0e717c2a-24bd-4abe-acfe-ecf98fc814f8 ro initrd /boot/initrd.img-2.6.32-020632rc6-generic }
Все это и добавляем в «40_custom» в конец файла. Строка с echo не является обязательной она лишь будет сигнализировать нам о том, что наш пункт найден и добавлен при обновлении GRUB.
Установка Grub на флешку
Если вы устанавливаете на фшелку дистрибутив, то у вас не возникнет никаких проблем с установкой загрузчика. Он устанавливается так же, как и при установке на жесткий диск. Вам достаточно перейти в chroot окружение новой системы, подключить все ее разделы, а затем просто установить загрузчик командой:
И создать конфигурационный файл:
Но если вам нужен загрузчик без операционной системы, то дело немного усложняется. Вы не можете использовать просто grub-install, а конфигурация вообще не будет создана, так как утилита не понимает где находятся файлы загрузчика и файлы конфигурации для него. Но есть решение.
Важно заметить, что при любом способе установки загрузчика, желательно, чтобы на флешке использовалась таблица разделов MBR. Конечно, я не встречал флешек с GPT, но вы сами можете ее создать при желании, а тогда с установкой загрузчика возникнут проблемы
Второе, что важно заметить, фшелку желательно отформатировать в файловую систему fat32. Это важно, чтобы там можно было разместить файлы Grub. Потому что если флешка будет форматирована в NTFS, то ничего не выйдет, а в ext4 — то вы не сможете подключить ее в Windows и использовать для обмена файлами.
Далее подключите флешку в какую-нибудь папку, например, mnt:
Имя устройства /dev/sdb1 — это адрес первого раздела на вашей флешке. Обычно там есть только один раздел, так и должно быть. Если больше, то берите первый. А имя флешки может отличаться — sdb, sdc, sdd или другие. Смотрите как флешка называется у вас с помощью fdisk:
Когда устройство подключено мы можем перейти к установке загрузчика:
Здесь мы указываем параметр —root-directory, это та папка, которая будет считаться корнем системы, и откуда будут браться файлы загрузчика при старте. Установщик автоматически скопирует их туда. Устройство /dev/sdc — ваша флешка. После того, как установка будет завершена, можно перейти к настройке пунктов меню. Забегая наперед, если эта команда не работает, используйте опцию —boot-directory вместе с —root-directory, разные версии Grub работают по разному:
Теперь нужно создать конфигурационный файл. Если вы используете grub-mkconfig, то получите такое же меню, как в вашей основной системе. Меня это вполне устраивает, только укажите правильное расположение файла, в папке /mnt:
Теперь нам осталось протестировать как все работает. Для этого лучше использовать qemu:
Если возникли ошибки вы можете их быстро исправить не перезагружая компьютер. В дальнейшем, когда вам понадобятся новые пункты меню, вы можете добавить их вручную. Этот конфигурационный файл не будет стерт при обновлении системы, поскольку он на флешке.
Что еще предпринять, чтобы починить загрузку
Если ничего из описанного не помогает, то дальше могут быть такие варианты:
- У вас проблемы с самими данными на разделе. Раздел /boot или корневой, просто не читаются, уничтожены или развалилась файловая система. Попробуйте починить с помощью fsck.
- Если починить /boot не получилось, то его нужно создать заново. Загрузитесь с livecd. Найдите раздел с загрузчиком, либо создайте новый. Отформатируйте его, установите на него загрузчик и запишите его в MBR с указанием на вновь созданный раздел.
Если ничего не помогло и вы не понимаете, что нужно сделать, то посмотрите вот это руководство по grub. Здесь очень хорошо и подробно все описано.
Еще совет. Если у вас живы сами данные, то зачастую бывает проще настроить новую виртуалку, подключить к ней диск от старой и перенести все данные. Так вы точно сможете спрогнозировать время восстановления системы. Обычно за час на все про все можно уложиться. Когда вы начинаете чинить упавшую систему, никогда точно не знаете, сколько времени уйдет на восстановление. В моем случае я загрузку за 30 минут и запустил машину. Потом еще 2 часа разбирался на копии виртуальной машины, что случилось и пытался найти решение проблемы без переустановки виртулаки. Получил некоторый опыт, но если бы я сразу все перенес на новую виртуальную машину, то потратил бы меньше времени.
Способ 3. Ремонт с помощью Boot Repair в Ubuntu
Ошибка Grub Rescue Unknown Filesystem также исправляется с помощью этой утилиты.
Boot Repair — простой инструмент для восстановления частых проблем с загрузкой для Linux, Windows и других ОС. Он бесплатный, с открытым исходным кодом и простой в использовании (ремонт одним щелчком мыши).
Так как загрузчик не работает, следует запустить Ubuntu с Live CD или USB-карты. И далее, через терминал скачать эту утилиту для починки загрузчика.
Важно! Чтобы каждый раз не проводить эту операцию заново, Вам нужно будет восстановить загрузчик Grub. Как это делается я уже рассказывал, в предыдущей статье
Генерация файла конфигурации GRUB
Данный шаг нужно выполнять не всем. Если у вас был установлен GRUB и вы уверены, что его конфигурация верная, то можно перейти к следующему шагу.
Для генерации файла конфигурации GRUB используется команда update-grub. Данная команда автоматически определяет файловые системы на вашем компьютере и генерирует новый файл конфигурации. Выполняем команду:
sudo update-grub
В выводе команды будет показано, какие операционные системы были найдены.
Если вдруг утилита update-grub не определила ваш Windows (у меня такое было для UEFI), то можно будет запустить update-grub повторно уже из вашей Linux-системы, когда вы в нее загрузитесь (мне это помогло и Windows определился).
Что такое GRUB?
Загрузчик или менеджер загрузки
Я не хочу запутать вас на этом этапе, но эта тема нуждается в разъяснении перед тем, как мы продолжим. Разница между менеджером загрузки и загрузчиком весьма размыта.
Вы уже знаете, что сначала стартует загрузчик, затем он загружает ядро в память и запускает его. Менеджер загрузки — это программа, которая позволяет вам выбрать между операционными системами, если на вашей системе их больше одной. Менеджер загрузки не запускает операционную систему напрямую.
Ядро Linux версии 3.3 включает в себя встроенный загрузчик EFI. Фактически, любая операционная система, способная работать с EFI включает в себя загрузчик EFI. В системах с поддержкой EFI системная прошивка считывает системный раздел EFI (ESP) для обнаружения файлов EFI на загрузочном разделе.
GRUB — это одновременно загрузчик и менеджер загрузки. Через секунду я вернусь к GRUB. Сначала давайте взглянем на другие GRUB — подобные программы.
Примечание: GRUB — это аббревиатура для GRand Unified Bootloader (большой объединённый загрузчик).
2. Какие существуют загрузчики, похожие на GRUB?
GRUB — наиболее популярный загрузчик для Linux. Но не единственный. Есть ещё менеджер загрузки rEFInd, который нравится некоторым пользователям Linux.
Персонализированный экран менеджера загрузки rEFInd
Существует также текстовый менеджер загрузки systemd-boot . Вы можете догадаться, что он предназначен только для дистрибутивов, основанных на systemd. Некоторые дистрибутивы, как Pop OS, используют systemd-boot.
systemd-boot в Pop OS
Про другие загрузчики читайте в статье Лучшие загрузчики для Linux.
3. Доступ к опциям и настройкам GRUB
Обычный экран GRUB, который вы видите — это интерфейс меню. Он позволяет вам выбрать, какую операционную систему загрузить, если на вашей машине более одной ОС. Вы также можете выбрать другое ядро для вашего дистрибутива Linux, если у вас установленно более одного.
В зависимости от настроек, у вас могут быть другие опции в меню GRUB. Вы можете редактировать меню GRUB. нажав кнопку Е. Таким способом вы можете менять параметры ядра перед его загрузкой. Например, в некоторых случаях отключение драйвера графики поможет загрузить зависшую при старте систему.
Вы также можете войти в командную строку GRUB используя кнопку C в меню GRUB.
4. Файл настроек GRUB
Любые изменения, которые вы делаете из меню GRUB — временные. Если вы хотите сохранить настройки GRUB, например, изменить паузу перед автоматической загрузкой по умолчанию, то вы можете изменить настройки после загрузки системы Linux.
Стандартный файл настроек GRUB находится в /etc/default/grub. Также есть папка /etc/default/grub.d. Вы можете редактировать файл /etc/default/grub напрямую, однако рекомендуется сохранять дополнительные изменения в вышеуказанной папке.
Стандартный файл настроек GRUB
Вы должны обновить GRUB для того, чтобы ваши изменения стали действовать. Фактически, когда бы вы ни установили дополнительный дистрибутив Linux на ваш компьютер, он попытаться переписать существующие настройки GRUB своими. Подробнее о настройках Grub читайте здесь.
5. GRUB customizer для лёгкой настройки GRUB
Если редактирование файла текстовым редактором в терминале — не то, что вам нравится, то вы можете использовать графическую утилиту, называющуюся GRUB Customizer. Она позволяет вам менять порядок загрузки, задержку загрузки и т.п. Вы также можете изменить фон GRUB на обои по своему усмотрению.
GRUB Customizer может быть установлен в Ubuntu 20.04 из репозитория Universe и через PPA в Ubuntu 18.04. Он также доступен через AUR в дистрибутивах, основанных на Arch Linux. Подробнее про использование Grub Customizer рассказано в этой статье.
GRUB2. Восстановление. Запуск системы.
текст гласил: «Поддерживается несколько BASH-подобных команд редактирования строки. Есть вывод списка команд по TAB для дополнения. Также есть везде, где возможно, вывод списка по TAB для устройств или файлов. «
Ну, и собсна,строка «grub> «
По логике вещей стало понятно,что похоже накрылось что-то в загрузчике GRUB. На тот момент я знал о загрузчке:
а) он загружает (что-то. Наверное,систему)
б) он называется GRUB
в) может загружать разные ОС
Все. Да и сейчас не рсбо больше знаю.
Методом проб и ошибок систему я запустил.
2) Восстановление загрузчика.
linux /boot/vmlinuz(здесь указываем полное название ядра,а не просто «vmlinuz») root=/dev/sdaY
initrd /boot/initrd(указываем соответственно ядру, и опять же полное название включая расширение)
Те кто шпаргалку не понял. листайте ниже. там объяснения и фото.
Эта команда возвратит известные диски и разделы.
Далее пользователь должен задать диск и раздел, где находиться система. Если вы не помните/не знаете, где она, то методом научного тыка перебираете все. По очереди. Из тех вариантов, что вам вернула команда ls. То есть в моем случае это было так
На вариантах hd0,5 и hd0,1 команда выдала, что на данных разделах имеется файловая система ext. Значит на одном из них и должна находиться наша система.
Проверить можно также командой ls. Добавив после раздела слэш.
Команда возвратила название каталогов (папок) находящихся на этом разделе. Среди них есть каталог Boot, который нам и нужен.
Но еще неплохо бы узнать какой именно загрузчик у нас. GRUB или GRUB2. Каталог должен находиться в Boot, поэтому вновь воспользуемся командой ls немного ее дополнив
Тут мы видим каталог grub2, а также видим два ядра(vmlinuz) и два файла initrd соответствующих ядрам. Это очень нужная информация!
Дальше мы, используя команду set prefix, устанавливаем префикс и корневой раздел
Указываем путь к файловой системе
загружаем модуль загрузки linux
Теперь нам надо загрузить ядро. У меня их почему-то два. Выбирал наугад.
linux /boot/vmlinuz-4.15.0-desktop-47.2rosa-x86_64 root=/dev/sda1
В конце обязательно указываем root-раздел
В интернетике пишут,что полное название ядра можно не указывать. Можно ограничиться записью вида:
Но у меня почему-то такой вариант не проходил ни в какую. До тех пор пока не указал имя ядра полностью. Может из-за того,что ядра два?!
Теперь выбираем образ инит-диска(еще б мне кто объяснил что такое вообще)
Указывают, что выбор инит-диска можно записать короче
У меня такой вариант не прошел.
Ну-с и последнее. загрузка.
После того как загрузитесь не забудьте установить GRUBcustomizer и поправить свой загрузчик. А то вся это пляска будет при каждой загрузке.
Монтирование вашей установки Arch Linux
Вы должны смонтировать вашу установку Arch Linux в установщике, чтобы переустановить Grub. Для этого запустите команду lsblk. Команда lsblk выведет список всех подключенных устройств хранения в системе.
Отсюда найдите свой корневой раздел. В этом примере метка диска корневого раздела — / dev / sda2. Имейте в виду, что ваш корневой раздел будет отличаться. Вам нужно будет определить, какой корневой раздел использует lsblk.
Как только вы выяснили, что такое метка диска вашего корневого раздела, смонтируйте его в папку / mnt с помощью команды mount.
mount /dev/sda2 /mnt
После монтирования корневого раздела вам нужно будет смонтировать загрузочный раздел. Это сложная часть, и она зависит от типа установки вашей системы Arch Linux.
UEFI
Если вы установили Arch Linux в режиме UEFI, у вас, вероятно, есть выделенный раздел UEFI размером около 512 МБ или около того. В этом примере загрузочный раздел UEFI — это / dev / sda1 и монтируется в / boot / efi / в Arch Linux.
Примечание: метка загрузочного раздела UEFI будет отличаться от метки
Чтобы смонтировать раздел UEFI в установщике, используйте следующую команду монтирования.
mount /dev/sda1 /mnt/boot/efi
Имейте в виду, что каждая система Arch Linux отличается. Во время установки вы выбрали точки монтирования для загрузочного раздела UEFI. Если ваша точка монтирования отличается от / boot / efi, вам необходимо указать это вместо приведенного ниже примера команды, чтобы иметь возможность получить к ней доступ в установщике Arch Linux.
Не можете понять, куда монтируется ваш раздел UEFI? Проверьте свой файл fstab с помощью приведенной ниже команды. В нем указано, где монтируется каждый раздел в Arch Linux.
cat /mnt/etc/fstab
Без UEFI
Если вы установили Arch Linux в режиме без UEFI, загрузчик устанавливается непосредственно в MBR корневого раздела. Для исправления grub нет необходимости монтировать что-либо, кроме корневого раздела.
Восстановление GRUB 2
Сначала необходимо загрузится с LiveDVD. Когда система загрузится, открываем терминал (Ctr+Alt+T) и смотрим структуру разделов с помощью команды:
У меня, как видно по выводу команды, диск разделен на 6 разделов: два NTFS для Windows, Extended (расширенный) и три отмечены как Linux для Ubuntu. Чтобы установить GRUB необходимо примонтировать корневой раздел Ubuntu — мой sda5:
И чтобы записать GRUB в загрузочную запись, нужно выполнить в терминале команду:
После этого можно перезагрузить компьютер:
GRUB восстановлен. Но остался один момент. Сейчас на виртуальной машине была установлена Windows 10, но в меню загрузчика по прежнему она отображалась как семерка, из-за чего при попытке ее запуска выскакивала ошибка. Чтобы исправить это достаточно было просто загрузится в Ubuntu (не LiveDVD) и через терминал обновить загрузчик:
Вот так просто можно восстановить GRUB после установки Windows
Восстанавливаем загрузчик GRUB через Boot-Repair в Ubuntu
Сразу хочется отметить, что дальнейшие инструкции будут приведены на примере загрузки из LiveCD с Ubuntu. Процедура создания такого образа имеет свои нюансы и сложности. Однако разработчики операционной системы максимально детально описали эту процедуру в своей официальной документации. Поэтому мы настоятельно рекомендуем ознакомиться с ней, создать LiveCD и загрузиться с него, а уже потом переходить к выполнению руководств.
Шаг 1: Установка Boot-Repair
Рассматриваемая утилита не входит в стандартный набор инструментов ОС, поэтому ее придется установить самостоятельно, воспользовавшись пользовательским репозиторием. Все действия осуществляются через стандартный «Терминал».
- Запустите консоль любым удобным способом, например, через меню или зажатие горячей клавиши Ctrl + Alt + T.
Загрузите необходимые файлы в систему, прописав команду .
Подтвердите подлинность учетной записи, введя пароль.
Ожидайте завершения загрузки всех необходимых пакетов. Для этого должно иметься активное подключение к интернету.
Обновите системные библиотеки через .
Запустите процесс инсталляции новых файлов, вписав строку .
На компилирование всех объектов уйдет определенное количество времени. Дождитесь появления новой строки ввода и не закрывайте перед этим окно с консолью.
Когда вся процедура прошла успешно, можно смело переходить к запуску Boot-Repair и сканированию загрузчика на наличие ошибок.
Шаг 2: Запуск Boot-Repair
Для запуска установленной утилиты вы можете использовать иконку, которая была добавлена в меню. Однако не всегда получается работать в графической оболочке, поэтому достаточно просто ввести в терминале .
Будет произведен процесс сканирования системы и восстановления загрузки. Во время этого не делайте ничего на компьютере, а также не завершайте принудительно функционирование инструмента.
Шаг 3: Исправление найденных ошибок
После окончания анализа системы программа сама предложит вам рекомендованный вариант восстановления загрузки. Обычно он исправляет самые часто встречающиеся проблемы. Для его запуска просто потребуется нажать на соответствующую кнопку в графическом окне.
Если вы уже сталкивались с работой Boot-Repair или прочитали официальную документацию, в разделе «Расширенные настройки» можете применить собственные параметры восстановления, чтобы обеспечить стопроцентный результат.
По окончании восстановления перед вами откроется новое меню, где будет видно адрес с сохраненными логами, а также отобразится дополнительная информация касаемо результатов исправления ошибок GRUB.
В случае когда у вас нет возможности использовать LiveCD, потребуется загрузить образ программы из официального сайта и записать его на загрузочную флешку. При ее запуске на экране сразу отобразятся инструкции, и потребуется выполнить их все, чтобы решить возникшую проблему.
Обычно с возникновением неполадок GRUB сталкиваются юзеры, которые поставили Ubuntu рядом с Windows, поэтому следующие материалы по теме создания загрузочного накопителя будут максимально полезны, советуем детально ознакомиться с ними.
Подробнее:Программы для создания загрузочной флешкиAcronis True Image: создание загрузочной флешки
В большинстве случаев применение простой утилиты Boot-Repair помогает быстро справиться с наладкой работоспособности загрузчика Ubuntu. Однако если вы и дальше сталкиваетесь с различными ошибками, рекомендуем запомнить их код и описание, а после обратиться к документации Убунту для поиска доступных решений.
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Почему «ломается» загрузчик GRUB?
Естественно, само по себе ничего не происходит. Если «сломалась» загрузка GRUB – значит что-то на это повлияло. Очень часто в подобных ситуациях пользователи говорят, что системную конфигурацию не изменяли, а GRUB вдруг перестал работать. И они отчасти правы.
На самом деле GRUB довольно чувствителен к любому изменению как своей, так и системной конфигурации, каким бы универсальным и удобным он ни был. Так, например, изменение идентификатора раздела, хранящего ядра (/boot), уже приведёт к невозможности загрузки системы. И GRUB здесь и ни причём. Нужно искать причину, по которой изменился идентификатор раздела. А они могут быть самыми разными. К примеру, даже если компьютер долгое время не использовался и на его платы не подавалось питание. То это также может быть причиной сброса некоторых настроек BIOS (по причине севшей батареи). Что может привести при последующем после длительного перерыва включении переопределению параметров оборудования. От которых зависит, в некоторых случаях, и идентификатор раздела. Это лишь одна из причин неработоспособности GRUB, самая неочевидная, которую не могут предусмотреть ни разработчики GRUB, ни создатели системных плат.
Наличие ошибок на разделах диска, человеческий фактор (особенно среди малоопытных пользователей) также очень часто являются причиной неработоспособности GRUB. Главное, что нужно понимать — это то, что в большинстве случаев причиной является внешний фактор. A GRUB – это довольно уязвимое место, чувствительное практически к любым внешним воздействиям, поскольку это программная среда, организующая передачу управления компьютером от BIOS (UEFI) к ОС.
Восстановление Grub после установки Windows 10
Если вы используете на своем компьютере две операционные системы, Windows и Linux, и обновили свою Windows из 7, 8 или 8.1 до самой новой Windows 10, могут возникнуть проблемы с загрузчиком Grub при использовании защищенной загрузки UEFI. Во время обновления Windows 10 просто затрет загрузчик Grub и запишет туда свой.
Вы, как обычно, перезагружаете систему и ожидаете увидеть меню выбора операционной системы Grub, но вместо этого загружается новая Windows 10. Вам может показаться, что нет никакого способа получить доступ к Ubuntu или что не может работать Ubuntu рядом с Windows 10. Но это не так.