Trois façons de mettre à niveau le noyau d'un système CentOS pour ordinateur industriel
Lors de l'utilisation de CentOS, la mise à jour du noyau est inévitable, mais parfois, en raison de problèmes de dépendances de compilation du code source, tous les programmes ne prennent pas en charge la dernière version du noyau. Nous allons donc présenter ci-dessous trois méthodes pour mettre à jour le noyau.
Note:
À propos des types de noyaux :
Le ml dans kernel-ml est l'abréviation de [mainline stable] en anglais, et la dernière version stable mainline est répertoriée dans elrepo-kernel.
Le « lt » dans kernel-lt est l'abréviation de [long term support] en anglais, et la version de support à long terme est répertoriée dans elrepo-kernel.
Vérifiez la version du noyau
uname -r

Table des matières
1. Installation de Yum
1. Importer la source du dépôt
rpm --import 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. Afficher les packages installables
yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep
noyau-ml.x86_64
3. Sélectionnez la version ML ou LT à installer
Si aucune version n'est spécifiée, la dernière version est installée par défaut.
Installer la version ML
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
Installez la version LT, sélectionnez-la pour tous les systèmes Kubernetes.
yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y
4. Vérifiez la séquence de démarrage du noyau actuel
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
5. Modifier l'élément de démarrage par défaut
xxx est le numéro de série, qui désigne le xème élément de la liste de démarrage comme élément de démarrage, et x commence à compter à partir de 0.
grub2-set-default xxxx
Par exemple, si vous souhaitez le configurer pour démarrer avec le noyau 4.4
Saisissez ensuite directement « grub2-set-default 0 », et vous pourrez redémarrer à partir de la version 4.4 lors de votre prochain démarrage.
Vérifiez la séquence de démarrage du noyau
[root@localhost ~] awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.4.179-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-6d4c599606814867814f1a8eec7bfd1e) 7 (Core)
Définir le numéro de séquence de démarrage
[root@localhost ~] grub2-set-default 0
Redémarrage
redémarrage
Vérifiez la version du noyau
uname -r
2. Installation RPM
Vérifiez la version du noyau
uname -r
1. Trouvez la version
Étant donné que la source ELRepo est la version la plus récente, l'ancienne version du noyau ne peut être téléchargée que manuellement.
Trouvez la version historique du noyau rpm :
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
2. Vous devez télécharger trois types de 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
headers-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. Installez le noyau
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
ou
#Installer tout en un clic
rpm -Uvh *.rpm
4. Vérifiez la version du noyau installée
[root@localhost ~]# rpm -qa | grep kernel
en-têtes du noyau 3.10.0-1160.15.2.el7.x86_64
noyau-devel-3.10.0-1160.49.1.el7.x86_64
kernel-tools-libs-3.10.0-957.el7.x86_64
noyau-3.10.0-957.el7.x86_64
noyau-ml-4.9.9-1.el7.elrepo.x86_64
noyau-lt-4.4.215-1.el7.elrepo.x86_64
kernel-tools-3.10.0-957.el7.x86_64
noyau-lt-devel-4.4.215-1.el7.elrepo.x86_64
5. Configurer le démarrage
Vérifier l'ordre de démarrage
[root@localhost ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.4.215-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (4.9.9-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-b91f945269084aa98e8257311ee713c5) 7 (Core)
Définir l'ordre de démarrage
[root@localhost ~]# grub2-set-default 0
Redémarrez pour que cela prenne effet.
[root@localhost ~]# redémarrage
3. Installation du code source
1. Installez le progiciel de base
yum install -y gcc make git ctags ncurses-devel openssl-devel
yum install -y bison flex elfutils-libelf-devel bc
2. Créez un répertoire de compilation du noyau
Utilisez le répertoire kernelbuild sous home
mkdir ~/kernelbuild
3. Obtenez le code source du noyau
Site miroir de l'Université Tsinghua :
https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/?C=M&O=D
Autre adresse de téléchargement du package d'installation du code source :
https://mirrors.edge.kernel.org/pub/linux/kernel/
linux-4.xx.xx.tar.xz
linux-4.xx.xx.tar.gz
Les deux formats sont acceptables, mais le format tar.xz offre un taux de compression plus élevé et une taille de fichier plus petite.
Téléchargement en ligne : wget https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.17.11.tar.xz
4. Décompressez le code du noyau
Après avoir décompressé le fichier, accédez au répertoire source :
tar -xvJf linux-4.17.11.tar.xz
Pour garantir que l'arborescence du noyau est parfaitement propre, accédez au répertoire du noyau et exécutez la commande make mrproper :
cd linux-4.17.11
faire propre et faire mrproper
5. Configuration du noyau
Copiez le fichier de configuration du noyau actuel
Le fichier de configuration du noyau de mon environnement actuel est config-3.10.0-862.el7.x86_64 ; modifiez-le en fonction de votre situation.
cp /boot/config-3.10.0-862.el7.x86_64 .config
Configuration avancée
y est activé, n est désactivé et m est activé en cas de besoin.
make menuconfig : ancienne interface ncurses, remplacée par nconfig
make nconfig : Nouvelle interface en ligne de commande ncurses
6. Compiler et installer
Compiler le noyau
Si vous disposez d'une machine à quatre cœurs, x peut être égal à 8.
faire -jx
Installer le noyau
Après avoir compilé le noyau, installez : Attention : à partir de maintenant, vous devez disposer des privilèges root pour exécuter des commandes, sinon cela échouera.
faire modules_install installer
7. Mise en place du démarrage
Vérifiez la séquence de démarrage
[root@localhost ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (4.17.11-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (4.9.9-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-b91f945269084aa98e8257311ee713c5) 7 (Core)
Définir l'ordre de démarrage
[root@localhost ~]# grub2-set-default 0
Redémarrez pour que cela prenne effet.
[root@localhost ~]# redémarrage
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.

PC rackable
Informatique embarquée
Ordinateurs portables industriels
Tablettes durcies
Ordinateur portable robuste
PC industriel à panneau
Appareil portable robuste
PC industriel Advantech