Мультиначальная загрузка Linux тихая проблема всплеска

У меня есть Ubuntu 16.04.3 LTS долгое время, недавно добавленный Linux Mint и openSUSE в том порядке. До установки openSUSE раздел начальной загрузки был/dev/sda1.

ПРОБЛЕМА: Я не хочу экрана-заставки на всех дистрибутивах. Я прочитал эту статью. Я достиг этого на Ubuntu путем редактирования/etc/default/grub файла и обновления, когда это было сначала установлено. Я использовал Личинку Customizer на openSUSE и Монетном дворе для удаления экрана-заставки однако, openSUSE был единственным из новых дистрибутивов, установленных это, я достиг результата. Я затем отредактировал файл личинки для Монетного двора непосредственно, и он все еще показывает экран-заставку. Я не уверен, как продолжить двигаться. Далее, Если бы я решаю удалить или удалить или openSUSE или MINT, как я продолжил бы двигаться?

dos HDD

/dev/sda1 ext3 Primary GRUB

/dev/sda2 Extended Ubuntu

    /dev/sda5      linux-swap

    /dev/sda6 ext4 /

    /dev/sda7 ext4 home

    /dev/sda8 ext3 mintboot

    /dev/sda9 ext4 mintroot

    /dev/sda10 ext4 minthome

/dev/sda3 btrfs openSUSE      flagged boot

/dev/sda4 xfs   openSUSE

openSUSE/etc/default/grub вывод: Я подозреваю бит, прокрученный в конце и потенциальном openSUSE grub.cfg редактирование, просто не уверенное что точно O.o

# If you change this file, run 'grub2-mkconfig -o /boot/grub2/grub.cfg' afterwards to update
# /boot/grub2/grub.cfg.

# Uncomment to set your own custom distributor. If you leave it unset or empty, the default
# policy is to determine the value from /etc/os-release
GRUB_DISTRIBUTOR=
GRUB_DEFAULT=saved
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=1
GRUB_CMDLINE_LINUX_DEFAULT='resume=/dev/disk/by-uuid/0b074c09-c211-407b-ad9d-f7c0c2b3bee7 splash=""'
GRUB_CMDLINE_LINUX=""

# Uncomment to automatically save last booted menu entry in GRUB2 environment

# variable `saved_entry'
# GRUB_SAVEDEFAULT="true"
#Uncomment to enable BadRAM filtering, modify to suit your needs

# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
# GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
#Uncomment to disable graphical terminal (grub-pc only)

GRUB_TERMINAL="gfxterm"
# The resolution used on graphical terminal
#note that you can use only modes which your graphic card supports via VBE

# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE="auto"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
# GRUB_DISABLE_LINUX_UUID=true
#Uncomment to disable generation of recovery mode menu entries

# GRUB_DISABLE_LINUX_RECOVERY="true"
#Uncomment to get a beep at grub start

# GRUB_INIT_TUNE="480 440 1"
GRUB_BACKGROUND=/boot/grub2/themes/openSUSE/background.png
GRUB_THEME=/boot/grub2/themes/openSUSE/theme.txt
SUSE_BTRFS_SNAPSHOT_BOOTING="true"
GRUB_DISABLE_OS_PROBER="false"
GRUB_ENABLE_CRYPTODISK="n"
1
задан 5 August 2017 в 10:00

1 ответ

Вообще говоря существует два способа настроить мультизагрузочную конфигурацию между несколькими дистрибутивами Linux:

  • Загрузчик одного распределения непосредственно загружает все Ваши дистрибутивы, оставляя другие загрузчики полностью из цикла. (Возможности, это - GRUB OpenSUSE, это сознает ситуацию в Вашем случае, так как это - то, которое Вы установили в последний раз.) По сути, необходимо было бы отредактировать распределение управления GRUB для изменения опций ядра для других дистрибутивов.
  • Каждое распределение предоставляет свой собственный загрузчик, который загружает его собственное ядро и что chainloads к загрузчикам других дистрибутивов. В этой конфигурации, каждый управление распределением ее собственные опции ядра, но загружать что-либо кроме ОС, диспетчер начальной загрузки которой на первом месте в цепочке начальной загрузки, необходимо загрузиться через несколько диспетчеров начальной загрузки - например, GRUB OpenSUSE дарит меню параметры загрузки для его собственных ядер вместе с опциями загрузить экземпляры GRUB других дистрибутивов. Для Начальной загрузки (говорят) Ubuntu, Вы прошли бы GRUB OpenSUSE и затем GRUB Ubuntu.

Эти два сценария не являются взаимоисключающими; Вы могли бы видеть (например), меню OpenSUSE GRUB с опциями загрузить OpenSUSE и ядра Ubuntu вместе с опцией загрузить GRUB Ubuntu.

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

Распутывание всего этого может быть реальной проблемой, особенно на основанных на BIOS компьютерах (который Ваш, кажется, судя Вашей сводкой раздела, хотя я не на 100% положителен относительно этого). Некоторые опытные мультифутболисты откладывают диспетчер начальной загрузки, который это за пределами управления любой ОС для начальной загрузки специализированного загрузчика каждой ОС, но я не знаю ни о каких современных ссылках для того, как сделать это в основанных на BIOS системах. Такая конфигурация разделяет функции диспетчера начальной загрузки и загрузчика, который открывает возможности для использования более специализированных программ и может упростить задачу конфигурации.

Обратите внимание также, что при начальной загрузке Распределения B из загрузчика A Распределения Вы не сможете загрузить новые ядра для Распределения B, пока Вы не обновите конфигурацию GRUB в Распределении A. (Это - одна из причин установки инструмента, который функционирует просто как диспетчер начальной загрузки, для выбора между загрузчиками для каждого распределения; каждое распределение может затем обновить свою собственную конфигурацию загрузчика саму, и Вы не должны будете обновлять вещи вручную.)

Относительно удаления ОС, основное беспокойство прибывает при удалении любых средств управления ОС первый диспетчер начальной загрузки. Если тот диспетчер начальной загрузки является GRUB 2, то, удаляя корень ОС управления (/) или /boot раздел сотрет конфигурационный файл GRUB, который представит GRUB рядом с бесполезным. В той точке необходимо будет использовать чрезвычайный диск для (пере-), устанавливают GRUB для другого распределения для вступания в должность основного диспетчера начальной загрузки.


Править:

Конфигурация GRUB 2 является кошмаром. В выполненном (начальная загрузка) время GRUB читает конфигурационный файл, в котором это обычно располагается /boot/grub/grub.cfg, относительно файловой системы ОС хостинга. Этот файл обычно создается сценариями, которые работают, когда GRUB сначала установлен при установке нового ядра, или вручную. (grub-mkconfig -o /boot/grub/grub.cfg групповая команда; но в Ubuntu, update-grub добивается цели, также.) Сценарии, в свою очередь, полагаются на несколько конфигурационных файлов, один из которых /etc/default/grub файл Вы сослались. Обратите внимание, что этот файл не говорит Вам, что ОС GRUB представит во время начальной загрузки; та деталь варьируется от одной системы до другого. Что действительно включает этот файл, Вы для корректировки являетесь определенными глобальными значениями по умолчанию, как значение тайм-аута. Обратите внимание, что редактирование этих значений по умолчанию не будет иметь непосредственного эффекта; Ваши изменения только вступят в силу после того, как Вы запустите скрипт для переписывания grub.cfg файл (или после того, как система делает это само - говорит после обновления ядра).

Сценарии конфигурации GRUB также полагаются на набор файлов в /etc/grub.d помочь ему определить определенные Ose и инструменты. Как правило, Вы не редактируете их сами; однако, существует один, назван 40_custom IIRC, который можно отредактировать для обеспечения пользовательских записей, если сценарии обнаружения ОС/ядра по умолчанию не работают соответственно. Так же, как с изменениями в /etc/default/grub, любое изменение, которое Вы вносите в эти файлы, не вступит в силу, только после того как Вы повторно создаете /boot/grub/grub.cfg. Если Вы хотите удалить quiet splash от опций, сгенерированных сценариями OpenSUSE для Ubuntu, необходимо было бы, вероятно, отредактировать один из файлов в /etc/grub.d/, но я боюсь, что не знаю точно, где Вы посмотрели бы. С другой стороны, Вы могли ручное редактирование /boot/grub/grub.cfg, но любые изменения, которые Вы вносите, там будут перезаписаны каждый раз, когда Вы создаете новое grub.cfg файл, или сознательно или потому что хост ОС установил новое ядро.

Как описано ранее, другой подход должен настроить вещи так, чтобы основной диспетчер начальной загрузки непосредственно не запускал ядра Ubuntu, но вместо этого chainloads к GRUB Ubuntu, который затем управляет его собственной конфигурацией GRUB.

Обратите внимание, что все три из Ваших дистрибутивов имеют свои собственные конфигурационные файлы GRUB - оба /boot/grub/grub.cfg и все вспомогательные файлы; однако, только один GRUB управляет процессом начальной загрузки. Другие, как отмечено ранее, или на 100% не важны или названы, только если первый GRUB настроен к chainload к вторичным ЛИЧИНКАМ.

FWIW, GRUB Customizer является инструментом GUI, чтобы помочь отредактировать различные конфигурационные файлы GRUB. Той ссылкой, тем не менее, является к Панели запуска PPA для Ubuntu. Я не знаю, доступен ли GRUB Customizer даже для OpenSUSE. В противном случае и если Вы хотите использовать GRUB Customizer, необходимо реконфигурировать систему так, чтобы GRUB Ubuntu был основным, понизив GRUB OpenSUSE к вторичному состоянию. Если можно найти GRUB Customizer созданный для OpenSUSE (или создать его сами или возможно преобразовать пакет Debian Ubuntu в форму об/мин), Вы могли выполнить его в OpenSUSE для корректировки текущей конфигурации. Учитывая деликатность конфигурации GRUB, тем не менее, я не рекомендовал бы отклониться от хорошо протестированной сборки для распределения хоста.

1
ответ дан 7 December 2019 в 15:32

Другие вопросы по тегам:

Похожие вопросы: