GNU/Linux >> Linux Esercitazione >  >> Linux

Come aggiornare il kernel Linux su varie distribuzioni [Tutorial]

Un kernel è il cuore di qualsiasi sistema operativo. Prima di iniziare a chiamare Linux un sistema operativo, è necessario conoscere il concetto di base e la storia della nascita di Linux. Linux non è un sistema operativo; principalmente, Linux è un kernel. Ora, impariamo cos'è un kernel! Un kernel è un programma che interagisce tra l'hardware e il software. Quando inserisci un'unità flash nel tuo sistema, il kernel rileva che hai inserito una pen drive. Poiché Linux è un kernel open source, puoi aggiornare, aggiornare e sostituire il kernel Linux se sai cosa stai facendo.

Che cos'è il kernel Linux?

La tua CPU, memoria e dispositivi comunicano con il sistema operativo attraverso il kernel. Dato che stiamo parlando del kernel Linux, devo menzionare che ci sono due modalità utente in ogni distribuzione Linux. Ottieni una modalità utente e una modalità kernel nelle distribuzioni Linux. In genere, non è possibile accedere alla modalità Kernel dall'interfaccia della modalità utente standard.

Sarebbe utile se avessi i privilegi di root per accedere alla modalità Kernel. Quando avvii il tuo PC, nessun software viene eseguito nel thread; il Kernel decide cosa fare e cosa non fare. Il Kernel decide quale applicazione riceverà quanta RAM e CPU.

Aggiorna il kernel su distribuzioni Linux

L'aggiornamento del kernel Linux non è facile; devi farlo solo se trovi errori di sicurezza o problemi di interazione hardware. Se il tuo sistema va in crash, potresti dover ripristinare l'intero sistema. Principalmente, le distribuzioni Linux vengono fornite con il kernel più aggiornato. L'aggiornamento del kernel Linux non elimina o rimuove il kernel precedente; è conservato all'interno del sistema.

Puoi eseguire il rollback al kernel precedente dal menu di ripristino del tuo sistema Linux. Tuttavia, potrebbe essere necessario aggiornare il kernel per problemi hardware o problemi di sicurezza. In questo post vedremo come aggiornare il kernel su varie distribuzioni Linux.

Conosci la versione corrente del kernel

Prima di iniziare ad aggiornare il tuo kernel Linux, devi conoscere la versione corrente del kernel in esecuzione sul tuo PC. Questo passaggio utilizzerà lo strumento Neofetch per controllare i dettagli del kernel Linux e altre informazioni di sistema.

Se non hai Neofetch installato nel tuo sistema, ti guiderò a installare Neofetch sulla tua distribuzione Linux. Usa la seguente riga di comando indicata di seguito sul tuo terminale Linux in base alla tua distribuzione.

  • Installa Neofetch su Debian / Ubuntu
sudo apt-get update
sudo apt-get install neofetch
  • Installa Neofetch su Fedora
sudo dnf install neofetch
  • Installa Neofetch su Red Hat / CentOS
sudo yum install neofetch
  • Installa Neofetch su Arch e Linux basato su Arch
pacman -S neofetch

Al termine dell'installazione, ora puoi controllare la versione del kernel eseguendo lo strumento Neofetch.

$ neofetch

1. Aggiorna il kernel su Ubuntu e Debian Linux

Varie distribuzioni Linux hanno metodi diversi per aggiornare il kernel Linux. Le distribuzioni Linux basate su Debian e Ubuntu hanno alcuni modi che puoi seguire per aggiornare e aggiornare il kernel. Qui mostrerò cinque metodi che puoi seguire per aggiornare il kernel sulla tua Debian Linux.

Metodo 1:utilizza dist upgrade per aggiornare il kernel

Potresti avere familiarità con i comandi di aggiornamento e aggiornamento di Linux. Puoi aggiornare il tuo repository di sistema tramite il tuo programma di aggiornamento del sistema e apt-update comando dalla shell del terminale. Ma l'aggiornamento di Dist è qualcosa di più dell'aggiornamento del sistema e dei pacchetti. Aggiorna il kernel, il software e altre dipendenze dei pacchetti. Puoi eseguire il seguente dist-upgrade comando per aggiornare il tuo kernel Linux.

sudo apt-get dist-upgrade

L'esecuzione di un comando di aggiornamento completo è sempre utile per completare il processo di aggiornamento.

sudo apt full-upgrade

Metodo 2:forza System Update Manager

Ogni sistema Linux ha un Update Manager integrato all'interno del sistema operativo. Potresti aver utilizzato il programma di aggiornamento per un milione di volte per aggiornare il tuo sistema. Ma sapevi che puoi forzare l'Update Manager ad aggiornare il tuo kernel Linux? È possibile eseguire la seguente riga di comando sulla shell del terminale per forzare il programma di aggiornamento a scaricare e installare il kernel Linux aggiornato. Potrebbe scaricare alcuni pacchetti aggiuntivi.

update-manager –d

Metodo 3:utilizza lo strumento Ukuu

Ukuu è uno strumento per distribuzioni Linux che può scaricare e installare l'ultimo kernel Linux dal repository ufficiale della tua distribuzione Linux. Per Ubuntu, scarica il kernel da https://kernel.ubuntu.com/.

Per aggiornare il tuo kernel Linux tramite lo strumento Ukuu, devi prima installare lo strumento Ukuu sul tuo sistema Linux. Usa il comando PPA per aggiungere i pacchetti Ukuu all'interno del tuo repository di sistema.

sudo apt-add-repository ppa:teejee2008/ppa

Ora aggiorna il tuo sistema e installa lo strumento Ukuu.

sudo apt-get update
sudo apt-get install ukuu

Una volta che Ukuu è installato nel tuo computer, puoi eseguire lo strumento Ukuu dalla shell del terminale con accesso root. Dopo aver avviato lo strumento Ukuu, troverai un elenco di kernel Linux disponibili per il tuo sistema operativo. Devi selezionare il kernel per installarlo nel tuo sistema.

sudo ukuu-gtk

Una volta aggiornato il kernel, puoi rimuovere lo strumento Ukuu dal tuo sistema. Potrei notare che, se riscontri problemi durante l'installazione dello strumento Ukuu, è possibile che il team di Ukuu non supporti più la tua versione di Ukuu. Tuttavia, è disponibile una versione a pagamento di Ukuu per Linux; puoi utilizzare la versione a pagamento per aggiornare il kernel su Ubuntu Linux.

Metodo 4:scarica e installa i kernel manualmente

In questo metodo, scaricheremo manualmente il kernel Linux dallo store ufficiale del kernel Ubuntu. Successivamente installeremo i pacchetti del kernel sul nostro sistema. Questo metodo è il metodo più pericoloso tra tutti i metodi che ho mostrato in precedenza. Effettua un backup di tutto il sistema e dei dati prima di inizializzare questo metodo.

Per scaricare il kernel Linux desiderato, devi andare all'archivio del kernel di Ubuntu. Scarica i seguenti pacchetti del kernel dalla linea principale del kernel. È necessario scaricare l'intestazione del kernel e la versione del kernel per creare un pacchetto completo. Per una migliore comprensione, puoi vedere i seguenti elenchi di pacchetti fittizi che devi scaricare.

linux-headers-VERSION-NUMBER_all.deb
linux-headers-VERSION-NUMBER_amd64.deb
linux-image-VERSION-NUMBER_amd64.deb
linux-image-extra-VERSION-NUMBER_amd64.deb

Una volta terminato il download, ora puoi aprire la tua directory per installare i pacchetti. Poiché tutti i pacchetti sono in .deb formato, puoi usare il dpkg strumento per installare i pacchetti. Per installare i pacchetti, utilizzare le seguenti righe di comando.

cd /path/to/directory/destination_path

Ora installa il .deb Pacchetti del kernel sul tuo sistema Debian.

sudo dpkg -i *.deb

Metodo 5:aggiorna il kernel Linux tramite lo strumento Mainline

Questo metodo vedrà come puoi aggiornare il tuo kernel Linux tramite lo strumento Mainline su Ubuntu e altre distribuzioni Debian. Innanzitutto, devi installare lo strumento Mainline sul tuo sistema. Utilizzare le seguenti righe di comando per aggiungere il repository principale al sistema. Quindi installa lo strumento Mainline.

sudo apt-add-repository -y ppa:cappelikan/ppa
sudo apt update
sudo apt install mainline

Ora usa il seguente wget comando per scaricare il kernel dalla directory principale del kernel di Ubuntu.

wget https://raw.githubusercontent.com/pimlie/ubuntu-mainline-kernel.sh/master/ubuntu-mainline-kernel.sh

Il download non richiederà molto più tempo. Al termine del download, esegui le seguenti righe di comando sulla shell del terminale per installare l'ultimo kernel su Ubuntu Linux.

sudo install ubuntu-mainline-kernel.sh /usr/local/bin/
ubuntu-mainline-kernel.sh -i

Ora riavvia il sistema e controlla le versioni del kernel disponibili per la tua distribuzione Linux. Puoi installare il kernel Linux desiderato dal programma di installazione del kernel. Per installare un nuovo kernel, seleziona il kernel e fai clic sul pulsante di installazione. Al termine dell'installazione, riavvia il dispositivo per caricare il nuovo kernel. Puoi controllare la versione del kernel per assicurarti che il tuo kernel sia aggiornato.

Puoi rimuovere lo strumento principale dal tuo sistema Ubuntu al termine dell'installazione del kernel. Utilizzare le seguenti righe di comando fornite di seguito per rimuovere lo strumento principale da Ubuntu Linux.

sudo add-apt-repository --remove ppa:cappelikan/ppa
sudo apt remove mainline

2. Aggiorna il kernel su Red Hat e Fedora Linux

Gli utenti della distribuzione Linux basata su Fedora, Red Hat e Red Hat possono aggiornare manualmente il proprio kernel Linux scaricando il kernel dal repository. Qui mostrerò il metodo generale per aggiornare il kernel. Gli utenti di Red Hat Linux e CentOS possono utilizzare il comando yum; d'altra parte, gli utenti Fedora devono sostituire yum con DNF comando. Il resto delle righe di comando sono le stesse per entrambe le distribuzioni.

Metodo 1. Installa una versione specifica del kernel

Gli utenti di Fedora e Red Hat Linux possono installare una versione specifica del kernel sul proprio sistema. Puoi eseguire la seguente riga di comando sul tuo terminale Linux per installare qualsiasi versione specifica del kernel sul tuo sistema Linux. Al termine dell'installazione, riavvia il sistema per ottenere il kernel desiderato sul tuo sistema Linux.

yum update kernel
yum install kernel-{version}

Metodo 2. Aggiorna il kernel su RHEL e Fedora Linux

Innanzitutto, devi installare lo strumento SysLinux sul tuo sistema. Principalmente SysLinux viene preinstallato su distribuzioni Fedora e Red Hat Linux. Se non riesci a trovare lo strumento sul tuo computer, puoi utilizzare il seguente comando per installarlo.

yum install syslinux

Quando aggiungi un kernel al tuo sistema, aggiunge il nome e la versione del kernel al menu di avvio. Ora, configura SysLinux per la directory del tuo boot loader. Usa il seguente syslinux comando per configurare la directory del caricatore di avvio. Nel mio caso, la directory di avvio è sdb2; devi sostituire la directory con la tua.

syslinux /dev/sdb2

Ora, crea una directory e un punto di montaggio per archiviare il kernel. Non dimenticare di montare il boot.iso file sul disco USB.

mkdir /mnt/isoboot /mnt/diskboot
mount -o loop boot.iso /mnt/isoboot
mount /dev/sdb2 /mnt/diskboot

Quindi usa il seguente cp comando per copiare i file sul disco USB e montare la partizione.

cp /mnt/isoboot/isolinux/* /mnt/diskboot

In questa fase, eseguiremo il seguente grep comando per eseguire i file del boot loader dal isolinux script di configurazione. Poi monteremo il isoboot file all'interno del diskboot directory. Qui stiamo usando lo strumento SysLinux per caricare il kernel insieme al menu del bootloader.

grep -v local /mnt/isoboot/isolinux/isolinux.cfg > /mnt/diskboot/syslinux.cfg
umount /mnt/isoboot /mnt/diskboot

Prima di riavviare il sistema, puoi controllare tutti gli elenchi dei kernel installati sul tuo sistema Red Hat Linux.

yum list installed "kernel-*"

Ora, usa il seguente rpm comando per scaricare la versione desiderata del kernel Linux. Dato che non stiamo rimuovendo il vecchio kernel, useremo il -i sintassi nella riga di comando. Se vuoi eliminare e installare il nuovo kernel, puoi usare -u invece del -i argomento.

rpm -ivh kernel-kernel_version.arch.rpm

Ora controlla se il nuovo kernel è inserito o meno nel menu di avvio.

ls /boot

Qui useremo il programma di installazione del pacchetto di avvio Dracut più popolare per Red Hat e Fedora Linux. Il Dracut creerà l'immagine del kernel.

dracut "initramfs-$(uname -r).img" $(uname -r)

Ora carica il file del kernel precedentemente scaricato sulla memoria di sistema. Usa il seguente lsinitrd comando per chiamare l'immagine initramfs.

lsinitrd /boot/initramfs-3.10.0-78.el7.x86_64.img

Ora esegui il seguente grep comando per inizializzare il processo di caricamento di GRUB. Si prega di gestire questo passaggio con attenzione per evitare errori di caricamento di grub.

grep initramfs /boot/grub2/grub.cfg

Ora controlla l'elenco dei boot loader.

ls -l /boot/

Quindi, utilizzare lo strumento Dracut per selezionare la versione del kernel dopo aver riavviato il sistema. Puoi forzare il tuo sistema a chiamare il nuovo kernel aggiornato. Il seguente comando può aiutarti a riconfigurare il kernel e le impostazioni di avvio.

dracut --kver kernel_version --force

Ora, usa le seguenti righe di comando fornite di seguito per creare un elenco ristretto dei pacchetti del kernel e delle versioni del kernel.

lsinitrd
lsinitrd | grep etc/
lsinitrd -f /etc/sysctl.conf

Quindi eseguire la seguente riga di comando sulla shell del terminale per definire la versione del kernel.

lsinitrd --kver 3.10.0-327.10.1.el7.x86_64 -f /etc/sysctl.conf

Infine, devi eseguire una piccola configurazione dello script per completare il processo di aggiornamento del kernel. Devi fare il default_kernel valore come kernel e update_default come vero dal sysconfig directory. Usa il /etc/sysconfig/kernel path sul tuo filesystem per trovare il file di configurazione. Ora modifica i valori come mostrato di seguito.

DEFAULTKERNEL=kernel
UPDATEDEFAULT=yes

Dopo che tutto è stato eseguito correttamente, ora puoi riavviare il tuo sistema Linux per iniziare con il kernel aggiornato.

3. Aggiorna il kernel su Arch e Linux basato su Arch

Arch e le distribuzioni Linux basate su Arch hanno una varietà dinamica di kernel Linux. Arch Linux aggiorna regolarmente la sua patch di sicurezza; ecco perché vedrai che su Arch Linux sono disponibili notevoli aggiornamenti del kernel e delle patch. Qui descriverò due metodi per aggiornare il kernel su Arch Linux. Innanzitutto, seguirò il metodo di aggiornamento e aggiornamento; più avanti, spiegherò il metodo manuale per aggiornare il kernel su Arch Linux.

Metodo 1:aggiorna e aggiorna il kernel

Manjaro e altre distribuzioni Arch Linux offrono spesso aggiornamenti e aggiornamenti del kernel tramite il gestore degli aggiornamenti convenzionale. Quando esegui il programma di aggiornamento del sistema sul sistema Linux, controlla gli ultimi kernel. Puoi usare il seguente pacman comando per controllare l'ultimo kernel sulle distribuzioni Arch Linux.

sudo pacman -Syu

Se trova un nuovo kernel, ti avviserà di scaricarlo e installarlo. Puoi scegliere se vuoi ottenere o meno l'ultimo kernel. Dopo aver accettato l'installazione, riavviare il sistema al termine dell'installazione. Quindi, puoi controllare la versione del kernel per assicurarti che sia aggiornato o meno.

sudo reboot

Metodo 2:aggiorna manualmente il kernel su Arch Linux

In questo metodo, vedremo come scaricare e installare manualmente l'ultimo kernel dal sito Web ufficiale del kernel Linux. Con questo metodo, puoi installare qualsiasi kernel disponibile e supportato su Arch Linux.

Innanzitutto, devi scaricare la versione desiderata del kernel dal sito web Kernel.org. Il file verrà scaricato come file compresso. Per impostazione predefinita, il file verrà memorizzato all'interno della directory Download sul tuo filesystem.

Ora, usa le seguenti righe di comando per aprire la directory Download e ottenere l'elenco dei file scaricati. Quindi utilizzare il comando tar per estrarre il file compresso. Dopo che il file è stato estratto, creerà automaticamente una cartella; puoi trovare i file del kernel all'interno della cartella.

cd Downloads/
ls
tar xvf linux-4.15.2.tar.xz

Ora, usa la seguente riga di comando per accedere alla directory del kernel. Nel mio caso, la directory del kernel si chiama linux-4.15.2 , potresti avere un nome diverso in base alla versione che hai scaricato.

cd linux-4.15.2

Esegui la seguente riga di comando per ottenere ncurses strumento di libreria all'interno della raccolta del compilatore GNU. Ti aiuterà in seguito a modificare gli script di configurazione del kernel Linux.

sudo pacman -S ncurses make gcc bc openssl

Ora, usa il seguente zcat comando per duplicare lo script di configurazione dal kernel Linux in esecuzione al kernel appena creato.

zcat /proc/config.gz > .config

Ora puoi inizializzare il processo di installazione del nuovo kernel all'interno del tuo sistema Linux.

make menuconfig

Esegui le seguenti righe di comando fornite di seguito per installare i moduli del kernel caricabili su Arch Linux.

make
sudo make modules_install

Ora usa il cp comando per copiare il vmlinuz file dal kernel corrente al nuovo kernel. Avrai bisogno del vmlinuz file per caricare il kernel all'avvio del sistema. Di seguito sono riportati due comandi, il primo è per gli utenti di sistemi a 32 o 86 bit e l'ultimo è per gli utenti di Linux a 64 bit.

sudo cp -v arch/x86/boot/bzImage /boot/vmlinuz-4.15.2
sudo cp -v arch/x86_64/boot/bzImage /boot/vmlinuz-4.15.2

Esegui il seguente mkinitcpio comando bash sul tuo Arch Linux per creare una directory temporanea nella RAM per memorizzare il initramfs file immagine.

sudo mkinitcpio -k 4.15.2-ARCH -g /boot/initramfs-4.15.2.img

Ora, usa il seguente cp comando per copiare la tabella del kernel nella directory del nuovo kernel.

sudo cp -v System.map /boot/System.map-4.15.2

Ora devi creare una mappa del kernel all'interno della directory di avvio.

sudo ln -sf /boot/System.map-4.15.2 /boot/System.map

Ora, utilizza la seguente riga di comando fornita di seguito per installare GRUB nella directory di avvio e terminare il processo di aggiornamento del kernel.

sudo grub-mkconfig -o /boot/grub/grub.cfg

Dopo aver fatto tutto correttamente, riavvia Arch Linux. Dal menu del caricatore di avvio, apri le "Opzioni avanzate per Arch Linux". Scoprirai che viene creato un nuovo bootloader per il nuovo kernel. Puoi anche controllare la tua versione del kernel per assicurarti che il kernel sia aggiornato sul tuo Arch Linux.

sudo reboot
uname -r

Suggerimento extra:aggiorna il kernel predefinito

A volte l'aggiornamento del kernel predefinito può risolvere i tuoi problemi minori su Linux. Tuttavia, puoi anche controllare la tua versione generica del kernel dal menu di avvio. Se hai solo bisogno di aggiornare il kernel Linux sui tuoi sistemi, puoi eseguire i seguenti comandi sulla shell del tuo terminale Linux.

sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get upgrade linux-image-generic

Parole finali

Se fai confusione e danneggi il tuo kernel, non preoccuparti, puoi rimuovere il tuo attuale kernel e reinstallare il Kernel e GRUB attraverso lo strumento Boot Repair. In questo intero post, ho descritto i fondamenti del kernel Linux. Ho anche illustrato i metodi per aggiornare il kernel su Debian, Fedora, Arch e Red Hat Linux.

L'aggiornamento del kernel su Linux non è consigliato se non si dispone di conoscenze sufficienti su boot, grub e altri filesystem di partizione root. Abbiamo utilizzato alcuni strumenti e righe di comando per completare il processo di aggiornamento del kernel Linux. Sarebbe meglio avere l'idea di base di quelle righe di comando per costruire il tuo kernel personalizzato. Alcune versioni sperimentali e beta dei kernel sono disponibili anche per varie distribuzioni Linux. Installa i kernel di terze parti a tuo rischio e pericolo.

Per favore condividilo con i tuoi amici e la comunità Linux se trovi questo post utile e informativo. Facci sapere quale versione del kernel stai attualmente utilizzando sul tuo sistema. Scrivi le tue opinioni su questo post nella sezione commenti.


Linux
  1. Come caricare o scaricare un modulo del kernel Linux

  2. Come aggiornare il kernel su desktop Linux

  3. Come controllare la versione del kernel su Linux

  4. Come codificare un modulo del kernel Linux?

  5. Come aggiornare R in Linux?

Linux Kernel 5.9:Novità e come eseguire l'aggiornamento

Cosa sono gli Snap e come installarli su varie distribuzioni Linux

Come aggiornare il kernel Linux in Ubuntu e Linux Mint

Come aggiornare Alpine Linux all'ultima versione

Come installare VirtualBox in diverse distribuzioni Linux

Aggiorna il kernel Linux di CentOS 8