Canali
Ultime news
Ultimi articoli
Le ultime dal Forum |
CorrelatiTagPassa qui con il mouse e visualizza le istruzioni per utilizzare i tag!
Il pezzo che stai leggendo è stato pubblicato oltre un anno fa.
La trattazione seguente è piuttosto datata. Sebbene questo non implichi automaticamente che quanto descritto abbia perso di validità, non è da escludere che la situazione si sia evoluta nel frattempo. Raccomandiamo quantomeno di proseguire la lettura contestualizzando il tutto nel periodo in cui è stato proposto.
Il dibattito è aperto: partecipa anche tu!
Questo contenuto ha ricevuto un numero significativo di commenti. Una volta conclusa la lettura, assicurati di condividere con tutti anche le tue impressioni! La funzionalità è accessibile subito in coda, ai piedi dell'ultima pagina.
Il kernel costituisce il motore di un sistema operativo. Il suo solo scopo, infatti, è quello di essere in grado di eseguire contemporaneamente molti processi in maniera efficiente, garantendo una corretta distribuzione fra gli stessi della memoria e del tempo di CPU, oltre a quello di fornire le adeguate interfacce software per l'accesso alle periferiche della macchina e le infrastrutture di base necessarie per costruire i servizi. Nella maggior parte dei casi, come in Ubuntu, il kernel viene installato dalla propria distribuzione durante l'installazione. Sono molti infatti gli utenti che non avendo necessità specifiche, come la mancanza di supporto per qualche dispositivo, evitano di installarne un altro. L'esigenza primaria che può portare alla compilazione ed all'installazione dell'ultima versione del kernel, chiamato in gergo "vanilla", è certamente quella di avere una configurazione cucita sull'hardware della propria macchina e quindi più adatta di una versione generica. Ciò si traduce in una maggiore velocità in avvio, una maggiore reattività del sistema operativo, l'eventuale supporto a nuove periferiche e, naturalmente, la correzione di possibili bug. Per compilare un nuovo kernel, però, è fondamentale una buona conoscenza dell'hardware presente sul proprio PC. Per avere informazioni dettagliate è possibile usare il comando sudo lshw da terminale, oppure un apposito programma come HardInfo. PreparativiInnanzitutto scarichiamo l'ultimo kernel stabile disponibile da The Linux Kernel Archives. Al momento della stesura di questo articolo, l'ultimo kernel è il 2.6.34. Secondo la policy Debian, per compilare il kernel sul nostro sistema Ubuntu, sebbene non sia strettamente necessario, è consigliabile usare la directory /usr/src. Per poterlo fare, però, è prima necessario modificare i permessi di tale directory ed aggiungere il proprio utente al gruppo src (gruppo proprietario della directory stessa). Per farlo apriamo il terminale e diamo il comando sudo chmod -R g+wr /usr/src/, immettiamo la password e premiamo invio, seguito da sudo adduser nomeutente src dove nomeutente è, appunto, il nostro nome utente. Rendiamo effettiva l'aggiunta del nostro utente al gruppo terminando la sessione e riaccediamo al nostro desktop. Senza complicarci la vita, copiamo il file che abbiamo scaricato all'interno della cartella di destinazione /usr/src utilizzando Nautilus.. ... poi clicchiamo sopra al file con il tasto destro del mouse e decomprimiamolo con Estrai qui. In tal modo verrà creata una cartella con il nome della versione del kernel che abbiamo scaricato: in questo caso linux-2.6.34. Installare il software necessario alla compilazionePer compilare il kernel è necessario installare alcuni pacchetti. Anche in questo caso facciamolo da terminale digitando sudo apt-get install kernel-package build-essential fakeroot bin86 libglade2-dev, immettiamo la password, premiamo invio e confermiamo con S. Il vecchio kernel come base per quello nuovoÈ possibile importare la configurazione di un altro kernel e partire da questa per effettuare ulteriori personalizzazioni. I file di configurazione per i kernel installati nel sistema si trovano nella directory /boot e sono chiamati config-2.6*, ma è possibile importare un qualunque file di configurazione valido. Se lo desideriamo, come base per il nuovo kernel possiamo copiare proprio uno di tali file di configurazione (purchè sicuramente funzionante) all'interno della directory con i sorgenti e rinominando il file in .config. Sempre utilizzando il terminale, portiamoci dentro la cartella dove abbiamo scaricato e scompattato il nuovo kernel, diamo prima il comando sudo cp /boot/config-2.6.32-22-generic .config (1) seguito dal comando make oldconfig (2). Note: (1) Per conoscere qual è l'ultimo Kernel installato sul PC è sufficiente digitare il comando uname -r sul terminale ed il file config-2.6.32-22-generic è proprio il suo file di configurazione. (2) make oldconfig importa direttamente la configurazione del kernel attualmente in esecuzione sul computer, e con un'interfaccia a linea di comando propone una ad una tutte le opzioni presenti nel nuovo sorgente: premiamo invio per confermarle tutte. Il comandoLa personalizzazione del nuovo kernelL'ultimo passo prima di procedere alla compilazione vera e propria è quello di controllare le opzioni del kernel e di modificarle in base alle nostre esigenze. Ciò rappresenta il punto più delicato di tutta l'operazione: se da un lato una corretta ed accurata personalizzazione ci consente di raggiungere il nostro obiettivo, ottimizzando il kernel sulla nostra configurazione hardware, dall'altro l'errata configurazione di un semplice modulo può compromettere l'intero sistema. A questo punto diamo il comando make gconfig per avviare l'interfaccia grafica di configurazione.
Come possiamo vedere, con la scritta (NEW) troviamo le nuove funzionalità del kernel che abbiamo importato in precedenza. Alcune impostazioni consigliate Anche se siamo certi di avere una configurazione funzionante, grazie al file di configurazione che abbiamo utilizzato, è bene controllare alcune fondamentali impostazioni. Per espandere il menu cliccare sul +, mentre tutte le modifiche si ottengono facendo doppio click con il tasto sinistro del mouse sulla relativa voce.
1) In Kernel compression mode selezionare Gzip; 2) Controllare che sia attiva l'opzione Support for paging of anonymous memory (swap); 3) Deselezionare la voce Export task/process statistics through netlink (EXPERIMENTAL); 4) Deselezionare la voce Kprobes;
1) In IO Schedulers lasciare selezionata solo la voce CFQ I/O scheduler per una migliore performance;
1) In Processor family, selezionare il tipo di processore corretto tra quelli proposti, oppure lasciare quello di default; 2) In Preemption model controllare che sia attiva l'opzione Voluntary Kernel Preemption (Desktop); 3) In Machine Check / overheating reporting deselezionare Intel MCE features se si possiede una CPU AMD oppure AMD MCE features se si possiede una CPU Intel; 4) Deselezionare la voce Dell laptop support a meno di non stare ottimizzando il kernel per un laptop Dell; 5) In /dev/cpu/microcode - microcode support seguire le stesse impostazioni di cui al punto 3); 6) In High Memory Support scegliere off se si possiede meno di 1GB di RAM, 1GB Low Memory Support se si possiede 1GB di RAM, 4GB se si possiede più di 1GB di RAM; 7) In Timer frequency abilitare 1000 HZ;
1) In CPU Frequency scaling > CPU Frequency scaling deselezionare la voce AMD Opteron/Athlon64 PowerNow! se non si possiede tale CPU;
1) In Character devices controllare che sia selezionata l'opzione Virtual terminal; 2) In Graphics support è possibile deselezionare il supporto a tutte quelle schede video non presenti sul proprio PC. 3) In Network device support > Wireless LAN ci sono i drivers delle periferiche WI-FI. Se abbiamo problemi con la chiavetta WI-FI, ad esempio, possiamo abilitarne il supporto. File systems (curiosità)È stato aggiunto il supporto al nuovo filesystem BTRFS, che in futuro dovrebbe sostituire ext4, ma attualmente ancora sperimentale ed instabile;
1) Deselezionare Kernel debugging. Per tutte le altre opzioni consiglio ancora una volta di agire con estrema cautela e, se non si è sicuri, di lasciare le impostazioni così come sono. Una volta terminato premiamo CTRL+S per salvare la nostra configurazione.
Pagina successiva
La compilazione del nuovo kernel Segnala ad un amico |
© Copyright 2024 BlazeMedia srl - P. IVA 14742231005