Все об Arch Linux

Arch Linux будет тем, что вы из него сделаете!

Какое ядро выбрать: linux, linux-lts, linux-zen, hardened

Короткий ответ: для обычного десктопа бери linux или linux-zen, для сервера и старого железа linux-lts, для максимальной защиты linux-hardened. А ещё лучше поставить linux-lts рядом с основным ядром как запасной вариант: если свежее ядро сломает загрузку, ты всегда стартуешь с LTS. Все эти ядра лежат в официальных репозиториях Arch, ставятся одной командой и спокойно сосуществуют на одном диске. Дальше разберём каждый вариант по сценариям: кому что подходит и как всё это настроить.

Чем отличаются ядра в Arch Linux

Все сборки собираются из одних исходников Linux, но с разными патчами и настройками. Отсюда разница в поведении, производительности и совместимости.

linux: стандартное ядро

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

linux-lts: ядро с долгой поддержкой

Собирается из ветки с длительным сроком поддержки. Обновления редкие и консервативные: только исправления безопасности и багов. Никаких новых фич, зато максимальная предсказуемость. Идеально для серверов, старого железа и как запасной вариант.

linux-zen: ядро для отзывчивого десктопа

Патчи, нацеленные на интерактивность: другой планировщик задач, тюнинг под десктопные нагрузки. Популярно у геймеров и тех, кто работает с тяжёлыми приложениями. По сути то же свежее ядро, но с другими приоритетами планирования.

linux-hardened: ядро с усиленной защитой

Набор патчей безопасности поверх свежего ядра: защита от эксплуатации уязвимостей, ужесточение прав, дополнительные проверки. Платишь производительностью и совместимостью: часть софта, включая некоторые игры и VR, может не работать.

linux-rt: ядро реального времени

Для задач с жёсткими требованиями к задержкам: аудиостудии, робототехника, промышленные контроллеры. Собирается с патчами PREEMPT_RT, которые делают время отклика предсказуемым. На обычном десктопе разницу не почувствуешь, а настройка сложнее: нужны свои параметры загрузки и проверка реального времени. Обычному пользователю это ядро не нужно.

Сравнение в одной таблице

Ниже таблица для быстрой ориентации. Цифры производительности намеренно не привожу: они сильно зависят от железа и задач.

Ядро Для кого Плюсы Минусы
linux большинство пользователей свежие фичи, новое железо частые обновления
linux-lts серверы, старое железо стабильность, редкие обновления нет новых фич
linux-zen десктоп, игры отзывчивость разница субъективная
linux-hardened защита от атак патчи безопасности медленнее, ломает софт
linux-rt реальное время низкие задержки нишевый, сложный

Какое ядро подходит для десктопа

Для повседневного десктопа выбор простой: linux или linux-zen. Не хочешь думать, ставь linux. Хочется более отзывчивую систему под интерактивную нагрузку, попробуй linux-zen. Разница в ощущениях субъективная, но многие замечают более плавную работу при переключении между окнами и тяжёлыми приложениями.

Проверить текущее ядро:

uname -r

Для игр linux-zen выбирают чаще всего: патчи планировщика снижают задержки ввода, а свежая версия ядра лучше поддерживает новые видеокарты и контроллеры. Если играешь через Steam или Proton, разница может проявиться в более плавной картинке. Если не хочешь экспериментировать, linux даст почти то же самое.

Для рабочей станции с компиляцией, виртуалками и тяжёлыми IDE linux-zen тоже неплох: планировщик быстрее реагирует на интерактивные задачи, пока фоновые сборки жуют ядра. Но если система работает стабильно на linux, менять ничего не нужно.

Когда выбирать linux-lts

linux-lts спасает в трёх ситуациях.

Первая: сервер. Тебе не нужны новые фичи, нужна предсказуемость. LTS обновляется редко и не преподносит сюрпризов.

Вторая: старое железо. Свежие ядра иногда отбрасывают поддержку устаревших устройств или меняют поведение драйверов. LTS работает как раньше.

Третья: новое железо, которое не поддерживается свежим ядром. Звучит парадоксально, но бывает: проприетарные драйверы, например Nvidia, иногда отстают от свежих версий ядра. Пока драйвер не обновили, LTS остаётся единственным рабочим вариантом. То же касается прошивок: если свежему ядру не хватает linux-firmware для нового устройства, LTS часто работает без проблем. Подробнее про драйвер Nvidia читай в статье «Установка драйвера Nvidia на Arch Linux».

Какую именно ветку поддерживает Arch, видно по версии пакета: pacman -Si linux-lts покажет номер серии. Обычно это последняя LTS-ветка с kernel.org, и живёт она несколько лет.

Кому нужен linux-hardened

Если держишь машину с публичным IP, работаешь с чужими файлами или просто параноик по натуре, linux-hardened даёт дополнительный слой защиты. Патчи усложняют эксплуатацию уязвимостей: случайные адреса, ужесточённые проверки, ограничения на часть системных вызовов.

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

И ещё один момент: hardened не защищает от глупых действий. Пароль от root, открытый SSH с паролем, запуск скриптов из интернета без проверки сведут на нет любые патчи. Сначала базовая гигиена, потом hardened.

Как установить несколько ядер и переключаться между ними

Никто не мешает поставить два или три ядра сразу. Это стандартная практика: основное ядро для работы, LTS как страховка.

pacman -S linux-lts linux-lts-headers

Пакет linux-lts-headers нужен для сборки модулей под LTS. Установка автоматически перегенерирует initramfs и добавит новую запись в загрузчик. Если используешь GRUB, конфиг обновится сам через хуки pacman. Хуки вызывают mkinitcpio и grub-mkconfig автоматически, поэтому руками ничего запускать не нужно. Если хук не сработал, пункт в меню не появится, и тогда конфиг перегенерируешь вручную.

После установки в меню GRUB появится пункт с LTS. Как сделать его загрузкой по умолчанию и как устроено меню с несколькими ядрами, разобрано в статье «Несколько ядер в меню загрузки».

Если свежее ядро сломалось, просто выбери LTS в меню загрузчика и продолжай работать. Старое ядро никуда не делось, оно лежит рядом в /boot.

Если используешь systemd-boot вместо GRUB, записи для нового ядра появятся автоматически. Про разницу загрузчиков читай в статье «systemd-boot vs GRUB: второе ядро».

Как сделать LTS ядром по умолчанию

Чтобы GRUB запоминал твой выбор и грузил последнее выбранное ядро, открой /etc/default/grub и поставь:

GRUB_DEFAULT=saved

Затем перегенерируй конфиг:

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

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

Если хочешь жёстко зафиксировать конкретный пункт меню, поставь вместо saved его номер, например GRUB_DEFAULT=1. Нумерация начинается с нуля, порядок пунктов смотри в /boot/grub/grub.cfg.

Зачем нужны пакеты -headers

Заголовочные файлы ядра нужны для сборки внешних модулей: драйверов Nvidia, модулей VirtualBox, DKMS-пакетов. Без linux-headers модуль не соберётся под твоё ядро. Это не библиотеки для программ, а именно заголовки для компиляции модулей. Обычному пользователю они нужны только потому, что без них не соберутся драйверы. Каждому установленному ядру соответствует свой пакет -headers: linuxlinux-headers, linux-ltslinux-lts-headers, linux-zenlinux-zen-headers.

Если модуль собран под одно ядро, а загрузилось другое, он просто не загрузится. Поэтому после установки нового ядра пересобирай внешние модули. DKMS делает это автоматически при каждом обновлении.

Механизм автоматической пересборки модулей при обновлении ядра описан в статье «DKMS: динамические модули».

Как удалить лишние ядра

Посмотреть, какие ядра стоят:

pacman -Q | grep linux

Удалить ненужное, например linux-zen:

pacman -R linux-zen linux-zen-headers

После удаления перегенерируй конфиг GRUB:

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

Не удаляй последнее рабочее ядро, пока не убедишься, что запасное грузится. Сначала проверь uname -r и перезагрузись на LTS.

Кстати, pacman -Q | grep linux покажет и заголовочные пакеты, и модули. Удаляй их вместе с ядром, иначе останутся сироты.

Что делать, если свежее ядро не загружается

Самый частый сценарий: после обновления система не грузится или грузится с ошибками. Не паникуй. Перезагрузись, в меню GRUB выбери предыдущее ядро или LTS, зайди в систему и разберись с проблемным обновлением. Пока LTS стоит рядом, у тебя всегда есть рабочий вход в систему.

Частая причина проблем после обновления ядра: несовпадение версий ядра и initramfs или сломанный хук mkinitcpio. Если LTS грузится, а свежее ядро нет, сравни вывод uname -r и файлы в /boot: vmlinuz-linux и initramfs-linux.img должны быть от одной версии.

Если хочешь больше контроля над ядром, чем дают готовые сборки, можно собрать своё. Процесс описан в статье «Сборка своего ядра за 5 шагов».

Частые вопросы

Можно ли поставить linux-zen и linux-lts одновременно?

Да, без проблем. Ядра не конфликтуют: у каждого свои файлы в /boot и свой пакет -headers. Файлы называются по-разному: vmlinuz-linux, vmlinuz-linux-lts, vmlinuz-linux-zen. В меню загрузчика появится несколько пунктов, между ними переключаешься при перезагрузке.

Чем linux-zen отличается от linux?

Тем же свежим ядром, но с патчами под интерактивность: другой планировщик, другие приоритеты для десктопных задач. Версии совпадают, обновления выходят примерно в одно время. Для серверных нагрузок zen не оптимизирован, там лучше обычный linux или LTS.

Нужно ли удалять старое ядро после обновления?

Не обязательно. Arch хранит несколько версий ядра в /boot, и это нормально. Старые версии занимают десятки мегабайт, не больше. Удалять их можно, но лучше оставить хотя бы одну запасную, особенно LTS.

Почему после установки linux-lts не появился пункт в меню GRUB?

Скорее всего, не сработал хук перегенерации конфига. Выполни вручную:

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

После этого пункт появится.

Что выбрать для ноутбука?

linux или linux-zen. Ноутбуки часто имеют свежее железо, и свежее ядро лучше знает новые чипы и контроллеры Wi-Fi. LTS поставь рядом на всякий случай.

Полезные ресурсы

Заключение

Выбор ядра сводится к сценарию: десктоп берёт linux или linux-zen, сервер и старое железо linux-lts, защита linux-hardened. Универсальная страховка одна: поставь linux-lts рядом с основным ядром. Тогда любое проблемное обновление перестаёт быть страшным, потому что запасной вариант загрузки всегда под рукой. Пакеты -headers ставь для каждого ядра, которое держишь, и не забывай перегенерировать конфиг загрузчика после установки и удаления. Пять минут настройки избавят от ночного ремонта системы.



Не получилось? Поможем настроить

Задай вопрос в чате — отвечаем быстро, по делу и без воды.

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

Комментарии

Загрузка…

Откроется GitHub: создайте новый issue с вашим комментарием (кнопка «Submit new issue»). После отправки обновите эту страницу — комментарий появится ниже.

Telegram Max