как поменять ядро в линукс
Linux и Windows: помощь админам и пользователям
Администрируем и настраиваем Windows, Linux.
Как изменить ядро Ubuntu Linux
Изменение ядра не для каждого. Пожалуйста обратите внимание, что если вы попробуете сделать это, вы можете разрушить вашу систему.
Есть масса причин, по которым вы можете захотеть изменить ядро. Вы можете захотеть обрезать ядро, для того чтобы в нем были только необходимые сервисы, особенно если у вас запущен сервер и выделенное устройство. Вы также можете захотеть пропатчить ваше ядро для поддержки оборудования, которое в настоящий момент не поддерживается.
Эта статья не объясняет как патчить ваше ядро, только как изменить текущее. Я попробую объяснить как пропатчить ядро в следующих статьях, и какие практические причины могут быть для этог.
Для начала, вам нужно посмотреть какая версия ядра у вас сейчас. Используйте для этого команду uname :Теперь вам необходимо установить исходные коды Linux для вашего ядра, обратите внимание что у меня ядро 2.6.17-10. Вы можете заменить номер ядра на тот, который используется у вас. Вам также необходимо установить библиотеки и некоторые дополнительные программы, которые помогут вам при компиляции.
Вы можете увидеть что исходники устанавливаются в директории /usr/src в архивированном файле.
Для облегчения дальнейших действий, вы можете перейти в режим root используя команду sudo для открытия нового шелла. Есть другие пути для этого, но я предпочитаю этот путь.
Теперь смените директорию. Заметьте что вам необходимо установить утилиту bunzip если её нет в вашей системе.
Сделайте копию текущей конфигурации ядра перед изменением. Обратите внимание, что символ `находиться под символом тильда
Теперь мы можем запустить утилиту, которая позволит нам изменить ядро:
Теперь находясь внутри утилиты, мы можем установить опции для настройки ядра. Навигация очень простая. Я решил выбрать Networking и нажал клавишу Enter для перехода в эту категорию:
Итак, я собираюсь отключить это немедленно. Зачем вообще это установлено в моем ядре? Я нажимаю Esc для выхода из окна справки, и потом нажму N для удаления этого элемента из ядра.
Когда вы закончите делать изменения, которые вам нужны, нажмите Exit и сохраните конфигурационный файл.
Теперь конфигурация готова для компиляции. Сперва сделаем очистку, просто для того чтобы убедиться, что все готово к компиляции.
Далее мы действительно компилируем ядро. Это делается чертовски долго, так что пойдите займитесь чем нибудь ещё.
Пожалуйста обратите внимание что когда вы запустите следующие команды, вы установите новое ядро как ядро по умолчанию. Это может разрушить вашу систему. Если ваша машина не загружается, вы можете нажать Esc и меню загрузки GRUB и выбрать старое ядро. Вы можете заблокировать неверное ядро в /boot/grub/menu.lst и попробовать скомпилировать его заново.
Я планирую написать серию статей о изменении ядра, так что подпишитесь на рассылку для обновлений.
⏬ Как понизить версию ядра в Linux
Linux живет и умирает ядром.
Если вы знакомы с тем, как работает GNU / Linux, Linux – это ядро.
Все остальное – это инструменты, которые взаимодействуют с ним.
Эти инструменты позволяют вам фактически выполнять работу, но они не могут ничего сделать без ядра.
Ядро операционной системы похоже на вашу сердечно-сосудистую систему.
Вы склонны забывать об этом, пока что-то пойдет не так.
Когда обновленное ядро не позволит вам использовать ваш компьютер, пришло время понизить версию.
Загрузитесь в старое ядро
Для загрузки в старое ядро вам необходимо перезагрузить компьютер.
Когда компьютер загружает GRUB, вам может потребоваться нажать клавишу, чтобы выбрать нестандартные параметры.
В некоторых системах сразу будут показаны более старые ядра, в то время как в Ubuntu вам нужно будет выбрать «Advanced options for Ubuntu», чтобы найти более старые ядра.
Выбрав старое ядро, вы загрузитесь в свою систему.
Все должно работать как раньше.
Если проблема не устранена, значит она не в ядре.
Удалите проблемное ядро
Если вы загрузились и все работает так, как задумано, скорее всего, проблема в обновленном ядре.
Технически вы можете просто делать это каждый раз, когда загружаете свой компьютер, но имеет смысл удалить проблемное ядро.
Как избежать таким проблем в будущем
Это даст вам возможность увидеть, появятся ли какие-либо сообщения от пользователей, имеющих проблемы с новым ядром.
Особенно следует следить за пользователями со схожим оборудованием.
Если вам важна стабильность, вы также можете использовать дистрибутивы LTS.
Эти обновления более редкие, за исключением обновлений безопасности.
Это означает, что вы можете рассчитывать на то, что они будут более стабильными, чем ваш стандартный дистрибутив.
Заключение
Хотя понижение версии является самым простым способом решения проблем, связанных с ядром, это не единственный способ.
Иногда это просто невозможно.
Возможно, ядро обновлений включает аппаратную поддержку, в которой вы отчаянно нуждаетесь, в то время как ошибка связана с оборудованием, которое вы даже не используете.
В этом случае вы должны собрать собственное ядро, а не полагаться на версию, поставляемую вашим дистрибутивом.
Это не совсем просто, но не так сложно, как думают некоторые.
Добавить комментарий Отменить ответ
• Свежие записи
• Категории
• itsecforu.ru
• Страны посетителей
IT is good
Как обновить ядро Ubuntu
Новые версии ядер содержат исправления, различные улучшения работы и производительности системы, а также различные нововведения, которые делают работу с Linux лучше. Поэтому было бы неплохо всегда иметь в своей системе самое новое ядро. Но большинство дистрибутивов, в том числе Ubuntu достаточно консервативны и содержат старые, проверенные версии ядер, а новые добавляются очень медленно.
Но эту проблему можно решить. Из этой статьи вы узнаете как обновить ядро ubuntu 16.04 или более поздних версий. Хотя новых версий ядра нет в репозитории, но есть программа, которая сделает всю работу за вас.
Как обновить ядро Ubuntu?
Ядро Linux делает очень много полезных вещей, кроме управления памятью, процессами и основными компонентами компьютера, все драйвера системных устройств тоже встроены в ядро, при появлении новых технологий драйвера должны обновляться, если у вашего компьютера есть какие-либо проблемы с поддержкой оборудования в Linux, то обновление ядра Ubuntu может улучшить ситуацию.
Утилита не поставляется в официальных репозиториях, но вы можете установить ее из PPA:
Кроме того, вы можете установить утилиту через центр приложений Ubuntu. После установки вы можете запустить программу из главного меню:
После запуска утилита синхронизирует свое состояние с сетью чтобы определить какие новые версии ядра доступны:
Для установки ядра просто выберите его и нажмите кнопку «Установить»:
Вам останется ввести пароль пользователя и дождаться завершения установки. Процесс установки будет показан в окне терминала:
После завершения обновления достаточно перезагрузить компьютер, чтобы использовать новую версию ядра.
Решение проблем
Новые ядра не всегда стабильные и вместе с улучшениями они могут принести проблемы. Например, перестанет работать какое-либо устройство или компьютер вообще не будет загружаться. Нужно знать что делать в таких случаях.
По умолчанию Ubuntu может не давать выбрать ядро, с которого нужно загрузиться. Поэтому сначала отредактировать /etc/default/grub. Закомментируйте эту строчку:
sudo vi /etc/default/grub
Теперь создайте новый конфигурационный файл grub с этими настройками:
Теперь, когда вы перезагрузитесь, а что-то работать не будет, то сможете очень просто загрузить старое ядро и удалить новое. Если уже поздно, вы ничего не настроили, а Linux не загружается, то здесь тоже есть решение, просто нажимайте очень быстро и много раз клавишу вниз в то время, когда должно появиться меню Grub.
Очистка системы
Если все работает, старые ядра можно удалить. Да, одну две предыдущие версии ядра можно оставить, но не более того. Мы рассматривали как правильно удалить старые ядра в отдельной статье.
Выводы
Теперь вы знаете как обновить ядро Ubuntu и использовать самую последнюю версию в своей системе. Надеюсь, эта информация была полезной для вас, если у вас остались вопросы, спрашивайте в комментариях!
Обновление ядра Linux до новой версии
В последнее время новые версии ядер выходят достаточно часто. Раз в несколько месяцев выходит стабильный релиз. Ну а нестабильные кандидаты в релизы выходят и того чаще. Линус Торвальдс и множество разработчиков по всему миру постоянно работают над улучшением новых ядер и добавлением в них все больше и больше функциональности.
С каждой новой версией в ядре Linux появляется поддержка нескольких новых устройств, например, новых процессоров, видеокарт или даже сенсорных экранов. За последнее время, поддержка нового оборудования очень сильно улучшилась. Также в ядро включаются новые файловые системы, улучшается работа сетевого стека, исправляются ошибки и баги.
Если вам нужна более подробная информация об изменениях в какой-то определенной версии ядра смотрите ее Changelog на kernel.org, а в этой статье мы рассмотрим обновление ядра Linux до самой новой версии. Я попытаюсь не привязывать инструкцию к определенной версии ядра, новые ядра выходят достаточно часто и она будет актуальна для каждого из них. Рассмотрим обновление ядра Ubuntu и CentOS. Сначала давайте рассмотрим как обновить ядро в Ubuntu.
Обновление ядра Ubuntu вручную
Давайте сначала посмотрим какое ядро у вас установлено. Для этого откройте терминал и выполните:
Например, у меня сейчас используется версия 5.4, и я могу обновиться к самой новой версии. Разработчики Ubuntu уже позаботились о том чтобы их пользователи не собирали ядро вручную и сделали deb пакеты новой версии ядра. Их можно скачать с официального сайта Canonical.
Я мог бы привести здесь команды wget для загрузки, если была бы известна версия ядра, но в нашем случае лучше будет использовать браузер. Откройте сайт http://kernel.ubuntu.com/
kernel-ppa/mainline/. Здесь находятся все, собираемые командой Ubuntu ядра.
Пролистайте вниз, именно там находятся более новые версии ядер:
Кроме того, в самом верху есть папка daily/current, в которой находятся самые свежие, ночные сборки ядер. Выберите нужную версию ядра, затем выберите архитектуру. Для 64-битных систем вам понадобится архитектура amd64:
Далее надо скачать четыре файла: два linux-headers, linux-image и linux-modules. Как видите, там есть несколько типов ядер: lowlatency и generic. Ядро lowlatency судя из названия имеет более низкие задержки при работе с прерываниями. Зато ядро generic имеет большую пропускную способность. В большинстве случаев достаточно ядра generic. Скачайте linux-headers для all и generic, а также linux-image-generic и linux-modules-generic:
После завершения загрузки можно переходить к установке. Перейдите в папку с установочными пакетами, например,
Если эта команда не сработала, можно пойти другим путем. Установите утилиту gdebi:
sudo apt install gdebi
Затем с помощью нее установите ядро:
sudo gdebi linux-headers*.deb linux-image-*.deb linux-modules-*.deb
Ядро установлено, осталось обновить загрузчик:
Теперь можно перезагружать компьютер и смотреть что получилось. После перезагрузки убедимся, что обновление ядра Linux до самой новой версии прошло успешно:
Если во время установки произошли какие-либо ошибки или ядро обновилось неправильно, и теперь система не загружается с новым ядром, вы можете использовать старое ядро. Также система может не запускаться, если вы используете проприетарный драйвер для видеокарты NVIDIA в таком случае не спешите качать самую новую версию ядра, используйте только стабильные ядра, в них, как правило, уже добавлена поддержка этого модуля.
А чтобы восстановить работу системы выберите пункт Advanced options for Ubuntu в меню Grub:
И запустите предыдущее работающее ядро:
После загрузки останется удалить неверно установленное ядро и еще раз обновить Grub. Найдите точное имя пакета ядра с помощью apt search. Например:
sudo apt search linux-headers-5.8
Затем удалите этот пакет:
sudo apt remove linux-headers-5.8-000055-generic
Аналогично надо поступить с ядром. После этого обновите конфигурацию Grub:
Теперь ваша система вернулась к прежнему состоянию. Вы можете попробовать устанавливать более старую версию ядра или попробовать еще раз.
Обновление ядра Linux до в CentOS
А теперь давайте рассмотрим как обновить ядро Linux самой новой версии в CentOS. Инструкция проверена на CentOS 8, но скорее всего, будет работать и на RHEL 8, Fedora и других подобных дистрибутивах.
Как правило, новые ядра не включены в официальные репозитории CentOS, поэтому чтобы получить последнюю стабильную версию нам необходимо будет добавить репозиторий ELRepo. Это репозиторий коммерческих пакетов (Enterprise Linux Packages) он также поддерживается в RHEL и Fedora.
Для добавления репозитория сначала необходимо импортировать ключ:
Для того чтобы добавить репозиторий и необходимые компоненты в RHEL 7 и CentOS 7 выполните:
sudo yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
В CentOS 8 выполните:
sudo dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
sudo yum install https://www.elrepo.org/elrepo-release-6.el6.elrepo.noarch.rpm
Готово, теперь посмотрим текущую версию ядра:
Можем устанавливать самую новую версию ядра Linux командой:
Пакет kernel-ml, это текущий стабильный mainline релиз, на данный момент, это 5.8. После того как установка нового ядра Linux завершена, обновите конфигурационный файл загрузчика:
Затем можете перезагружать систему. Обновление ядра в CentOS завершено.
Если после перезагрузки у вас возникли какие-либо проблемы с новым ядром, просто удалите его с помощью команды:
И перезагрузите компьютер, чтобы вернуть систему к прежнему состоянию.
Выводы
Оцените статью:
Об авторе
Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.
21 комментарий
Спасибо за статью.
Подписан на вашу рассылку, так что в качестве обратной связи с читателями передаю вам привет!
Установил ядро 4.4, но слетел Вайфай, запустить не смог, пока откатился на старое ядро.
Да у меня такая же беда, обновился на 4.2 правда, было 3.19. Теперь вай фай с блютузом, не запускаются, пока остался на 3.19.
Подожду уже выхода Ubuntu 16.04 посмотрим, что будет в релизе, должны пофиксить по идее.
Ребзя а чего у меня не хочет обновлять? Сейчас стоит на VPS Ubuntu Xenial (16.04 LTS) (GNU/Linux 4.5.7-std-3 x86_64). Пробую обновить до 4.7.3 и ошибку пишет:
Как установить последние версии ядра Linux в Ubuntu и Linux Mint
Последние версии ядра Linux имеют драйверы для новых устройств и другие нововведения. К сожалению, многие популярные дистрибутивы Linux не спешат обновить ядро. Данная инструкция покажет, как легко, без компиляции, установить любую версию ядра Linux в Ubuntu и Linux Mint. Вы можете выбрать для установки как более новое ядро, так и более старое, чем предлагает репозиторий вашего дистрибутива.
При желании, вы без проблем можете удалить установленные ядра Linux и вернуться к ядру из репозитория.
Поскольку Linux Mint основана на Ubuntu, то данная инструкция в полной мере применима и к дистрибутивам Linux Mint, кроме LMDE. Для LMDE (Linux Mint Debian Edition) смотрите статью «Как установить последние версии ядра Linux в Debian и основанные на Debian дистрибутивы».
Предупреждение перед обновлением ядра
Необходимо помнить, что из-за несовместимости ядра с программами (в первую очередь, с проприетарными видео драйверами), вы можете столкнуться с проблемами, в том числе с чёрным экраном во время загрузки.
В большинстве случаев, возникшие проблемы можно решить без переустановки дистрибутива. Начните с того, что в меню загрузки перейдите в дополнительные параметры и загрузитесь с предыдущей версией ядра. Выполнив загрузку, удалите проблемное ядро.
Проблемы могут вызвать проприетарные драйверы для видеокарт, поскольку старые версии могут быть не совместимы с последними версиями ядра без патча. Если у вас установлены проприетарные видео драйверы, то серьёзной подумайте, прежде чем следовать инструкциям ниже. Также подготовьтесь, поищите инструкции, как решить проблему при загрузки дистрибутива в чёрный экран.
Следует быть особенно осторожным владельцам старых дистрибутивов — настоятельно рекомендуется обновлять ядро только на последних версиях ОС.
Ещё одна вполне вероятная проблема, с которой вы можете столкнуться если установите ядро самой последней версии — проблема с неразрешёнными зависимостями и как следствие невозможность использования менеджера пакетов apt для обновления и установки программ. Если вы столкнулись с ситуацией, когда после успешной установки нового ядра не получается обновить пакеты с помощью apt, то попробуйте устанавливать более ранние версии ядра, которые вам подходят, а версии, вызывающие проблемы с зависимостями, удаляйте. Помните, что невозможно удалить ядро с которым вы загрузились — перед удалением загрузите компьютер с любой другой версией ядра.
mainline — репозиторий ядер Ubuntu
Для Ubuntu имеется репозиторий скомпилированных ядер mainline всех версий, в том числе самых последних, поэтому установка не вызывает особых сложностей — компилировать ядро Linux не нужно. Более того, имеются инструменты, в том числе с графическим интерфейсом для установки любых ядер.
На самом деле, если ядра уже скомпилированы, то достаточно скачать из одной папки с сервера файлы следующего вида:
И установить их командой:
Но процесс можно упростить ещё больше, используя утилиты для работы с ядрами.
mainline (продолжение бесплатной версии ukuu) — программа с графическим и консольным интерфейсом для обновления ядра
Если вы предпочитаете графический интерфейс, то используйте Mainline.
Чтобы установить программу выполните следующие команды:
Для запуска графического интерфейса выполните:
Для запуска консольной версии выполните:
Использование графической версии не должно вызвать затруднений. При запуске будет получена информация о доступных ядрах, вы можете выбрать любое ядро и установить его, просто нажав на кнопку «Установка». Дополнительно доступны такие действия как удаление ядер и просмотр списков изменений для каждой версии ядра.
Использование консольной версии следующее:
Справка по опциям и командам:
(1) Строка версии должна браться из вывода —list
(2) Одна или более строк версий (разделённые запятыми) берутся из вывода —list
Перезагрузите компьютер, чтобы использовать новое ядро.
По умолчанию ваша система будет загружена с последним ядром, если вы хотите это изменить, то перейдите в дополнительные параметры загрузки
и выберите желаемую версию из установленных ядер.
Утилита ubuntu-mainline-kernel.sh
Последнюю версию ядра на Ubuntu и Linux Mint также можно установить с помощью утилиты командной строки ubuntu-mainline-kernel.sh.
Загружаем и устанавливаем скрипт ubuntu-mainline-kernel.sh:
Справка по ubuntu-mainline-kernel.sh
Пример установки последней версии ядра
Проверяем текущую версию ядра:
Ядро имеет версию 5.11.
Проверяем, какая версия ядра является последней:
Чтобы вывести список доступных для установки версий ядер выполните команду:
Например, мы хотим установить ядро версии v5.12.11, тогда команда следующая (префикс «v» указывать не надо):
Если вы хотите установить последнюю на данный момент версию, то запустите следующую команду:
Вам будет задан вопрос, хотите ли вы продолжить, введите «y»:
Программа завершила работу — чтобы изменения вступили в силу, требуется перезагрузка.
Опять проверяем версию ядра:
Как восстановить Linux после установки ядра
Если ваш компьютер загружается с чёрным экраном, зависает или что-то не работает после обновления ядра, перезагрузитесь и выберите Дополнительные параметры для вашего дистрибутива в меню GRUB:
Затем выберите предыдущую версию ядра и нажмите Enter:
Независимо от причины, вам необходимо загрузиться с предыдущей версией ядра, если вы хотите удалить последнее ядро. Это потому, что вы не можете удалить ядро, которое в настоящее время используется.
Если вы не видите меню GRUB2, нажмите и удерживайте клавишу Shift или несколько раз нажмите клавишу Esc (это может варьироваться в зависимости от загрузки BIOS или UEFI и от используемой вами версии Ubuntu/Linux Mint) при загрузке GRUB. Должно появиться меню Grub, позволяющее выбрать предыдущую версию ядра.
После загрузки предыдущего ядра вы можете удалить неисправное ядро. ubuntu-mainline-kernel.sh позволяет удалять ядра, установленные из PPA ядра Ubuntu.
С помощью ubuntu-mainline-kernel.sh вы можете удалить версию ядра, запустив:
Где ВЕРСИЯ — это версия ядра, например 5.14. Вы также можете эту утилиту с -u без указания версии, и в этом случае инструмент выведет список до 10 версий ядра и спросит вас, какую из них вы хотите удалить. Стоит отметить, что ubuntu-mainline-kernel.sh не будет показывать в этом списке официальные ядра Ubuntu.
Обновите настроки GRUB если это не было сделано автоматически: