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

Съдържание
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. Инсталиране на 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 ~]# рестартиране
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.

Компютър за монтаж в шкаф
Вградени изчисления
Индустриални преносими компютри
Здрави таблети
Здрав лаптоп
Индустриален панелен компютър
Здрав ръчен
Индустриален компютър Advantech