Três maneiras de atualizar o kernel de um sistema CentOS para computadores industriais.
Durante o uso do CentOS, é inevitável atualizar o kernel, mas às vezes, devido a problemas de dependência na compilação do código-fonte, nem todos os programas são compatíveis com a versão mais recente do kernel. Portanto, a seguir, apresentaremos três maneiras de atualizar o kernel.
Observação:
Sobre os tipos de kernel:
O "ml" em kernel-ml é a abreviação de [mainline estável] em inglês, e a versão estável mais recente do mainline está listada em elrepo-kernel.
O "lt" em kernel-lt é a abreviação de [suporte de longo prazo] em inglês, e a versão de suporte de longo prazo está listada em elrepo-kernel.
Verifique a versão do kernel
uname -r

Índice
1. Instalação do Yum
1. Importe a fonte do repositório.
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. Veja os pacotes instaláveis
yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep
kernel-ml.x86_64
3. Selecione a versão ML ou LT para instalar.
Se nenhuma versão for especificada, a versão mais recente será instalada por padrão.
Instalar versão ML
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
Instale a versão LT, selecione esta opção para todos os K8S.
yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y
4. Verifique a sequência de inicialização do kernel atual.
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
5. Modifique o item de inicialização padrão
xxx é o número de série, que especifica o x-ésimo item na lista de inicialização como o item de inicialização, e x começa a contar a partir de 0.
grub2-set-default xxxx
Por exemplo, se você quiser configurá-lo para inicializar com o kernel 4.4
Em seguida, digite diretamente "grub2-set-default 0" e você poderá iniciar a partir da versão 4.4 na próxima vez que iniciar o sistema.
Verifique a sequência de inicialização do 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)
Defina o número de sequência de inicialização.
[root@localhost ~] grub2-set-default 0
Reinício
reinício
Verifique a versão do kernel
uname -r
2. Instalação de RPM
Verifique a versão do kernel
uname -r
1. Encontre a versão
Como o repositório ELRepo contém a versão mais recente, a versão antiga do kernel só pode ser baixada manualmente.
Encontre a versão histórica do rpm do kernel:
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
2. Você precisa baixar três tipos 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. Instale o 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
ou
#Instale tudo com um clique
rpm -Uvh *.rpm
4. Confirme a versão do kernel instalada.
[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. Configurar inicialização
Verifique a ordem de inicialização
[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)
Defina a ordem de inicialização
[root@localhost ~]# grub2-set-default 0
Reinicie para que as alterações tenham efeito.
[root@localhost ~]# reiniciar
3. Instalação do código-fonte
1. Instale o pacote de software principal.
yum install -y gcc make git ctags ncurses-devel openssl-devel
yum install -y bison flex elfutils-libelf-devel bc
2. Crie um diretório de compilação do kernel
Use o diretório kernelbuild em home
mkdir ~/kernelbuild
3. Obtenha o código-fonte do kernel.
Site espelho da Universidade de Tsinghua:
https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/?C=M&O=D
Outro endereço para download do pacote de instalação do código-fonte:
https://mirrors.edge.kernel.org/pub/linux/kernel/
linux-4.xx.xx.tar.xz
linux-4.xx.xx.tar.gz
Ambos os formatos são aceitáveis, o tar.xz tem uma taxa de compressão maior e um tamanho de arquivo menor.
Faça o download online: wget https://mirror.tuna.tsinghua.edu.cn/kernel/v4.x/linux-4.17.11.tar.xz
4. Descompacte o código do kernel.
Após descompactar o arquivo, acesse o diretório de origem:
tar -xvJf linux-4.17.11.tar.xz
Para garantir que a árvore do kernel esteja completamente limpa, entre no diretório do kernel e execute o comando make mrproper:
cd linux-4.17.11
faça limpo e faça o senhor ficar bem
5. Configuração do kernel
Copie o arquivo de configuração atual do kernel.
O arquivo de configuração do kernel do meu ambiente atual é o config-3.10.0-862.el7.x86_64. Modifique-o de acordo com a sua situação.
cp /boot/config-3.10.0-862.el7.x86_64 .config
Configuração avançada
"y" está ativado, "n" está desativado e "m" é ativado quando necessário.
make menuconfig: antiga interface ncurses, substituída por nconfig
make nconfig: Nova interface de linha de comando ncurses
6. Compile e instale
Compile o kernel
Se você tiver uma máquina quad-core, x pode ser 8.
make -jx
Instale o kernel
Após compilar o kernel, instale: Aviso: A partir daqui, você precisa de privilégios de root para executar comandos; caso contrário, a operação falhará.
make modules_install install
7. Configurar a startup
Verifique a sequência de inicialização
[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)
Defina a ordem de inicialização
[root@localhost ~]# grub2-set-default 0
Reinicie para que as alterações tenham efeito.
[root@localhost ~]# reiniciar
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 para montagem em rack
Computação Embarcada
Computadores portáteis industriais
Tablets robustos
Laptop robusto
PC de painel industrial
Resistente e portátil
PC Industrial Advantech