GRUB2: Использовать максимальное обнаруженное разрешение?

32

Как мне сказать GRUB2 установить его разрешение (а также разрешение, передаваемое ядру) на максимальное значение, которое он может обнаружить во время загрузки ?

Mehrdad
источник
2
@ severin: нет, это не так. Это говорит только о том, как установить для него определенное разрешение, которое я могу найти, а не максимальное, которое оно обнаруживает во время загрузки .
Мердад
«Vbeinfo» подскажет вам максимальное поддерживаемое разрешение. Затем вы можете отредактировать / etc / default / grub, чтобы использовать это разрешение.
Мартин
3
@severin: Вы все еще не понимаете вопрос !! :( Я хочу автоматическое обнаружение, а не ручное обнаружение.
Mehrdad
2
@AmithKK: Да? У меня есть переменные разрешения ...
Mehrdad

Ответы:

50

Я предполагаю, что причина, по которой вы спрашиваете об этом, заключается в том, что вы используете разные мониторы на одной и той же машине с Ubuntu и хотите, чтобы GRUB2 хорошо выглядел на всех из них. Однако, если вас беспокоит разрешение, используемое после загрузки Ubuntu, это не относится к этому . GRUB2 не передает ядру разрешение, которое оно выбирает для меню загрузки.

Редактировать /etc/default/grubкак root. Вы можете сначала сделать резервную копию:

sudo cp /etc/default/grub /etc/default/grub.old

(Вы запустите это в Терминале, который вы можете открыть, нажав Ctrl+ Alt+ T.)

Чтобы отредактировать его с помощью Gedit as rootrun:

gksu gedit /etc/default/grub

(Или, если вы используете Kubuntu, запустите kdesudo kate /etc/default/grubвместо этого.)

Вы получите много сообщений в Терминале, если вы запустите эту команду в Терминале, а не с Alt+ F2. Вы заметите, что они не говорят, что они относятся к файлу, который вы редактируете, так что все в порядке.

Вы найдете, что эта часть файла говорит что-то вроде этого:

# 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=640x480

Раскомментируйте (то есть удалите начальную #строку) строку, которая говорит GRUB_GFXMODE, и измените разрешение с 640x480на auto. Теперь строка должна выглядеть так:

GRUB_GFXMODE=auto

Сохраните файл и выйдите из редактора. В Терминале запустите:

sudo update-grub

(Это должно выполняться после каждой модификации /etc/default/grub, чтобы применить изменения.)

Теперь перезагрузите компьютер и посмотрите, будет ли это то, что вы хотите.

Это может не произойти (поскольку используется «платформа по умолчанию», которая может быть не максимально возможной). Если это так, отредактируйте /etc/default/grubснова, и на этот раз измените строку так, чтобы она выглядела примерно так:

GRUB_GFXMODE=1600x1200,1280x1024,1024x768,800x600,640x480

Вы не обязательно захотите использовать именно эту строку. Вы должны перечислить все разрешения, которые вы хотите попробовать, в том порядке, в котором вы хотите их попробовать. Разрешения, которые я перечислил, являются наиболее стандартными разрешениями для мониторов с соотношением сторон 4: 3, но широкоэкранные мониторы (включая большинство экранов ноутбуков в наши дни) имеют разные форм-факторы и используют разные разрешения. В Википедии есть список общих решений, которые могут вам помочь. Если вы знаете конкретные разрешения, которые вы хотите для каждого устройства, вы можете просто перечислить их (сначала самое высокое). Вы, вероятно, должны включить 640x480или autoв конце. Я рекомендую это, потому что я не знаю, будет ли GRUB2 всегда использовать безопасное низкое разрешение, если вы не включите это.

Затем снова сохраните файл, снова запустите sudo update-grub, перезагрузите компьютер и посмотрите, подходит ли вам это.

Если этого не произойдет, вам может не повезти. GRUB2 не отображает видео так же, как Ubuntu после загрузки. GRUB2 использует VESA BIOS Extensions для отображения меню загрузки с улучшенным разрешением (и глубиной цвета), а максимальное разрешение компьютера через VBE не всегда такое же высокое, как максимальное разрешение, поддерживаемое видеокартой и монитором.

Источник: официальная документация GRUB2 . (Вы заметите номер версии 1.99 . Это все еще GRUB2. Немного запутанно, но это правда.)

[Наконец, спасибо TechZilla за указание на серьезную ошибку в оригинальной версии этого ответа.]

Элия ​​Каган
источник
+1 определенно жизнеспособное решение, хотя оно и не идеальное. Спасибо за подробный ответ, он очень хорошо написан!
Мердад
2
Кроме того, просто к вашему сведению, GRUB_GFXMODE=autoпочти всегда получается лучшее разрешение, возможное через VESA. Широкоэкранные разрешения VESA не стандартизированы, и мне ни разу не удавалось заставить работать с Grub2. Я слышал, что это возможно, если использовать чип Intel GFX и несколько сложных программных исправлений VESA. AFAIK это невозможно с чипами не-Intel GFX. ... также вы должны добавить +1 к моему комментарию, если он был на цели. : P
JM Becker
1
@ Mehrdad Дайте награду за этот ответ. Это так близко, как вы собираетесь получить AFAIK: D
Амит KK
@AmithKK: Скорее всего, так и будет, хотя я думаю, что подожду немного, и пусть другие люди получат шанс хотя бы прочитать вопрос, прежде чем я приму его, хаха. :)
Мердад
12

Также доступна опция GUI.

Grub Customizer:

Grub Customizer позволяет редактировать, переименовывать, переупорядочивать или фиксировать записи Grub. Он также позволяет изменить цвет фона меню Grub или добавить пользовательское изображение, а также поддерживает настройку BURG. Вы также можете использовать Grub Customizer из среды Live CD / USB для решения проблем с загрузкой.

Установка:

Нажмите Alt+ Ctrl+, Tчтобы открыть терминал и выполнить следующие команды:

sudo add-apt-repository ppa: danielrichter2007 / grub-customizer
sudo apt-get update
sudo apt-get установить grub-customizer

Как использовать:

После установки нажмите Alt+ F2, введите grub-customizerи нажмите Enter.

Авторизуйтесь, указав свой пароль пользователя.

После открытия нажмите на Preferencesпанели инструментов.

введите описание изображения здесь

Под Appearanceвкладкой включите custom resolutionи введите autoтекстовое поле.

введите описание изображения здесь

В качестве альтернативы на Advancedвкладке включить GRUB_GFXMODEи введите autoтекстовое поле перед ним. Вы также можете указать разрешение в виде последовательности одного или нескольких режимов, разделенных запятыми (',') или точками с запятой (';'); каждый будет судить по очереди, пока один не будет найден. Например:

1440x900,1680x1050,1920x1200,2560x1600

Или указано с глубиной (8, 16 или 24):

1440x900x16,1680x1050x16,1920x1200x16,2560x1600x16

введите описание изображения здесь

Закройте Preferencesдиалоговое окно и нажмите кнопку «Сохранить» на панели инструментов главного окна. Это оно!

введите описание изображения здесь

Чтобы удалить Grub Customizer, выполните следующие команды в терминале:

sudo apt-get autoremove --purge grub-customizer
sudo add-apt-repository -r ppa: danielrichter2007 / grub-customizer
sudo apt-get update
Башарат Сиалви
источник