Одна из лучших особенностей Arch Linux — невероятная гибкость и возможности настройки. И, как вы знаете, ядро — это сердце любого дистрибутива Linux, и Arch не исключение.
Однако многие пользователи Arch используют ядро по умолчанию, которое поставляется вместе с дистрибутивом, и редко, если вообще когда-либо, рассматривают альтернативы. В этом нет ничего плохого — в конце концов, ядро по умолчанию всегда является самым новым и совершенным и поддерживает новейшее оборудование.
Но что, если мы скажем вам, что переход на другое ядро может раскрыть ещё больший потенциал вашей системы? Потому что иногда новейшее ядро не всегда подходит лучше всего.
Например, после недавнего обновления одной из настольных систем Arch наша клавиатура и мышь Razer начали работать с перебоями. Быстрое расследование выявило проблему совместимости между модулем open-razer и последним обновлением ядра.
Итак, как вы думаете, что мы сделали? Переход на ядро LTS от Arch мгновенно решил проблему. Позже обновлённая версия последнего ядра окончательно устранила проблему. Это лишь один из многих сценариев, в которых гибкость Arch в использовании разных ядер может иметь решающее значение.
Но прежде чем мы перейдём к чисто технической части, позвольте мне вкратце рассказать вам об официальных ядрах Linux, которые предоставляет Arch, а также о нескольких популярных неофициальных ядрах, с которыми вы можете столкнуться.
Arch предоставляет пять официальных пакетов ядра для удовлетворения различных потребностей пользователей. Они поддерживаются и распространяются командой разработчиков Arch Linux или доверенными участниками в рамках официальных репозиториев.
Это стандартное ядро, которое устанавливается по умолчанию в Arch. Оно предоставляет последнюю стабильную версию основного ядра Linux и лучше всего подходит для общего использования. Это ядро — ваш выбор, если вам нужны новейшие функции и поддержка оборудования без ущерба для стабильности.
Команда для его установки + его заголовочные файлы:
sudo pacman -S linux linux-headers
Arch в качестве сервера? Почему бы и нет? Ядро LTS ориентировано на стабильность и долгосрочное обслуживание, получая обновления в основном для исправления ошибок в системе безопасности и критических ошибок. Обычно оно на несколько версий отстаёт от последней основной версии. Подходит для систем, в которых стабильность имеет первостепенное значение, например для серверов или производственных сред. Также отлично подходит, если вы предпочитаете подход «установил и забыл».
Команда для его установки + его заголовочные файлы:
sudo pacman -S linux-lts linux-lts-headers
Как следует из названия, безопасность здесь является приоритетом. Это ядро включает в себя дополнительные исправления и конфигурации для защиты системы от уязвимостей, тем самым сводя к минимуму риск использования эксплойтов. Так что, если вы беспокоитесь о безопасности, это, вероятно, ваш выбор.
Команда для его установки + его заголовочные файлы:
sudo pacman -S linux-hardened linux-hardened-headers
Это ядро, разработанное для приложений реального времени, обеспечивает минимальную задержку и предсказуемое планирование задач. Оно лучше всего подходит для обработки звука, редактирования видео и других задач, требующих соблюдения временных рамок, где задержки могут привести к сбоям.
Команда для его установки + его заголовочные файлы:
sudo pacman -S linux-rt linux-rt-headers
Ядро Zen — это проект, созданный сообществом, целью которого является создание более оптимизированного и отзывчивого ядра Linux для повседневных систем. Оно включает в себя множество улучшений производительности, настроек планировщика и других изменений для повышения интерактивности рабочего стола и отзывчивости системы. Лучше всего подходит для пользователей настольных компьютеров, геймеров и любителей мультимедиа.
Команда для его установки + его заголовочные файлы:
sudo pacman -S linux-zen linux-zen-headers
Помимо официальной поддержки, описанной выше, Arch предоставляет пользователям ещё больше возможностей и контроля над поведением системы, характеристиками производительности и философскими взглядами, чем официальные варианты.
В то время как официальные ядра (например, стабильные, LTS, защищённые, Zen и Realtime) уже подходят для широкого спектра сценариев, неофициальные ядра заполняют специализированные ниши и предлагают альтернативные оптимизации, которых может не быть в стандартных предложениях Arch. Ниже приведён список наиболее часто используемых ядер.
Важно отметить, что эти ядра не входят в официальные репозитории Arch, но вы можете установить их через AUR. Для этого вам понадобится помощник AUR, например yay
. Если вы не знаете, как его настроить, не волнуйтесь — наше руководство поможет вам!
Высокооптимизированное ядро для повышения производительности и отзывчивости настольных компьютеров, включая настройки для игр и мультимедиа. Лучше всего подходит для геймеров и пользователей настольных компьютеров, которым нужна более высокая производительность.
Команда для его установки + его заголовочные файлы:
yay -S linux-lqx linux-lqx-headers
XanMod — это ещё одно неофициальное ядро, оптимизированное специально для использования на настольных компьютерах и высокопроизводительных вычислений. Оно включает в себя исправления и настройки планировщика для уменьшения задержек и повышения скорости отклика, что делает его отличным решением для игр, мультимедиа и многозадачности.
Команда для его установки + его заголовочные файлы:
yay -S linux-xanmod linux-xanmod-headers
Версия ядра Linux, которая удаляет все проприетарные прошивки и драйверы, строго придерживаясь принципов свободного программного обеспечения. Она лучше всего подходит для сторонников свободного программного обеспечения, которые хотят использовать систему, полностью состоящую из программного обеспечения с открытым исходным кодом.
Команда для его установки + его заголовочные файлы:
yay -S linux-libre linux-libre-headers
Это ядро, созданное в рамках проекта Intel Clear Linux, включает оптимизации производительности и исправления для оборудования Intel. Оно может повысить производительность пользователей с процессорами Intel, которые хотят добиться максимальной производительности, особенно при выполнении ресурсоёмких задач.
Команда для его установки + его заголовочные файлы:
yay -S linux-clear linux-clear-headers
Ядро CK оснащено планировщиком MuQSS и другими функциями для повышения производительности и улучшения отклика системы при высокой нагрузке. Оно лучше всего подходит для пользователей, которые часто выполняют несколько задач одновременно и хотят добиться более плавной работы при интенсивных нагрузках.
Команда для его установки + его заголовочные файлы:
yay -S linux-ck linux-ck-headers
Итак, выполнив следующую команду, мы добавили в нашу систему Arch два дополнительных ядра Linux — LTS и Zen.
sudo pacman -S linux-lts linux-zen
Важно помнить, что простая установка этих ядер не делает их автоматически готовыми к использованию в вашей системе. Чтобы запустить Arch с ними, вам нужно сообщить о них загрузчику.
Не знаете, как это сделать? Не волнуйтесь — мы расскажем вам о двух наиболее распространённых вариантах: GRUB и systemd-boot.
GRUB не выполняет динамический поиск новых ядер при каждой загрузке. Вместо этого он использует файл конфигурации «grub.cfg». Чтобы он распознавал и использовал их во время загрузки, вам нужно немного помочь ему. К счастью, это очень просто.
Просто выполните приведённую ниже команду, чтобы заново создать файл конфигурации GRUB. Этот процесс сканирует содержимое каталога «boot» на наличие новых образов ядра и связанных с ними файлов initramfs, а затем обновляет «grub.cfg» новыми записями.
При перезагрузке GRUB считывает данные из этого обновлённого файла конфигурации и показывает в своём меню недавно установленные ядра.
sudo grub-mkconfig -o /boot/grub/grub.cfg
После перезагрузки вы найдёте новые ядра в разделе «Дополнительные параметры для Arch Linux» в подменю GRUB. Просто используйте клавиши со стрелками на клавиатуре, чтобы перейти к нему, а затем нажмите «Enter», чтобы получить к нему доступ.
Здесь вы увидите список только что установленных ядер, таких как LTS и Zen, которые мы настроили ранее. С помощью клавиш со стрелками на клавиатуре выделите ядро, с которым вы хотите загрузить систему Arch, затем нажмите «Enter». Вот и всё.
Но давайте сделаем всё немного более удобным для пользователя! Нам кажется неудобным, что в GRUB есть подменю, в котором нужно перемещаться, чтобы увидеть все доступные варианты ядра. Вместо этого давайте настроим так, чтобы все ядра отображались прямо на главном экране. Вы удивитесь, насколько это просто.
Откройте файл конфигурации GRUB с помощью вашего предпочтительного текстового редактора терминала:
sudo nano /etc/default/grub
Измените параметры «GRUB_DEFAULT» с «0» на «сохранено».
Затем удалите символ “#” в начале строк для “GRUB_SAVEDEFAULT” и “GRUB_DISABLE_SUBMENU”, чтобы оба параметра были раскомментированы.
Наконец, сохраните изменения и заново создайте файл «grub.cfg».
sudo grub-mkconfig -o /boot/grub/grub.cfg
Перезагрузитесь, и вот оно, волшебство. Теперь все ваши ядра удобно отображаются прямо на главном экране GRUB вашей системы Arch. Более того, загрузчик запомнит последнее использованное вами ядро и автоматически загрузится с ним в следующий раз — если только вы не решите выбрать другое из списка.
Systemd-boot — это облегчённый загрузчик, который легко интегрируется с Arch Linux и системами UEFI. Для переключения между ядрами с помощью systemd-boot необходимо установить нужные ядра и настроить записи загрузчика.
Мы предполагаем, что вы уже выполнили первую часть работы — установили дополнительные ядра. Теперь давайте настроим systemd-boot для загрузки вашей системы с их помощью.
Убедитесь, что соответствующие новые ядра и образы initramfs были созданы в каталоге «/boot»:
Отлично! Как видите, наши дополнительные ядра LTS и Zen также создали необходимые файлы в каталоге «/boot» вместе с основным ядром Arch.
Поскольку вы используете systemd-boot, мы предполагаем, что вы уже знакомы с его основами, но на всякий случай позвольте мне вкратце напомнить вам о них. Для каждого ядра нужна своя запись в «/boot/loader/entries/» (если «/boot» — это точка монтирования ESP (системного раздела EFI), что обычно является наиболее распространённым случаем). Эти файлы определяют, как systemd-boot обрабатывает каждое ядро.
Далее для каждого дополнительного ядра, которое вы устанавливаете, необходимо вручную создать запись в каталоге «/boot/loader/entries/», который представляет собой простой файл конфигурации. Его название может быть любым, но обязательным условием является наличие расширения «.conf». Давайте сделаем это для ядра LTS.
sudo nano /boot/loader/entries/arch-lts.conf
И поместите в него следующее содержимое:
title Arch Linux LTS linux /vmlinuz-linux-lts initrd /initramfs-linux-lts.img options root=UUID=45d61aea-cda7-4e55-a5f5-32ab4518a6dd rw
Конечно, вы должны заменить часть «45d61aea-cda7-4e55-a5f5-32ab4518a6dd» на UUID вашей корневой («/») файловой системы. Вы можете найти его с помощью:
lsblk -o NAME,UUID,FSTYPE,MOUNTPOINT
Кроме того, если вы используете процессоры Intel или AMD, включите initrd с микрокодом (если вы уже установили его и соответствующий файл доступен в «/boot») перед основным initramfs. Например:
title Arch Linux LTS linux /vmlinuz-linux-lts initrd /amd-ucode.img initrd /initramfs-linux-lts.img options root=UUID=45d61aea-cda7-4e55-a5f5-32ab4518a6dd rw
Вот и всё! Сохраните файл и выйдите. Наконец, давайте быстро перепроверим, всё ли в порядке.
bootctl list
У нас все готово. Перезагрузите систему:
sudo reboot
Недавно добавленная «Arch Linux LTS» теперь должна быть доступна в меню systemd-boot. Выделите её и нажмите «Enter», чтобы загрузить систему Arch с ядром LTS.
Наконец, вот небольшая хитрость, которая облегчит вам жизнь: вы можете настроить systemd-boot так, чтобы он запоминал последнее загруженное ядро, и вам не нужно было каждый раз выбирать его в меню загрузки. Просто откройте файл «/boot/loader/loader.conf» и установите для параметра «default» значение «@saved».
sudo nano /boot/loader/loader.conf
На этом мы с вами прощаемся, друзья. Вы только что сделали ещё один шаг к раскрытию всего потенциала Arch Linux. Возможность устанавливать разные ядра и переключаться между ними позволяет вам настраивать систему для повышения производительности, стабильности или использования передовых функций — в зависимости от ваших потребностей.
Итак, перезагрузитесь в выбранном вами ядре и продолжайте изучать всё, что может предложить Arch — ваша система, ваш путь.
Если у вас есть какие-либо вопросы или пожелания, не стесняйтесь обращаться к нам в комментариях ниже.