Manjaro Сделайте шрифт меню GRUB и загрузки/выключения более крупным

Сделайте шрифт меню GRUB и загрузки/выключения более крупным

From Manjaro
Revision as of 04:41, 16 February 2023 by Krotesk (talk | contribs)
Other languages:
English • ‎español • ‎русский • ‎中文(中国大陆)‎
Предупреждение
Эта страница устарела. Если вы проверили или обновили эту страницу и нашли ее содержание подходящим, пожалуйста, удалите это уведомление. 2020-12-06
Примечание
12-Feb-17 : Раньше нам нужно было, но теперь не требуется добавлять consolefonts в конец строки HOOKS= в файле mkinitcpio.conf.

Поскольку коллекция всех заголовков протоколов сервера X.Org ранее распространявшихся как отдельные, самостоятельные пакеты, были объединены в Xorgproto: [1] Итак, если вы использовали это руководство для увеличения размера загрузочных шрифтов - вы должны отредактировать файл /etc/mkinitcpio.conf и удалить consolefonts из конца строки HOOKS=.

Если вы не сделаете эту правку - это не вызовет у вас никаких проблем, кроме сообщения об ошибке, говорящего (примерно), что consolefonts не могут быть найдены, всякий раз, когда вы обновляете ядро через терминал.

Введение

Если вы используете высокое разрешение DPI и хотите, чтобы вам было легче читать с дисплея во время процесса загрузки (как вверх, так и вниз), и у вас не очень быстрая система загрузки (используется SSD и тому подобное), то на этой странице вы узнаете, как сделать шрифты меню GRUB крупнее и как изменить шрифт консоли, используемый для отображения процессов загрузки/выключения. Все это в первую очередь предназначено для тех пользователей, которые считают важным иметь возможность видеть/читать отображение процессов загрузки/выключения, когда они происходят в реальном времени. Это руководство предназначено как для пользователей SystemD, так и OpenRC.

Что мы собираемся делать

Это руководство на самом деле представляет собой два в одном, поскольку первая часть посвящена увеличению шрифта, используемого в меню GRUB и на ранней стадии процесса загрузки до загрузки драйвера GPU.

Вторая часть заключается в том, чтобы сначала определить модуль GPU для загрузки, а затем использовать возможности Kernel Mode Setting (KMS) ядра Linux для указания ему загружать модули на самом раннем этапе процесса загрузки. Именно это мы и сделаем с модулем GPU через файл /etc/mkinitcpio.conf. Затем завершим этот процесс восстановлением начального образа ramdisk.

После этого нам нужно найти каталог consolefonts и, если нужно, клонировать каталог /usr/share/kbd/consolefonts в /usr/share/consolefonts. После этого нам нужно выбрать шрифт, хотя я постараюсь сделать это как можно быстрее и безболезненнее. Затем нам нужно указать файлу /etc/conf.d/consolefont, что это за шрифт, сохранить и перезагрузиться в новой ситуации, где мы сможем действительно читать текст по мере его прохождения. Таков план.

Установить для GRUB и процесса загрузки до загрузки модуля GPU более крупный шрифт

Здесь требуется выбрать шрифт, который вам нравится (моноширинные шрифты легче всего читать), я выбрал DejaVuSansMono20 и вот командная строка, создающая этот шрифт в формате, совместимом с GRUB, в размере, который вы выбрали, и помещающая его во вновь созданный каталог /boot/grub/fonts (это длинная команда и она вся в одной строке):
sudo grub-mkfont --output=/boot/grub/fonts/DejaVuSansMono20.pf2 \ --size=20 /usr/share/fonts/TTF/dejavu/DejaVuSansMono.ttf

Затем нам нужно открыть файл /etc/default/grub в текстовом редакторе от root (используйте sudo) и добавить следующую строку (или строки, если у вас, как и у меня, плохая память):

 ##==========================_HANDY_==========================================
# Более читабельный шрифт на экране с высоким dpi, созданный с помощью 
# следующих 2 строк на ОДНОЙ строке, команда терминала (игнорируйте сообщения 
# об ошибках - это работает!
# sudo grub-mkfont --output=/boot/grub/fonts/DejaVuSansMono24.pf2 \
#    --size=24 /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf
##===========================================================================

GRUB_FONT=/boot/grub/fonts/DejaVuSansMono18.pf2

Сохраните отредактированный файл, а затем введите следующее в приглашении терминала:

sudo update-grub


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

Используйте KMS для загрузки модуля ядра GPU в самом начале процесса загрузки

Используйте sudo и загрузите файл /etc/mkinitcpio.conf в текстовый редактор, найдите строку MODULES="" в самом верху файла. Здесь вы должны будете указать имя вашего модуля GPU, возможны три варианта, которые я могу показать:

Intel on-board (как правило все процессоры intel, имеющие GPU/CPU):

MODULES=(i915)

AMD/ATi:

MODULES=(radeon/amdgpu)

nVidia free:

MODULES=(nouveau)

nVidia proprietary:

MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)

Если в вашей строке MODULES= уже есть другие модули, то просто добавьте новый, отделив его пробелом от предыдущего.

Вы можете сохранить и закрыть файл.

Для следующего трюка нам нужно определить, какую ветвь ядра вы используете. Большинство людей будут использовать более старую, более новую или самую последнюю версию "нормально" поддерживаемого ядра. Оно отображается в каталоге /boot следующим образом:

initramfs-6.1-x86_64-fallback.img
initramfs-6.1-x86_64.img
vmlinuz-6.1-x86_64

(это для версии ядра 6.1, замените на свою версию ядра)

и поэтому используйте следующую команду для восстановления образа Init Ramdisk Image:

sudo mkinitcpio -p linux61

(опять же для версии ядра 6.1, замените версию на свою)

Для тех, кто использует ядрa Linux Long Term Support, их идентифицирующие файлы /boot будут выглядеть следующим образом:

initramfs-linux-lts-fallback.img
initramfs-linux-lts.img
vmlinuz-linux-lts

и поэтому для восстановления образа linux-lts Init Ramdisk Image следует использовать следующую команду:

sudo mkinitcpio -p linux-lts

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

Для пользователей Manjaro, использующих несколько ядер, придется редактировать несколько файлов mkinitcpio.conf, названных в соответствии с именами каждого из ядер. На Artix (Arch/OpenRC) мне не приходится возиться с этим, к лучшему и худшему. Опять же, ваш каталог /boot подскажет вам, что делать (как показано в различиях в примерах выше).

Используйте каталог /usr/share/consolefonts для увеличения вашего шрифта загрузки/выключения

Примечание
Я с нетерпением жду очистки этого раздела.

На Artix мне пришлось скопировать каталог /usr/share/kbd/consolefonts/ в /usr/share/consolefonts. Можно ли было использовать каталог /usr/share/kbd/consolefonts вместо него или нет, я не знаю (я не пробовал). Файл /etc/conf.d/consolefont использует путь /usr/share/consolefonts, поэтому я сделал такой же.

Итак, первое, что вам нужно сделать (прежде чем я выясню у кого-нибудь на форуме Manjaro, где существует каталог consolefonts), это посмотреть, нужно ли клонировать каталог из /usr/share/kbd/ в /usr/share/ или нет. После того, как с этим разобрались, нужно выбрать шрифт. Вам не понравится это делать. Вот ссылка на старую страницу (гораздо меньше подходящих шрифтов и их все еще слишком много)

Прислушайтесь к моему совету и используйте ter-132b - это шрифт, достаточно крупный для моего 15" 1440p дисплея. Я ожидаю, что он будет отлично смотреться на 24-дюймовом дисплее 1080p. Если он слишком большой - вы можете использовать меньшее число, которое легко увидеть в каталоге consolefonts.

Чтобы указать ядру использовать выбранный шрифт консоли - Вам нужно открыть файл /etc/conf.d/consolefont и закомментировать (используйте символ # в начале строки) все строки, в которых говорится:

consolefont=

Затем добавьте свою собственную строку. Вот что я сделал:

consolefont="ter-132b"

Вам больше не нужно вносить никаких изменений в этот файл, поэтому закройте его.

Теперь из того, что я могу понять на странице шрифтов ArchWiki: [2] Вышеприведенный способ должен работать на SystemD как есть. Я проверю на форуме Manjaro и, если потребуется, изменю эту страницу (в ней не должно быть ничего лишнего, поскольку systemd и openrc используют одно и то же ядро).

Для пользователей Artix (Arch/OpenRC) достаточно один раз использовать следующую команду:

sudo rc-update add consolefont boot

Надеюсь, я ничего не забыл, так как это многоступенчатый процесс, и я потерял заряд и большую часть вики-страницы некоторое время назад, и мне пришлось делать это дважды! ;)

Эта страница все еще находится в процессе разработки и будет доработана, как только я получу необходимую информацию через форум Manjaro. ;)
Cookies help us deliver our services. By using our services, you agree to our use of cookies.