Перейти к содержимому

Как обновить grub в manjaro

  • автор:

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

Для загрузки операционной системы необходимо установить загрузчик, поддерживающий Linux, такой как GRUB, rEFInd или Syslinux, в главную загрузочную запись (MBR) или таблицу разделов GUID (GPT) носителя, содержащего операционную систему. Установки, созданные с помощью Manjaro ISO, по умолчанию используют GRUB.

По разным причинам загрузчик может быть поврежден, стерт или неправильно настроен, что приводит к появлению черного экрана с сообщением об ошибке при загрузке, например, No boot loaders found in /dev/. . Для восстановления работы системы без переустановки ОС и потери данных вам потребуется использовать установочный носитель Manjaro, например, CD/DVD или USB Flashdrive.

Процесс загрузки Archlinux Большая информация о процессе загрузки в дистрибутивах на базе Archlinux доступна на Archwiki

Подготовка

Определите тип системы, которую вы пытаетесь восстановить, так как команды немного отличаются.

  • система BIOS/MBR/GPT
  • система EFI/GPT

Загрузка с установочного носителя Manjaro

Переопределение загрузки системы Для переопределения порядка загрузки системы у каждого есть специальная клавиша. Большинство клавиатур ноутбуков имеют множественное назначение функциональных клавиш, и основная функция может быть изменена на противоположную. В таком случае вместе с функциональной клавишей необходимо использовать клавишу FN . Если вы не знаете — обратитесь к документации вашей системы. Имена пользователей и пароли Manjaro ISO по умолчанию

Имя по-умолчанию Пароль по-умолчанию
manjaro manjaro
root manjaro

Идентификация разделов

Чтобы определить разделы и их назначение необходимо запустить менеджер разделов. В зависимости от окружения существуют различные инструменты. ISO на базе GTK предлагает GpartEd, ISO на базе QT предлагает KParted, и общим для всех является CLI.

user $ lsblk -o PATH,PTTYPE,PARTTYPE,FSTYPE,PARTTYPENAME COPY TO CLIPBOARD

Более полную информацию можно найти с помощью fdisk (требуется суперпользователь), и вы можете ограничить исследуемое устройство, например, /dev/sda или /dev/nvme0n1.

user $ sudo fdisk -l /dev/sda COPY TO CLIPBOARD

Подсказки, на которые следует обратить внимание, это mbr против gpt и наличие небольшого раздела (обычно первого), отформатированного в файловой системе vfat, за которым следует больший раздел, отформатированный как ext4.

Info Этот документ и его содержание никогда не должны использоваться в качестве ресурса для копирования/вставки. В оставшейся части этого документа будут использоваться псевдоимена и нумерация разделов. Устройства будут называться /dev/sdy, а разделы /dev/sdyA, и вам придется подставить в них реальные значения из вашей системы.

Использование контекста root

После загрузки живого ISO — в зависимости от окружения — откройте терминал и переключитесь в контекст root. Используйте вышеупомянутую комбинацию root:password.

user $ su COPY TO CLIPBOARD
Среда Chroot

Chroot — это метод ограничения различных задач в ограниченной области, например, установка пакетов и другие задачи по обслуживанию системы. Перейдите по ссылке [1], чтобы прочитать больше о chroot в Arch wiki.

Идентификация системных разделов

Из вышесказанного мы предполагаем, что вы определили соответствующие разделы в вашей системе, и в этом документе разделы будут упоминаться следующим образом. Разделы, которые не нужны для обслуживания такого рода, намеренно опущены (например, home, swap).

Раздел ! Использование Комментарий
/dev/sdyA EFI система Требуется для EFI системы и монтируется в /boot/efi.
/dev/sdyB boot Необязателен, но монтируется в /boot В основном используется, когда GRUB не может быть записан в / (например, в f2fs).
/dev/sdyC root Требуется для корневой файловой системы и монтируется в / — обычно форматируется в ext4.

Использование manjaro-chroot

Manjaro развертывает скрипт под названием manjaro-chroot , который принимает необязательный аргумент и выполняет поиск видимых устройств — сканирует разделы на наличие признаков операционной системы. Если найдено более одной операционной системы Linux — Вам будет предложено выбрать, какая система будет chroot, иначе файл /etc/fstab из системы будет использоваться для монтирования разделов и chroot в эту систему. Этот скрипт по умолчанию доступен только в live iso, но вы можете получить его в установленной системе, установив пакет manjaro-tools-base .

root # pamac install manjaro-tools-base COPY TO CLIPBOARD
root # manjaro-chroot -a COPY TO CLIPBOARD

Ручной chroot

(Нет необходимости, если вы использовали manjaro-chroot ) Монтируйте разделы, используя назначенную временную точку монтирования, и всегда начинайте с root.

root # mount /dev/sdyC /mnt COPY TO CLIPBOARD

Info При использовании файловой системы BTRFS следует учитывать, что субтома должны быть смонтированы. В таком случае:

root # mount -o subvol=@ /dev/sdyC /mnt COPY TO CLIPBOARD

Затем, если необходимо, смонтируйте boot.

root # mount /dev/sdyB /mnt/boot COPY TO CLIPBOARD

А после по необходимости и efi

root # mount /dev/sdyA /mnt/boot/efi COPY TO CLIPBOARD

Создайте среду chroot и используйте bash в качестве оболочки

root # manjaro-chroot /mnt /bin/bash COPY TO CLIPBOARD
Переустановка GRUB

Одна из возможных причин, по которой вы читаете этот документ — это незавершенное обновление, которое, в свою очередь, может быть вызвано несколькими ситуациями, в которые мы не будем углубляться. Чтобы исправить причину Вам следует запустить полное обновление системы, включая grub, чтобы убедиться, что все на месте.

root # pacman -Syu grub COPY TO CLIPBOARD

После завершения операции продолжите, используя раздел, соответствующий вашей системе

Система BIOS

В системе BIOS/GPT нет MBR и, следовательно, нет места для хранения загрузчика. Спецификация разделов GPT допускает наличие неформатированного раздела типа загрузочного раздела BIOS (0xEF02). Размер этого раздела может составлять всего 1 мегабайт. Программа установки Calamares использует фиксированный размер 32 мегабайта. В системе BIOS/MBR часть загрузчика записывается в Master Boot Record основного диска.

Устройство — это диск (не раздел)

root # grub-install —force —target=i386-pc —recheck —boot-directory=/boot /dev/sdy COPY TO CLIPBOARD

Убедитесь что конфигурация grub обновлена

root # grub-mkconfig -o /boot/grub/grub.cfg COPY TO CLIPBOARD

Система EFI

Info Вы должны быть в chroot для этой процедуры.

root # grub-install —target=x86_64-efi —efi-directory=/boot/efi —bootloader-id=manjaro —recheck COPY TO CLIPBOARD

Обновление конфигурации grub

root # grub-mkconfig -o /boot/grub/grub.cfg COPY TO CLIPBOARD
EFI grub install messages Переменные EFI не поддерживаются в этой системе.

Проверьте существование системного раздела EFI

root # lsblk -o PATH,PTTYPE,PARTTYPE,FSTYPE,PARTTYPENAME COPY TO CLIPBOARD

Убедитесь, что файловая система efi загружена

root # ls /sys/firmware/efi COPY TO CLIPBOARD

Выйти из chroot

root # exit COPY TO CLIPBOARD

Попробуйте загрузить файловую систему efi

root # modprobe efivarfs COPY TO CLIPBOARD

Повторно войдите в chroot

root # manjaro-chroot /mnt /bin/bash COPY TO CLIPBOARD

Затем смонтируйте файловую систему efi

root # mount -t efivarfs efivarfs /sys/firmware/efi/efivars COPY TO CLIPBOARD

Убедитесь, что файловая система efi загружена

root # ls /sys/firmware/efi COPY TO CLIPBOARD

В случае успеха повторно выполните вышеуказанные команды установки

Устранение неполадок

Manjaro не распознается

Если Manjaro не распознается после обновления grub, то, вероятно, в вашей установке отсутствует пакет lsb-release.

Посмотрите также

  • Руководство по установке UEFI
  • GRUB на Arch wiki

Cookie-файлы помогают нам предоставлять наши услуги. Используя наши сервисы, вы соглашаетесь с использованием cookie-файлов.

Как добавить manjaro в grub рядос с archlinux?

Здравствуйте, на компьютере стояли 2 системы windows 10 и manjaro, решил установить archlinux 3 системой, чтобы поковыряться в ней и возможно перейти на него позже. В грабе получилось вывести только arch и windows 10, теперь хочу понять как можно добавить в граб manjaro? os-prober установил.

У меня следующая структура:
— /dev/sda1 — загрузчик windows
-/dev/sda5 — manjaro именно корневой раздел
-/dev/sda8 — тут арч установлен

Прописываю, mount /dev/sda8 /mnt
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

Как понимаю, что нужно сделать mount /dev/sda5 , но куда его моунтить не пойму, чтобы grub увидел, пытался следующим образом сделать
mount /dev/sda1 /mnt/windows
mount /dev/sda5 /mnt/manjaro

  • Вопрос задан более двух лет назад
  • 482 просмотра

1 комментарий

Простой 1 комментарий

compizomania

Многие пользователи компьютером устанавливают на жёсткий диск несколько ОС, чтобы попробовать и выбрать наиболее подходящую под свои запросы и возможности компьютера.
Если после установки Manjaro была установлена другая система Linux, например, Ubuntu; Linux Mint или Fedora и т.п., то загрузчик операционных систем GRUB теперь будет от последней установленной системы Linux.

Но вот незадача, войти в Manjaro будет проблематично, а именно, переключаясь в GRUB на строку с Manjaro и нажатия Enter, система не загружается и на экране появляется примерно вот такое извещение с Kernel panic:

Некоторые пользователи переустанавливают Manjaro, чтобы её загрузчик GRUB был главным, а из GRUB Manjaro, можно загрузиться и в другие системы.
Но переустанавливать Manjaro совсем необязвтельно. Для того чтобы из загрузчика GRUB, например, Ubuntu зайти в систему Manjaro, необходимо прежде переключится на строку Advanced options Manjaro и нажать Enter.

А затем в открывшемся меню выбрать третью строку с fallback initramfs или резервную инициализацию файловой системы и нажать Enter.

Таким образом пользователь совершает вход в систему Manjaro без проблем.

После того как пользователь вошёл в Manjaro, можно восстановить загрузчик GRUB Manjaro следующей командой в терминале:

sudo grub-install /dev/sda

И остаётся только обновить GRUB:

sudo update-grub

Вот и все. Теперь можно перезагрузить компьютер, чтобы убедиться, что система Manjaro находится первой в меню загрузчика GRUB.

Обновление Manjaro и Windows в дуалбуте

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

grub2 secure boot bypass 2021

Grub 2: Восемь новых уязвимостей в загрузчике

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

Целая куча патчей безопасности ожидается для загрузчика GNU Grub 2. Хотя некоторые из них устанавливаются через обновления пакетов в дистрибутивах Linux, полное устранение всех восьми багов требует повторного отзыва сигнатур в UEFI Secure Boot.

Такой подход звучит знакомо, ведь это было необходимо в середине прошлого года для ошибки “Boothole” в GNU Grub 2. Но это не всегда возможно, так как многие системы могут просто перестать работать после отзыва уязвимых ключей.

Судя по официальным заявления все эти уязвимости нашли собственно сами разработчики Grub 2 в ходе глобальной чистки своего кода.

Обновление Manjaro

Текущее мартовское обновление включает все исправления для восьми новых уязвимостей. По крайней мере, некоторые из этих лазеек могут быть использованы для перезагрузки модулей ядра без действительной подписи, несмотря на активную безопасную загрузку. Подробное описание каждой уязвимости расписал в своём письме Daniel Kiper.

Если не вдаваться в подробности, то чтобы всё исправить пользователям Manjaro нужно просто обновить систему. Так же не вижу особого смысла для паники, так как все эти уязвимости только теоретические и их нашли собственно сами разработчики. Чтобы всё исправить рекомендуется просто переустановить grub на ваших системах с новыми ключами безопасности, что и делается в обновлениях Manjaro.

Windows в дуалбуте

Пользователей с двойной загрузкой Linux и Windows ожидают сюрпризы. Так ка после обновления скорей всего загрузиться в Windows вы уже не сможете. Но в Manjaro это можно легко исправить.

Для включения os-prober и обнаружения других ваших ОС рядом с Manjaro нужно в терминале напечатать всего одну команду:

echo GRUB_DISABLE_OS_PROBER=false|sudo tee -a /etc/default/grub && sudo update-grub
[test@manjaro-nout ~]$ echo GRUB_DISABLE_OS_PROBER=false|sudo tee -a /etc/default/grub && sudo update-grub [sudo] пароль для test: GRUB_DISABLE_OS_PROBER=false Генерируется файл настройки grub … Найдена тема: /usr/share/grub/themes/manjaro/theme.txt Найден образ linux: /boot/vmlinuz-manjaro-xanmod-LTS Найден образ initrd: /boot/intel-ucode.img /boot/initramfs-manjaro-xanmod-LTS.img Found initrd fallback image: /boot/initramfs-manjaro-xanmod-LTS-fallback.img Найден образ linux: /boot/vmlinuz-5.10-x86_64 Найден образ initrd: /boot/intel-ucode.img /boot/initramfs-5.10-x86_64.img Found initrd fallback image: /boot/initramfs-5.10-x86_64-fallback.img Найден образ linux: /boot/vmlinuz-5.9-x86_64 Найден образ initrd: /boot/intel-ucode.img /boot/initramfs-5.9-x86_64.img Found initrd fallback image: /boot/initramfs-5.9-x86_64-fallback.img Найден образ linux: /boot/vmlinuz-5.4-x86_64 Найден образ initrd: /boot/intel-ucode.img /boot/initramfs-5.4-x86_64.img Found initrd fallback image: /boot/initramfs-5.4-x86_64-fallback.img Предупреждение: os-prober was executed to detect other bootable partitions. It's output will be used to detect bootable binaries on them and create new boot entries. Найден Windows 7 на /dev/sda2 Found memtest86+ image: /boot/memtest86+/memtest.bin завершено [test@manjaro-nout ~]$
  • ← Cколько мегабайт в гигабайте?
  • Как смотреть Youtube на старых Smart TV и ТВ приставках →

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *