Меню Рубрики

Сборка ядра linux centos

Обновление ядра CentOS

Ядро операционной системы является основным ее элементом — оно выполняет функции распределения ресурсов и предоставления интерфейса для взаимодействия с оборудованием. Из соображений безопасности или обеспечения корректной работы современного оборудования может возникнуть необходимость обновления ядра.

1. Проверка текущей версии ядра

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

* в данном примере установлено ядро версии 3.10.0.

2. Установка ядра

Перед обновлением ядра, необходимо обновить саму систему:

После стоит перезагрузить систему:

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

С помощью yum

Самый быстрый и безопасный способ обновить ядро CentOS — воспользоваться автоматической установкой из репозитория. Минусом тут является то, что можно установить только ту версию, которая имеется в наличие в данном репозитории.

Последняя версии ядра для CentOS находится в репозитории ELRepo (не путать с EPEL). Сначала устанавливаем его.

Переходим на веб-страницу elrepo.org и копируем ссылку на последнюю версию репозитория для нашей версии операционной системы, например:

Импортируем ключ репозитория:

rpm —import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

Воспользовавшись ссылкой, устанавливаем сам репозиторий:

yum install https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

* список установленных репозиториев можно посмотреть командой yum repolist.

Теперь можно установить ядро:

yum —enablerepo=elrepo-kernel install kernel-ml

Ручное обновление

Чаще всего, администратор пользуется встроенными в сборку Linux инструментами (как описано выше) — это безопаснее и проще. Однако, если нужной версии ядра нет в репозитории или мы хотим установить тестовую версию, необходима ручная установка.

Ручная установка неадаптированного для определенной сборки Linux ядра — потенциальный риск для системы. Обновление стоит проводить сначала в тестовой среде, а также выполнить резервное копирование всех важных данных.

Для начала переходим на сайт kernel.org и копируем ссылку на нужную версию ядра Linux:

* в данном примере мы скопировали ссылку на нестабильную версию ядра 5.0.

Воспользовавшись ссылкой, скачиваем ядро на компьютер с Linux:

* если система вернет ошибку, нужно установить wget — yum install wget.

Распаковываем скачанный архив:

tar -xvf linux-5.0-rc8.tar.gz -C /usr/src

* в данном примере мы распаковываем архив linux-5.0-rc8.tar.gz в каталог /usr/src.

Переходим в каталог, куда распаковали исходник ядра:

Устанавливаем инструменты для компиляции пакетов:

yum groupinstall «Development Tools»

yum install ncurses-devel openssl-devel bc

Создаем свою конфигурацию для ядра:

Или используем текущую конфигурацию для ядра:

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

* процедура может занять много времени.

После устанавливаем ядро и модули:

make modules_install install

3. Применение нового ядра

Чтобы система грузилась с использованием нового ядра, необходимо внести изменения в GRUB:

* данной настройкой мы говорим загрузчику использовать первое ядро для загрузки (первым идет последнее по версии ядро).

Применяем настройки для grub:

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

Можно перезагружать компьютер:

После загрузки проверяем текущую версию ядра:

Если система не загружается после обновления ядра

При установке новой версии ядра, старые версии тоже сохраняются и их можно выбрать при загрузке CentOS.

Если управление осуществляется удаленно по SSH, мы должны подключить монитор к компьютеру и включить его. В процессе загрузки выскочит окно со списком систем:

Выбираем вариант загрузки с предыдущей версией ядра.

Возможные ошибки

1. Фатальная ошибка: : Нет такого файла или каталога.

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

Решение: необходимо воспользоваться поисковиком, чтобы определить, какой именно пакет необходим для продолжения установки и воспользоваться командой yum install для его установки.

2. [ ] Ошибка 127

Например: [include/generated/timeconst.h] Ошибка 127

Причина: как и с предыдущей ошибкой, в системе не установлен один из пакетов, содержащий необходимые библиотеки.

Решение: аналогично предыдущему примеру решения проблемы, необходимо воспользоваться поисковиком, чтобы определить, какой именно пакет необходим для продолжения установки и воспользоваться командой yum install для его установки.

Источник

Как скомпилировать ядро Linux на CentOS 7

Запуск настраиваемого скомпилированного ядра Linux всегда полезно, особенно если вы хотите включить или отключить определенные функции ядра, которые недоступны в ядрах, поставляемых по умолчанию.

В этой статье я расскажу, как скомпилировать и использовать последнее ядро Linux из исходников в дистрибутиве CentOS 7 (здесь приведены инструкции по RHEL и Fedora).

Установка необходимых пакетов для компиляции ядра

Во-первых, убедитесь, что вы обновили свои репозитории программного обеспечения, установили инструменты для разработки, необходимые для компиляции ядра, и установите библиотеку ncurses, используя следующую команду yum.

Скомпилировать и установить ядро в CentOS 7

Загрузите последние исходники ядра 4.17 с помощью команды wget в каталог /usr/src/ или вы также можете загрузить последнее ядро, перейдя на kernel.org.

Извлеките архивные файлы и смените каталоги, используя следующие команды.

Настроить ядро в CentOS 7

Ядро должно быть правильно настроено со следующими параметрами конфигурации в среде CentOS 7.

Я настоятельно рекомендую вам скопировать текущую конфигурацию ядра (.config) из каталога /boot в новый каталог linux-4.17.11.

Теперь запустите команду make menuconfig, чтобы настроить ядро Linux.

После выполнения команды внизу появляется всплывающее окно со всеми меню.

Здесь вы можете включить или отключить некоторые функции ядра.

Если вы не знакомы с этими меню, просто нажмите клавишу ESC, чтобы выйти.

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

Скомпилировать ядро в CentOS 7

Перед началом компиляции ядра убедитесь, что ваша система имеет более 25 ГБ свободного места в файловой системе.

Чтобы подтвердить это, вы можете проверить свободное пространство файловой системы, используя команду df, как показано.

Теперь скомпилируйте и установите ядро и модули, используя следующие команды (это может занять несколько часов).

Процесс компиляции помещает файлы в каталог /boot, а также создает новую запись ядра в файле grub.conf.

После завершения компиляции перезагрузите систему и проверьте вновь установленное ядро.

Источник

Обновление ядра Centos 7

Ядро операционной системы — это один из самых важных компонентов Linux, поскольку именно там выполняются все самые важные операции, такие как, управление памятью, управление процессами, работа с сетью на самом низком уровне и управление аппаратным обеспечением. Если в ядре есть какая-либо уязвимость, то это открывает злоумышленникам полный доступ к системе.

Вот почему очень важно вовремя обновлять ядро. Также в новых версиях, обычно, добавляются новые функции, улучшаются драйвера и многое другое. Кроме того, новое ядро позволит вам использовать все самые новые технологии. В этой статье мы рассмотрим как выполняется обновление ядра в CentOS несколькими способами.

Проверка версии ядра

Вместе с дистрибутивом устанавливается и определенная версия ядра. Перед тем как перейти к обновлению нужно сначала узнать какая версия установлена сейчас и нужно ли ее обновлять. Для этого есть команда uname:

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

Дальше откройте официальный сайт ядра kernel.org. Здесь вы можете видеть, что самая последняя на данный момент версия — это 4.10.8.

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

Обновление ядра CentOS

В большинстве дистрибутивов, и в том числе в CentOS предусмотрено обновление пакетов с помощью встроенного пакетного менеджера, например, yum или apt. Но тем не менее, такой способ позволяет обновить ядро CentOS только до последней версии, которая есть в репозитории. Естественно, что там еще нет самой свежей версии, которая есть на kernel.org.

В CentOS можно использовать репозиторий ELRepo, с помощью него можно выполнить обновление ядра CentOS 7 до самой новой версии. Сначала нужно подключить репозиторий к системе:

sudo rpm —import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
$ sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

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

sudo yum —disablerepo=»*» —enablerepo=»elrepo-kernel» list available

И так, сейчас мы видим, что доступна версия 4.10.8, а это самая новая стабильная версия, исходники которой есть на kernel.org. Дальше осталось установить версию ядра из этого репозитория:

sudo yum —enablerepo=elrepo-kernel install kernel-ml

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

Настройка загрузчика Grub

Для того чтобы новое ядро загружалось автоматически, необходимо поменять несколько параметров запуска дистрибутива в загрузчике Grub. Откройте конфигурационный файл /etc/defaul/grub и измените значение переменной GRUB_DEFAULT на 0:

Это означает, что по умолчанию будет использоваться первое ядро , которое находится в списке Grub. А первым обычно размещается именно самое новое. Чтобы обновить конфигурацию выполните команду:

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

Осталось еще раз перезагрузиться чтобы убедиться, что теперь все по умолчанию выбирается нужное ядро. Теперь готово, обновление ядра CentOS 7 до самой новой версии завершено.

Выводы

Из этой статьи вы узнали как легко обновить ядро CentOS до самой последней версии. Но есть еще один метод, который мы здесь не рассматривали. Вы можете собрать ядро из исходного кода. Такой метод подходит не только для CentOS, но и для других дистрибутивов. С помощью него вы можете очень тонко настроить параметры ядра, а также внести различные оптимизации для улучшения работы системы. Но с такой же легкостью вы можете сломать свою систему.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Сборка собственного дистрибутива linux
  • Сборка программ под linux
  • Сборка компьютера для linux
  • Сборка игр для linux
  • Сборка веб сервера на linux