Tre modi per aggiornare il kernel del sistema CentOS per computer industriali
Durante l'utilizzo di CentOS, è inevitabile aggiornare il kernel, ma a volte, a causa di problemi di dipendenza nella compilazione del codice sorgente, non tutti i programmi supportano l'ultima versione del kernel. Pertanto, di seguito illustreremo tre metodi per aggiornare il kernel.
Nota:
Informazioni sui tipi di kernel:
La sigla ml in kernel-ml è l'abbreviazione di [mainline stable] in inglese, e l'ultima versione stabile della linea principale è elencata in elrepo-kernel.
La sigla lt in kernel-lt è l'abbreviazione di [supporto a lungo termine] in inglese, e la versione con supporto a lungo termine è elencata in elrepo-kernel.
Verifica la versione del kernel
uname -r

Sommario
1. Installazione di yum
1. Importa il codice sorgente del repository
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. Visualizza i pacchetti installabili
yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep
kernel-ml.x86_64
3. Selezionare la versione ML o LT da installare
Se non viene specificata alcuna versione, viene installata per impostazione predefinita la versione più recente.
Installa la versione ML
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
Installa la versione LT, selezionala per tutti i K8S
yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y
4. Verificare la sequenza di avvio del kernel corrente
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
5. Modificare l'elemento di avvio predefinito
xxx è il numero di serie, che specifica l'x-esimo elemento nell'elenco di avvio come elemento di avvio, e x inizia a contare da 0
grub2-set-default xxxx
Ad esempio, se si desidera impostarlo per l'avvio con kernel 4.4
quindi inserisci direttamente "grub2-set-default 0", e potrai ripartire da 4.4 la prossima volta che avvii
Verifica la sequenza di avvio del kernel
[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)
Imposta il numero di sequenza di avvio
[root@localhost ~] grub2-set-default 0
Riavviare
riavviare
Verifica la versione del kernel
uname -r
2. Installazione RPM
Verifica la versione del kernel
uname -r
1. Trova la versione
Poiché il codice sorgente di ELRepo è la versione più recente, la vecchia versione del kernel può essere scaricata solo manualmente.
Trova la versione storica del pacchetto kernel rpm:
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
2. Devi scaricare tre tipi di 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. Installa il kernel
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
O
#Installa tutto con un clic
rpm -Uvh *.rpm
4. Confermare la versione del kernel installata
[root@localhost ~]# rpm -qa | grep kernel
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. Imposta l'avvio
Verifica l'ordine di avvio
[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)
Imposta l'ordine di avvio
[root@localhost ~]# grub2-set-default 0
Riavvia il sistema affinché le modifiche abbiano effetto.
[root@localhost ~]# riavvia
3. Installazione del codice sorgente
1. Installare il pacchetto software principale
yum install -y gcc make git ctags ncurses-devel openssl-devel
yum install -y bison flex elfutils-libelf-devel bc
2. Creare una directory di compilazione del kernel
Utilizzare la directory kernelbuild nella directory home
mkdir ~/kernelbuild
3. Ottieni il codice sorgente del kernel
Sito mirror dell'Università di Tsinghua:
https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/?C=M&O=D
Altri indirizzi per il download del pacchetto di installazione del codice sorgente:
https://mirrors.edge.kernel.org/pub/linux/kernel/
linux-4.xx.xx.tar.xz
linux-4.xx.xx.tar.gz
Entrambi i formati sono accettabili, ma tar.xz ha un tasso di compressione più elevato e una dimensione del file inferiore.
Scarica online: wget https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.17.11.tar.xz
4. Decomprimi il codice del kernel
Dopo averlo decompresso, accedi alla directory di origine:
tar -xvJf linux-4.17.11.tar.xz
Per garantire che l'albero del kernel sia assolutamente pulito, accedi alla directory del kernel ed esegui il comando make mrproper:
cd linux-4.17.11
rendere pulito e rendere più appropriato
5. Configurazione del kernel
Copiare il file di configurazione del kernel corrente
config-3.10.0-862.el7.x86_64 è il file di configurazione del kernel del mio ambiente attuale; modificalo in base alla situazione reale.
cp /boot/config-3.10.0-862.el7.x86_64 .config
Configurazione avanzata
y è abilitato, n è disabilitato e m è abilitato quando necessario.
make menuconfig: vecchia interfaccia ncurses, sostituita da nconfig
make nconfig: Nuova interfaccia ncurses da riga di comando
6. Compilare e installare
Compila il kernel
Se hai una macchina quad-core, x può essere 8
make -jx
Installa il kernel
Dopo aver compilato il kernel, installa: Attenzione: da qui in poi, sono necessari i privilegi di root per eseguire i comandi, altrimenti l'operazione fallirà.
eseguire l'installazione dei moduli
7. Configurare l'avvio
Verificare la sequenza di avvio
[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)
Imposta l'ordine di avvio
[root@localhost ~]# grub2-set-default 0
Riavvia il sistema affinché le modifiche abbiano effetto.
[root@localhost ~]# riavvia
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 montabile su rack
Informatica embedded
Computer portatili industriali
Tablet robusti
Laptop robusto
PC industriale a pannello
Robusto palmare
PC industriale Advantech