Флаг bios grub manjaro что это

Обновлено: 03.07.2024

Имеется ноутбук с разметкой GPT под UEFI. Точку монтирования /boot/efi создал на 512 мб с флагами boot, esp. CSM mod отключил, как и Secure boot. Образ записывал на флешку через Etcher. С этой же флешки на другой комп с BIOS система встала без проблем. Точку монтирования создавать пробовал через графический инсталлятор и заранее через gparted. Результат один и тот же. Выдаёт ошибку. Пытался ставить систему через Manjaro-Architect, но какую ошибку там выдало уже не помню.
Через инсталлятор выдаёт под конец вот это:


Сразу после сбоя вбил «fdisk -l», «lsblk» и «parted -l»

Примечательно то, что на ноутбук та же ubuntu ставится без нареканий. В чём проблема? Что я делаю не так?

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

Boost.Python ошибка в задаче «bootloader».

Command 'brub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader- --force' returned non-zero exit status 1.

Все оказалось намного проще. Настолько проще, насколько и тупо. Оказалось что это баг. Чтобы этого избежать достаточно запустить livecd на аглийском языке
Решается через 'pacman -Sy calamares' после лайвбута. В образе пакет с багом.
Конечно пытался, потому и написал сюда, что не сработало. И английский в livecd указывал, и кальмаров обновлял, и всю систему через «pacman -Syyu». Результат стабильный. Ошибка. Даже сейчас повторил. Тоже самое всё. Разные версии Manjaro также пробовал ну, по сути система то устанавливается, попробуй грузануться с лайва и поставить граб отдельно

Верно ли я понимаю, что для команды grub-install нужно указывать именно диск, а не раздел для установки? Если да, то я вообще не понимаю что не так


Вот что gparted показывает после проделанной операции. Вроде всё норм… Then install the efibootmgr, dosfstools and grub packages and try steps 4 and 5 again. И правда, не туда смотрел… Правда это картины сильно не меняет. Всё равно ругается. Или это из-за того, что я его под биос пытался ставить прошлой командой?
Или это из-за того, что я его под биос пытался ставить прошлой командой?
вряд ли, пробовал перезайти в лайвсиди, и, там же еще ниже чуть-чуть написано, типа sudo modprobe efivarfs и бла-бла

В общем, решил сделать по-новой, как в статье описано, всё в том же порядке. Вроде всё правильно делал, а всё равно в тупик зашёл… Правда он зачем-то меня два раза попросил установить efibootmgr, но это уже после того, как пошла неясная фигня

Может, просто ноутбук проклятый?

Последний раз редактировалось 30 августа 2020, 16:52

Ну, прогресс определённо появился после проделанной операции:) И результат достаточно интересный. Теперь у меня появился выбор manjaro в меню boot, чего раньше не было.
Your text to link.
Правда при загрузке, основательно подумав, ноут начал выдавать вот это
Your text to link.

Если вы когда-либо использовали систему Linux, то вы должны были видеть экран загрузчика. Это называется экран GRUB. Да, это пишется заглавными буквами.

В этой небольшой статье о Linux мы расскажем вам, что такое GRUB и для чего он используется. Также вкратце затронем настройку и модификацию внешнего вида загрузчика.

as6kwqC2pVdXZZzvzgLihXd54tmD9OwIKEEIIIYQQ8sUgvTlhVlvwuU2Qa79vUijkCp1NCp+dTA8bFwUIIYQQQgghJG9QgBBCCCGEkB6Nz7+tZWO3bfnN336g01e3ffxfLihACCGEEEIIIXmDAoQQQgghhBCSNyhACCGEEEIIIXmDAoQQQgghhPQo0s7OLhRLdiQUIIQQQgghhJC88f8BSgci8yHq9cwAAAAASUVORK5CYII more-35262

Что такое GRUB?

GRUB - это программа для управления процессом загрузки. Это наиболее распространённый загрузчик для дистрибутивов Linux. Загрузчик - это первая программа, которая загружается при включении компьютера. Она загружает ядро операционной системы, затем ядро инициализирует остальные части операционной системы: оболочку, менеджер дисплея, окружение рабочего стола и т. п.

Загрузчик или менеджер загрузки

Я не хочу запутать вас на этом этапе, но эта тема нуждается в разъяснении перед тем, как мы продолжим. Разница между менеджером загрузки и загрузчиком весьма размыта.

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

Ядро Linux версии 3.3 включает в себя встроенный загрузчик EFI. Фактически, любая операционная система, способная работать с EFI включает в себя загрузчик EFI. В системах с поддержкой EFI системная прошивка считывает системный раздел EFI (ESP) для обнаружения файлов EFI на загрузочном разделе.

GRUB - наиболее популярный загрузчик для Linux. Но не единственный. Есть ещё менеджер загрузки rEFInd, который нравится некоторым пользователям Linux.

qsqSWjsAAAAASUVORK5CYII=

Персонализированный экран менеджера загрузки rEFInd

Существует также текстовый менеджер загрузки systemd-boot . Вы можете догадаться, что он предназначен только для дистрибутивов, основанных на systemd. Некоторые дистрибутивы, как Pop OS, используют systemd-boot.

C4v+ITq0OjAAAAAElFTkSuQmCC

systemd-boot в Pop OS

Про другие загрузчики читайте в статье Лучшие загрузчики для Linux.

3. Доступ к опциям и настройкам GRUB

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

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

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

Стандартный файл настроек GRUB находится в /etc/default/grub. Также есть папка /etc/default/grub.d. Вы можете редактировать файл /etc/default/grub напрямую, однако рекомендуется сохранять дополнительные изменения в вышеуказанной папке.

5. GRUB customizer для лёгкой настройки GRUB

Если редактирование файла текстовым редактором в терминале - не то, что вам нравится, то вы можете использовать графическую утилиту, называющуюся GRUB Customizer. Она позволяет вам менять порядок загрузки, задержку загрузки и т.п. Вы также можете изменить фон GRUB на обои по своему усмотрению.

AZt68QgzpUOjAAAAAElFTkSuQmCC

GRUB Customizer может быть установлен в Ubuntu 20.04 из репозитория Universe и через PPA в Ubuntu 18.04. Он также доступен через AUR в дистрибутивах, основанных на Arch Linux. Подробнее про использование Grub Customizer рассказано в этой статье.

Заключение

Мы затронули все темы поверхностно. EFI, загрузка и GRUB - это довольно сложная тема, не помещающаяся в рамки этой статьи. Эта статья предназначена дать вам высокоуровневый обзор программы загрузки GRUB. Если вы хотите узнать больше о GRUB, то можете получить доступ к документации GRUB в вашем терминале Linux используя команду:

Надеюсь, что вы немного лучше понимаете теперь, что такое GRUB. Возможно вы хотите рассказать ещё что-то о Grub? Пишите в комментариях!

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

Раньше для загрузки Linux использовалось несколько загрузчиков, это isolinux, lilo, grub. Но сейчас чаще всего применяется Grub или полное его название GRand Unified Bootloader. В этой статье будет рассмотрена установка загрузчика Grub через терминал. Также мы поговорим как установить grub на компьютер с UEFI, тоже вручную.

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

Как я уже сказал, основная задача загрузчика - предоставить возможность выбора операционной системы перед загрузкой. Не думайте, что в 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 окружения этой системы.

Установка загрузчика Grub в MBR для BIOS

Начнем с самого просто и привычного. Данная инструкция как установить загрузчик Grub подойдет для любого дистрибутива, поскольку команды везде почти одинаковые. Здесь не нужно устанавливать никаких дополнительных пакетов или создавать разделов. Установка Grub на жесткий диск выполняется командой:

sudo grub-install /dev/sda

sudo grub2-install /dev/sda

Утилиты grub в разных дистрибутивах могут включать двойку, а могут и не включать. Здесь /dev/sda - ваш жесткий диск. Теперь генерируем конфигурационный файл, чтобы автоматически определились установленные операционные системы:

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

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

Готово. По поводу двойки здесь такое же замечание. Если вы хотите установить Grub на флешку в MBR, то тут тоже нет проблем просто примонтируйте флешку и выполните такую команду:

sudo grub-install --root-directory=/mnt/USB/ /dev/sdb

Здесь /mnt/USB - папка, куда была смотирована ваша флешка, а /seb/sdb - сама флешка. Только здесь есть одна проблема, конфигурационный файл придется делать вручную.

Установка загрузчика Grub в GPT для BIOS

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

Нужный нам раздел можно создать в установщике любого дистрибутива, если вы выполняете установку в графическом интерфейсе или с помощью gparted. Нам нужен раздел размером 1 Мегабайт без файловой системы и с меткой grub_bios:

grub

Дальше примените изменения, нажмите на разделе правой кнопкой, выберите manage flags и добавьте флаг grub_bios:

grub1

Готово. Если у вас нет под рукой доступа к графическому интерфейсу, вы можете создать такой раздел через терминал. Утилита fdisk не поддерживает работу с gpt, поэтому будем использовать gfdisk. Сначала запустите утилиту:

sudo gdisk /dev/sda

grub2

Чтобы создать новый раздел нажмите n и выберите номер раздела:

grub3

Соглашаемся с начальным сектором, будет использован первый же свободный:

grub4

Выбираем конечный сектор раздела. По умолчанию будет использоваться максимальный. Нам нужен раздел размером 1 Мб. Размер одного сектора GPT - 512 байт, поэтому нам нужен раздел размеров 2048 секторов. Таким образом, конечный сектор будет 24000 с чем-то.

grub5

HEX Code - это тот код, который скажет системе, что этот раздел нужно использовать для Grub, нужно установить ef02:

grub6

Готово, осталось нажать w для записи изменений на диск:

grub7

Установка grub на жесткий диск дальше выполняется точно так же, как и в предыдущем способе:

sudo grub-install /dev/sda

Осталось создать конфигурационный файл grub:

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

Теперь переходим к самому сложному, как установить grub efi.

Установка GRUB UEFI GPT

Установка Grub UEFI чем-то похожа на установку в GPT, тут у нас тоже будет отдельный раздел, только на этот раз не для загрузчика, а раздел EFI. Если у вас уже установлена Windows, то, скорее всего, он уже существует. Этот раздел обычно занимает 100 Мб, имеет файловую систему fat32 и флаг ESP. Вот так он будет выглядеть:

grub11

Если же такого раздела нет, мы можем его создать с помощью gparted. Для этого создаем раздел с такими параметрами:

grub9

Размер 100 Мегабайт, имя раздела ESP, файловая система fat32. Дальше примените изменения и установите для раздела флаг ESP:

grub10

То же самое вы можете сделать в Gdisk, только на этот раз нужно устанавливать HEX Code раздела ef00. После того как раздел был создан, подключаем его к нашей файловой системе:

sudo mkdir /boot/efi
$ sudo mount /dev/sda2 /boot/efi

Здесь /dev/sda2 - это наш EFI раздел. Далее необходимо установить нужные пакеты, если они еще не установлены. В Ubuntu это будет выглядеть вот так:

sudo apt install grub-efi efibootmgr

Дальше останется только установка grub efi. Система сама определит нужный раздел и скопирует туда все файлы:

Установка Grub efi на MBR все выглядит точно так же, только тут есть несколько ограничений. Раздел ESP нужно создавать только в начале диска. В режиме EFI тоже можно установить GRUB на флешку, и это не очень сложно. Для этого используется команда:

grub-install --boot-directory=/mnt/sdb2/boot --efi-directory=/mnt/sdb1 --target=x86_64-efi --removable

Рассмотрим опции: --boot-directory - задает папку с файлами загрузчика на флешке, --efi-directory - папка куда смонтирован раздел efi, --target - архитектура целевой системы и --removable говорит, что это установка на съемный носитель. С UEFI все. После перезагрузки и выбора в меню EFI пункта связанного с Grub, вы получите доступ к привычному меню grub и сможете выбрать нужный параметр.

Выводы

Теперь установка Grub не вызовет у вас проблем. Мы разобрали не только как установить Grub2 в MBR но и в EFI. Кроме того, всю приведенную здесь информацию вы можете использовать для восстановления Grub. Так вы будете лучше понимать что происходит во время восстановления. А настройку параметров и ручное создание конфигурационного файла мы рассмотрим в одной из следующих статей.

Поставь сначала манжаро а потом винду, так Груб будет основным загрузчиком, а то в твоем случае винда занимает загрузочную область на жестком, и ей абсолютно похрен что там за системы стоят рядом. Это конечно метод виндузятников (переустанавливать всю систему без причины), но для новичков пойдет. Вообще нужно просто установить GRUB на первычный раздел диска, и апдейтнуть его для обнаружения других систем, но я не в курсе как это повлияет на 10

П.С Винде похрен какой тип диска, так что не накручивай себя.

На самом деле странно. А какая таблица разделов на жестком диске? DOS или GPT? Как производилась установка grub? Что смонтировано в /boot/EFI? Если DOS, то grub должен записать себя в главную загрузочную запись при выполнении grub-install /dev/sda(ну, или как у вас определяется ваш hdd).
На сколько мне известно, именно винда при установке выкидывает все загрузчики как на gpt, так и на dos дисках. Поэтому grub нужно ставить определенно после установки windows.
Если у вас gpt диск, убедитесь, пожалуйста в том, что в /boot/EFI смонтирован раздел EFI System, обычно на жестком диске он второй по счету. так-же, возможно вы неверно выбрали способ установки grub? Если диск размечен, как GPT, а grub ставился для mbr, то он, конечно-же, не будет запускаться. Разметку делал GPT при установке винды. Grub ставился вместе с установкой Манджаро с лайв флешки, после установки Манджаро заходил через chroot по мануалам восстановления grub но все равно никак не видит. Но мало того, даже после форматирования раздела EFI и записи туда только grub, для того что бы мог запустится только Манджаро через grub, все равно ничего не происходит, либо кидает в биос либо если стоит флэшка то грузит ее. Через chroot монтировал все в ручную.

А можно увидеть содержимое каталока /boot/EFI из установленной системы?
Таблицу разделов с файловыми системами сможете показать(тоже из-под линукса)?

Еще правильно-ля я понял, что bios не видит uefi загрузчик manjaro?
А откуда мануалы?

ну… мануал абсолютно правильный… Вы выполняли команды из раздела «для систем UEFI» мануала?
Хм… судя по скриншотам, да.
может быть у вас в bios выбран режим загрузки «legacy first» или «legacy only»? Просто gpt диски имею mbr, для совместимости с dos системами. Возможно винда прописалась туда, и поэтому запускается только она.
Если в биосе режим загрузки «uefi only» или «uefi first», или что-то в этом роде, тогда, видимо это проблемы биоса?
Есть какие-то данные на установленных системах?
Была похожая ситуация, решили так: установили манджаро, оставив при этом свободное место вод виндоус. Потом установили винду, потом снова загружались в манджаро через установочный образ, и далее все по мануалу… В качестве экспериментальной меры можно удалить файл /boot/efi/boot/bootx64.efi, предварительно сделав копию резервную, конечно. Потом копировать туда файл /boot/efi/manjaro/grubx64.efi, переименовав его в bootx64.efi
Я форматировал полностью раздел EFI записывая туда только grub для запуска одного Манджаро, но как я говорил ранее, при перезагрузке системы выкидывает просто назад в биос. Системы стоят на ноуте Asus, могу скинуть фото биоса, но режимов загрузки как то легаси или uefi я там в упор не вижу. Кстати, до установки именно этой версии винды, со всеми этими твиками под ХДД, раньше все ставилось норм. Но, сейчас это именно проблема Манджаро, так как Убунту, Минт, и если я не ошибаюсь и правильно помню, то и сам Арч после установки запускается норм. Сейчас сносить системы, увы, не выход. Не помню точно ли Арч запускался, но проблема точно не в образе, так как перезаписывал и переустанавливал много раз разные ДЕ Манджаро. У вас путь к загрузчику манджаро — /boot/efi/efi/manjaro
А надо, чтобы был /boot/efi/manjaro
исправться путь, чтобы папки boot, manjaro, microsoft лежали в /boot/efi/ Поменять то поменял, только теперь и винда не запускается, сразу выкидывает в биос, загрузится могу только в винду и только через биос. не должно так быть. Все-таки посмотрите в arch wiki по ссылке Не надо было ничего менять, всё было правильно.
Так у тебя BIOS или UEFI прошивка?
Загрузочная запись efi для манжары прописана правильно?
Что показывает команда efibootmgr?



Прошивка uefi, образ манджаро создавал в винде Руфусом через ДД. У тебя не прописана загрузочная запись для манжары.
efibootmgr --create тебе в помощь

Установка UEFI-версии загрузчика
В режиме UEFI
Если Arch x86_64 уже загружен в режиме UEFI, системный загрузочный раздел EFI уже создан и смонтирован в /boot/efi, а efibootmgr уже установлен и работает, для установки загрузчика остаётся выполнить команду

grub-install
Программа установки сгенерирует стартовый образ GRUB2, оформленный в виде EFI-приложения, скопирует его в файл /boot/efi/EFI/arch/grubx64.efi, файлы загрузчика будут записаны в каталог /boot/grub/, в том числе модули в /boot/grub/x86_64-efi/, после чего будет сделана попытка с помощью efibootmgr создать в переменных UEFI загрузочную запись «arch» со ссылкой на файл \EFI\arch\grubx64.efi, которую можно будет выбрать при следующей загрузке и установить её по-умолчанию.

Опция --boot-directory задаёт путь, по которому будет установлен каталог grub/, и где grub-install будет искать каталог efi/ с загрузочным разделом EFI. По-умолчанию этот путь равен /boot. Если вы хотите установить каталог с файлами загрузчика в другое место, например в корень, используйте команду вида
grub-install --boot-directory=/
В этом случае файлы загрузчика установятся в каталог /grub, а загрузочный раздел раздел должен быть предварительно смонтирован в /efi.
Опция --efi-directory принудительно задаёт каталог, в который смонтирован загрузочный раздел EFI. С её помощью можно указать точку монтирования этого раздела, не привязанную жестко к расположению каталога grub/.
Опция --bootloader-id задаёт «ID загрузчика» – имя, под которым будет создаваться загрузочная запись GRUB, видимая при выборе варианта загрузки в интерфейсе UEFI. Под этим же именем в загрузочном разделе будет создан каталог с образом GRUB2. По-умолчанию это имя arch.
Используя эти опции вместе, при желании можно установить файлы загрузчика непосредственно в загрузочный раздел EFI, например так:

Читайте также: