Gestione Kernels

From Manjaro Linux
Jump to: navigation, search

⇐ Torna alla Pagina Principale

Premessa

Come si deduce dal nome, che in inglese significa nocciolo o nucleo, il kernel Linux è il cuore di un sistema operativo GNU/Linux come Manjaro. Tutti gli altri elementi di un sistema operativo basato su Linux vengono costruiti attorno al kernel, che agisce da interfaccia tra l'hardware del proprio computer e le applicazioni in esecuzione su di esso. Man mano che l'hardware ed il software diventano sempre più complessi e sofisticati, lo stesso deve accadere per i kernel, che devono rimanere al passo; deve infatti garantire il supporto alle ultime novità tra le componenti hardware ed offrire sempre nuove possibilità per l'accesso ad esse da parte del software. Per questo il kernel Linux è perennemente in fase di sviluppo, con nuove revisioni e versioni che vengono regolarmente rilasciate. Ulteriori informazioni sugli sviluppi più recenti e sulla tecnologia del kernel si possono trovare nel The Linux Kernel Archives

Il primo kernel Linux fu sviluppato originariamente da Linus Torvalds, che è quindi il creatore di Linux. Essendo un progetto open source, i kernel Linux moderni sono sviluppati da migliaia di programmatori e contengono adesso milioni di linee di codice; nonostante questo Linus Torvalds ha comunque l'ultima parola sullo sviluppo ed il rilascio.

GUI Tool - Utilità grafica

Msm-kernels.jpg

Manjaro Settings Manager (Impostazioni di Manjaro) consente in modo semplice di aggiungere e rimuovere i kernel (inclusi i moduli del kernel necessari). È lo strumento consigliato per tutti quegli utenti che non si sentono a proprio agio con l'utilizzo del terminale.

I kernel contrassegnati come LTS sono supportati per un periodo maggiore di tempo e dovrebbero concentrarsi, con i loro aggiornamenti nella stabilizzazione delle caratteristiche presenti piuttosto che nell'introduzione di novità.

Tutti i kernel installati verranno indicati con l'etichetta Installed, in particolare il kernel in esecuzione in quel momento sulla macchina verrà contrassegnato dall'etichetta Running, questo kernel non potrà essere ovviamente disinstallato, fino a che il sistema non verrà riavviato con un kernel diverso.

Alcuni kernel, che dovrebbero garantire una soddisfacente stabilità e qualità nell'utilizzo, vengono contrassegnati dagli sviluppatori di Manjaro come Reccomended; ovviamente tutti i kernel presenti nella lista possono essere installati senza problemi.


Comandi da Terminale

Invece di utilizzare l'applicazione grafica Manjaro Settings Manager per identificare, scegliere, aggiungere, e rimuovere i kernel, lo stesso lavoro può essere fatto, in modo più granulare, utilizzando il terminale.

Identificare il Kernel in Uso

Se il kernel attualmente in esecuzione in Manjaro non è immediatamente evidente (ad es. mediante Conky preinstallato che lo visualizza sul desktop, o mediante utilità di alcuni ambienti desktop), si può scoprirlo aprendo il terminale e lanciando il seguente comando:

mhwd-kernel -li

Il comando sopra non mostra solo quale sia il kernel in uso sulla propria macchina, ma elenca anche ogni altro kernel installato, come mostrato nel seguente output da terminale:

[handy@jarmano ~]$ mhwd-kernel -li
Currently running: 3.10.1-1-MANJARO (linux310)
The following kernels are installed in your system:
   * linux310
   * linux38
   * linux39

Come si vede nell'esempio sopra, Manjaro sta eseguendo il kernel 3.10.1-1-MANJARO. L'informazione qui riportata non è arbitraria; ogni parte del nome del kernel identifica qualcosa di quel kernel:

  • Il numero 3 indica la versione
  • Il numero .10 indica la revisione principale
  • Il numero .1 indica la revisione secondaria
  • Il secondo numero -1 indica il bug fixing, le sistemazioni dei difetti
  • -MANJARO indica la specifica distribuzione su cui è utilizzato

Aggiungere Nuovi Kernel

Nota: mhwd-kernel al momento dell'installazione di un nuovo kernel controllerà la disponibilità e procederà all'installazione di tutti i moduli necessari per il nuovo kernel, consultando quelli installati sul sistema per il kernel in esecuzione in quel momento. Per esempio, se si sta installando il kernel 3.13, avendo in esecuzione il kernel 3.10, mhwd-kernel installerà automaticamente per il 3.13 tutti i moduli presenti per il 3.10.

Manjaro non solo supporta l'uso di kernel multipli (selezionabili poi dalla schermata di avvio), ma consente anche di accedere facilmente al kernel più recente rilasciato, questo si può ottenere facilmente tramite l'utilizzo del comando mhwd-kernel (Manjaro Hard-Ware Detection) una funzionalità peculiare di Manjaro. La sintassi del comando è la seguente:

sudo mhwd-kernel [-i] [linux(versione desiderata)] [opzionale, rimozione kernel attuale: rmc]

Quando nel comando viene immesso la versione del nuovo kernel che si desidera installare, non è necessario mettere il numero di versione completo. Per esempio, ogni versione del kernel 3.13 si può elencare semplicemente con 'linux313' ed ogni versione del Kernel 3.10 può essere elencata con 'linux310', e così via.

L'elemento facoltativo rmc (remove current) è di vitale importanza. Usandolo si avrà la cancellazione del kernel in uso prima dell'installazione di quello nuovo, le modifiche saranno effettive solo dopo un riavvio del sistema. Altrimenti, se non venisse utilizzata l'opzione rmc, verrebbe mantenuto il kernel attuale, che sarebbe selezionabile insieme al nuovo kernel dalla schermata di avvio (GRUB).

Suggerimento: Si raccomanda - specialmente se si aggiorna all'ultimissimo rilascio del kernel - di tenere quello vecchio, almeno per un breve periodo di prova. Questa è un'opzione cautelativa ed il vecchio kernel potrà essere rimosso facilmente quando stabilità e funzionalità di quello nuovo saranno soddisfacenti.

Come esempio, una volta aperto il terminale, questo comando andrà ad installare il nuovo kernel (3.13) senza cancellare il kernel attualmente in uso:

sudo mhwd-kernel -i linux313

Viceversa, il comando seguente andrà a installare il nuovo kernel (3.13) rimpiazzando il kernel attuale, che sarà cancellato:

sudo mhwd-kernel -i linux313 rmc

In entrambi i casi, Manjaro configurerà automaticamente il nuovo kernel, pronto all'uso dopo un semplice riavvio.

Attenzione: Attendere sempre il completamento dell'operazione prima di eseguire un riavvio del sistema operativo, altrimenti si potrebbe compromettere l'integrità del sistema, rendendolo non avviabile.

Rimuovere i Kernel

Attenzione: NON tentare di eliminare il kernel attualmente in uso da Manjaro. È possibile identificare a priori il kernel in uso con il comando mhwd-kernel -li nel terminale (vd. sopra).

Se sul proprio sistema sono presenti più kernel, è possibile rimuoverli in modo semplice e veloce tramite

sudo mhwd-kernel -r linux[versione]

Per esempio, per rimuovere il kernel 3.19

sudo mhwd-kernel -r linux319

Si può decidere di rimuovere manualmente i kernel, e le loro componenti, tramite il gestore di pacchetti pacman. In generale sarà necessario rimuovere tre elementi del kernel per ottenerne la rimozione completa:

  1. Il kernel stesso (es. linux319)
  2. Gli headers del kernel (es. linux319-headers)
  3. I moduli extra del kernel (es. linux319-extramodules)

Quindi, in pratica, i comandi sarebbero questi (per l'esempio presentato)

sudo pacman -r linux319
sudo pacman -r linux319-headers
sudo pacman -r linux319-extramodules

Vale la pena di notare che, se Manjaro è stato avviato su una macchina virtuale (ad es. Oracle Virtualbox), potrebbe non essere in grado di eliminare determinati kernel, se contengono elementi importanti in uso dal processo stesso di virtualizzazione.

Non dimenticare il comando di aiuto

Come la maggior parte dei comandi Linux utilizzati da terminale, scrivendo il comando seguito da -h oppure --help verranno stampate sul terminale la modalità di utilizzo e le opzioni disponibi.

[handy@jarmano ~]$ mhwd-kernel -h
Usage: mhwd-kernel [option]
   -h  --help              Show this help message
   -i  --install           Install a new kernel        [kernel(s)] [optional: rmc = remove current kernel]
   -l  --list              List all available kernels
   -li --listinstalled     List installed kernels
   -r  --remove            Remove a kernel             [kernel(s)]


Selezionare i Kernels

Kernel select.png

Tutti i kernels disponibili sul proprio sistema saranno mostrati in fase di avvio. GNU GRUB si presenta con un paio di opzioni. Scegliere "Advanced Options for Manjaro Linux" utilizzando i tasti freccia della tastiera e poi premere <Enter>.

Nella schermata successiva (come illustrato) ci sono le voci per ogni versione del kernel installata (queste saranno rimosse automaticamente alla rimozione del kernel). Per Selezionare un kernel, usare semplicemente i tasti freccia per evidenziare la versione desiderata, e quindi premere <Enter>.


Voci correlate