Leave Your Message
*Name Cannot be empty!
* Enter product details such as size, color,materials etc. and other specific requirements to receive an accurate quote. Cannot be empty
Три начина за надграждане на ядрото на индустриална компютърна система CentOS
Блог

Три начина за надграждане на ядрото на индустриална компютърна система CentOS

2024-10-17 15:08:44

По време на използването на CentOS е неизбежно да се надгражда ядрото, но понякога поради проблеми със зависимостта при компилация на изходния код, не всички програми поддържат най-новата версия на ядрото, така че по-долу ще бъдат представени три начина за надграждане на ядрото.

Забележка:
Относно типовете ядра:
ml в kernel-ml е съкращението на [mainline stable] на английски, а последната стабилна версия на mainline е посочена в elrepo-kernel.
lt в kernel-lt е съкращението на [long term support] на английски, а версията за дългосрочна поддръжка е посочена в elrepo-kernel.
Проверете версията на ядрото
uname -r

Изображение 1
Съдържание

1. инсталация на yum

1. Импортирайте изходния код на хранилището
rpm --импорт https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
2. Преглед на инсталируемите пакети
yum --enablerepo="elrepo-kernel" списък --showduplicates | sort -r | grep
kernel-ml.x86_64
3. Изберете ML или LT версия за инсталиране
Ако не е посочена версия, по подразбиране се инсталира най-новата версия.
Инсталиране на ML версия
yum --enablerepo=elrepo-kernel инсталиране на kernel-ml-devel kernel-ml -y
Инсталирайте LT версията, изберете това за всички K8S
yum --enablerepo=elrepo-kernel инсталиране на kernel-lt-devel kernel-lt -y
4. Проверете текущата последователност на зареждане на ядрото
awk -F\' '$1=="запис в менюто " {print $2}' /etc/grub2.cfg
5. Променете елемента за зареждане по подразбиране
xxx е серийният номер, който определя x-тия елемент в списъка за зареждане като елемент за зареждане, а x започва да брои от 0.
grub2-set-по подразбиране xxxx
Например, ако искате да го настроите да се стартира с ядро ​​4.4
след това въведете директно "grub2-set-default 0" и можете да започнете от версия 4.4 следващия път, когато стартирате
Проверете последователността на зареждане на ядрото
[root@localhost ~] awk -F\' '$1=="запис в менюто " {print $2}' /etc/grub2.cfg
CentOS Linux (4.4.179-1.el7.elrepo.x86_64) 7 (ядро)
CentOS Linux (3.10.0-693.el7.x86_64) 7 (ядро)
CentOS Linux (0-rescue-6d4c599606814867814f1a8eec7bfd1e) 7 (Core)
Задайте номера на последователността за зареждане
[root@localhost ~] grub2-set-default 0
Рестартиране
рестартиране
Проверете версията на ядрото
uname -r

Изображение 2

2. Инсталиране на RPM

Проверете версията на ядрото
uname -r
1. Намерете версията
Тъй като изходният код на ELRepo е най-новата версия, старата версия на ядрото може да бъде изтеглена само ръчно.
Намерете историческата версия на rpm на ядрото:
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
2. Трябва да изтеглите три вида rpm файлове
wget
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt
devel-4.4.215-1.el7.elrepo.x86_64.rpm
wget
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt
заглавки-4.4.215-1.el7.elrepo.x86_64.rpm
wget
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-
4.4.215-1.el7.elrepo.x86_64.rpm
3. Инсталирайте ядрото
rpm -ivh kernel-lt-4.4.215-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-devel-4.4.215-1.el7.elrepo.x86_64.rpm
или
#Инсталирайте всичко с едно кликване
об/мин -Uvh *.об/мин
4. Потвърдете инсталираната версия на ядрото
[root@localhost ~]# rpm -qa | grep ядро
kernel-headers-3.10.0-1160.15.2.el7.x86_64
kernel-devel-3.10.0-1160.49.1.el7.x86_64
kernel-tools-libs-3.10.0-957.el7.x86_64
kernel-3.10.0-957.el7.x86_64
kernel-ml-4.9.9-1.el7.elrepo.x86_64
kernel-lt-4.4.215-1.el7.elrepo.x86_64
kernel-tools-3.10.0-957.el7.x86_64
kernel-lt-devel-4.4.215-1.el7.elrepo.x86_64

5. Задайте стартиране
Проверете реда на стартиране
[root@localhost ~]# awk -F\' '$1=="запис в менюто " {print $2}' /etc/grub2.cfg
CentOS Linux (4.4.215-1.el7.elrepo.x86_64) 7 (ядро)
CentOS Linux (4.9.9-1.el7.elrepo.x86_64) 7 (ядро)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (ядро)
CentOS Linux (0-rescue-b91f945269084aa98e8257311ee713c5) 7 (Core)
Задайте реда на зареждане
[root@localhost ~]# grub2-set-default 0
Рестартирайте, за да влезе в сила
[root@localhost ~]# рестартиране

3. Инсталиране на изходния код

1. Инсталирайте основния софтуерен пакет
yum install -y gcc make git ctags ncurses-devel openssl-devel
yum install -y bison flex elfutils-libelf-devel bc
2. Създайте директория за компилация на ядрото
Използвайте директорията kernelbuild в home
mkdir ~/kernelbuild
3. Вземете изходния код на ядрото
Огледален сайт на университета Цинхуа:
https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/?C=M&O=D
Адрес за изтегляне на друг инсталационен пакет с изходен код:
https://mirrors.edge.kernel.org/pub/linux/kernel/
linux-4.xx.xx.tar.xz
linux-4.xx.xx.tar.gz
И двата формата са приемливи, tar.xz има по-висока степен на компресия и по-малък размер на файла.
Изтеглете онлайн: wget https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.17.11.tar.xz
4. Разархивирайте кода на ядрото
След като го разархивирате, въведете директорията с изходния код:
tar -xvJf linux-4.17.11.tar.xz
За да сте сигурни, че дървото на ядрото е абсолютно чисто, влезте в директорията на ядрото и изпълнете командата make mrproper:
cd linux-4.17.11
направете чисто и направете правилно

5. Конфигурация на ядрото
Копирайте текущия конфигурационен файл на ядрото
config-3.10.0-862.el7.x86_64 е конфигурационният файл на ядрото на текущата ми среда, променете го според реалната ситуация.
cp /boot/config-3.10.0-862.el7.x86_64 .config
Разширена конфигурация
y е активирано, n е деактивирано и m е активирано, когато е необходимо.
make menuconfig: старият интерфейс на ncurses, заменен от nconfig
make nconfig: Нов интерфейс на командния ред на ncurses
6. Компилиране и инсталиране
Компилирайте ядрото
Ако имате четириядрена машина, x може да бъде 8
направи -jx
Инсталирайте ядрото
След компилиране на ядрото, инсталирайте: Внимание: Оттук нататък се нуждаете от root права, за да изпълнявате команди, в противен случай ще се провали.
направете инсталирането на modules_install
7. Настройте стартирането
Проверете последователността на стартиране
[root@localhost ~]# awk -F\' '$1=="запис в менюто " {print $2}' /etc/grub2.cfg
CentOS Linux (4.17.11-1.el7.elrepo.x86_64) 7 (ядро)
CentOS Linux (4.9.9-1.el7.elrepo.x86_64) 7 (ядро)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (ядро)
CentOS Linux (0-rescue-b91f945269084aa98e8257311ee713c5) 7 (Core)
Задаване на ред на зареждане
[root@localhost ~]# grub2-set-default 0
Рестартирайте, за да влезе в сила
[root@localhost ~]# рестартиране


Свързани продукти

01

LET'S TALK ABOUT YOUR PROJECTS

  • sinsmarttech@gmail.com
  • 3F, Block A, Future Research & Innovation Park, Yuhang District, Hangzhou, Zhejiang, China

Our experts will solve them in no time.