>
MENU

10 motivi per cui la riga di comando è...

Hacking del BIOS (Parte IV)

3 dicembre 2007 Visualizzazioni: 627 Focus

Kerneler: ecco come ricompilare facilmente il kernel

Per gli utenti di Debian (etch, lenny e sid) e derivate (DSL, Knoppix, SimpyMEPIS, Ubuntu), ricompilare il kernel diventerà una cosa più semplice grazie a Kerneler.

k0.jpg

Kerneler è un programma scritto grazie all’ausilio di script in Bash che permette agli utenti di poter ricompilare il kernel attraverso una modalità grafica, senza dover dare nessun comando da terminale. In questo modo, finalmente, sarà più facile ricompilare un kernel a misura per la nostra dotazione hardware.

Prima di iniziare
Per poter essere sicuri di non avere bisogno di niente durante la ricompilazione del kernel, vediamo di installare l’occorrente. I pacchetti richiesti sono i seguenti:

  • bash
  • build-essential
  • libncurses5
  • libncurses5-dev

Una volta installati da terminale o da Synaptic, potremo procedere con il nostro lavoro.

Scarichiamo Kerneler
Per poter utilizzare questo utilissimo programma, andiamo sul sito ufficiale e scarichiamo l’ultima versione stabile.

k1.jpg

Una volta terminato il download, estraiamo l’archivio dove vogliamo (ad esempio sulla Scrivania).Iniziamo a ricompilare il kernel
Apriamo il terminale e portiamoci nella cartella appena creata. Da qui, scriviamo:

# ./kerneler

Ora vi verrà chiesto di premere INVIO. Una volta fatto, se è la prima volta che utilizzate Kerneler, vi verrà chiesto di configurarlo. Seguite i semplici passaggi ed attivate l’interfaccia grafica. Fatta anche questa operazione, dovrete indicare in quale cartella salvare i sorgenti del kernel. A questo punto, partirà la schermata che vi permetterà di effettuare la ricompilazione in dieci semplici passaggi.

k3.jpg

0 Scegli la versione del kernel
Cliccando due volte su questa voce, potrete scegliere quale versione scaricare. Vi consiglio Ultima versione.

1 Scaricare i sorgenti del kernel
Cliccando su questa voce, potrete scaricare i sorgenti del kernel scelto.

2 Gestisci i sorgenti del kernel
Cliccando su questa voce, potrete decomprimere i sorgenti scaricati.

3 Gestisci la versione del kernel
Opzionale. Cliccando su questa voce, potrete portare il kernel all’ultima versione.

4 Applicare/Rimuovere patch al kernel
Opzionale. Questa voce potrebbe non servire se non ci sono patch da applicare al kernel.

5 Mostra informazioni sull’hardware
Opzionale. Questa voce serve solo se non conoscete il vostro hardware.

6 Menu di configurazione del kernel
In base al vostro ambiente desktop, scegliete quale finestra aprire. In alternativa, potete sempre scegliere la modalità testuale. Per gli utenti Gnome, ad esempio, l’opzione da scegliere è la quarta.

Questo è il momento più importante e più delicato in quanto si personalizza il kernel. Per rendere più performante il vostro futuro kernel, andate nella sezione General Setup ed attivate:

  • Support for paging of anonymous memory;
  • Support for prefetching swapped memory;

Dalla sezione Processor type and features:

in Processor family cercate la famiglia del vostro processore e selezionatela;
in Preemption Model scegliete se volete un kernel Voluntary Kernel Preemption oppure un Preemptible kernel a bassa latenza.

Dalla sezione High Memory Support scegliete:

  • off se avete meno di 1GB di memoria;
  • 4GB se avete un GB di memoria;
  • 8GB se avete da due GB di memoria in poi;

In Time frequency scegliete 1000Hz.

Effettuate queste impostazioni, cliccate su Save e chiudete la finestra.

7 Menu di compilazione del kernel
In questa sezione, creerete i pacchetti .deb che verranno poi installati sulla vostra Linux box. Per creare questi pacchetti, ci vorrà un po’ di tempo, anche ore, in base alla potenza del vostro processore. Come prima operazione cliccate su Pulisci i sorgenti ed attendete che l’operazione finisca. Come seconda operazione, cliccate su Crea un package .deb con ‘linux-image’ ed attendete che venga creato. Come ultima operazione, cliccate su Crea un package .deb con ‘linux-headers’.

8 Menu di installazione dei pacchetti
Cliccando su questa voce, i pacchetti creati verranno installati sul vostro sistema. Inoltre, verrà aggiornato Grub con il nuovo kernel, in modo che al prossimo riavvio potrete usufruire subito del vostro lavoro.

9 Post-installation Menu
Cliccando su questa voce, potrete installare i driver ATI o NVIDIA.

Arrivati alla fine di questa guida, non vi resta che riavviare la vostra distribuzione per poter usufruire del nuovo kernel ricompilato.

Buona ricompilazione! ..e fateci sapere come sono andate le vostre ricompilazioni!

di Gianfranco Limardo - TuxJournal.net

twittergoogle_pluslinkedinmail
  • Carlo

    Scusate la domanda da niubbo ma… che vantaggi posso trarre da una ricompilazione del kernel?
    Grazie!!

  • http://www.palmix.org franz

    @Carlo: i vantaggi vanno dal riuscire a far funzionare hardware particolare all’ottimizzazione del proprio processore e del proprio hardware…insomma è un po’ come avere un vestito fatto su misura da un sarto e uno comprato ai grandi magazzini.

    Ma che vantaggi mi dovrebbe dare Kerneler che xconfig non mi da?
    E soprattutto, considerata la delicatezza e l’importanza del kernel perchè lasciarlo in balia di chi non ha idea di cosa sta facendo?…..il kernel è il cuore di Linux e dovrebbe essere “manipolato” solo da chi ha coscienza di cio che fa, non dal primo che arriva…sarebbe come lasciar fare il chirurgo a uno che di medicina conosce solo il nome dell’aspirina.

  • Di ME

    E’ da egosto che almeno 1 volta alla settimana appare un articolo su ziobudda che parla di kerneler… ebbasta ormai lo sanno anche i sassi che su debian con kerneler si compila facilmente il kernel. Smettetela di postare cose trite e ritrite!!!

  • http://www.tuxjournal.net vciaglia

    @Di Me: si ma noi non ne abbiamo mai parlato. Cosa c’entra?

  • http://ushoshunch.wordpress.com/ Usho

    Io credo che una volta in più non faccia male…e poi non bisogna fare informazione solo per i “vecchi” linuxiani….io ad.esempio mi sono affacciato a questo mondo da circa 7 mesi…e ogni volta imparo cose nuove (utilizzo gli RSS)….e questa cosa personalmente non la sapevo…

    esempio….adesso ho aperto un blog con delle guide, anche molto semplici ( esempio : come killare un processo)…cose che i più esperti sanno benissimo….ma uno che si affaccia a questo “mondo” si può trovare in difficoltà….

    si lotta per l’open sourse, si vorrebbe linux come competitvo e concorrente a Win….si sono fatti passi in avanti…ma per un utente medio passare da Win a Linux è un “trauma” e molte volte ha bisogno di supporto…

    cmq il mio blog è:

    http://ushoshunch.wordpress.com/

  • http://www.tuxjournal.net gian

    @ Di me:
    Guarda che l’articolo non è “guardate che bello kerneler” come in tutti gli altri articoli che ci sono per la rete, bensì “compiliamo il kernel con kerneler”.
    Infatti, se leggi gli altri articoli che trovi per la rete, si fermano a parlare delle caratteristiche di kerneler e niente di più.
    Noi, invece, siamo andati oltre, facendo vedere effettivamente quello che puoi fare con questo programma, mostrando anche ai meno esperti dove mettere mano per poter avere un kernel più a misura di pc.
    Kerneler è stato solo il mezzo per fare una guida su come ricompilare il kernel, non per i guru di gnu/linux ma per quelli che si sono affacciati su questo mondo da poco e vogliono diventare anch’essi guru.
    Prima di criticare un articolo, vediamo di capire a chi è rivolto e perchè.
    grazie.

  • http://www.palmix.org franz

    @gian:

    Come avranno fatto tutti quelli che sanno ricompilare il kernel ad imparare senza kerneler?!…magia?infusione dello spirito santo? o forse buona volontà e voglia di imparare senza aspettare la pappa pronta?…..Guru (come dici tu) non si diventa usando programmi per “utonti” dove clicki su un paio di icone senza sapere cosa fai!!

    Il kernel, lo ripeto, è roba seria e non dovrebbe essere in balia di inesperti!!!

    Linux si impara su linea di comando non su desktop, almeno se si vuole diventare qualcosa di più di un semplice utente.
    Prima di sapere ricompilare il kernel bisogna saper fare molte altre cose, ma se invece sei già esperto di kerneler non sai che fartene.

  • http://www.tuxjournal.net gian

    @ franz:
    ho vissuto e continuo a vivere benissimo pure io senza kerneler, eppure non mi fa schifo pensare che posso avere un’alternativa più semplice per eseguire le stesse operazioni.
    Sul fatto che poi non bisogna lasciare il kernel in balia di un inesperto, hai pienamente ragione!
    Per quanto riguarda GNU/Linux, ognuno ne fa l’uso che vuole: sta poi alla persona decidere se rimanere a premere solo pulsanti oppure capire come funziona il sistema che sta usando.

  • http://ushoshunch.wordpress.com/ Usho

    @franz;

    “Linux si impara su linea di comando non su desktop”…massima di tutto rispetto…ma c’è gente che “poverina” vorrebbe provare linux, e direi che la maggior parte dell’umanità non è un genio dell’informatica…che facciamo gli mettiamo un cartello tipo : “tu non puoi entrare”….suvvia…la mia speranza è che linux possa entrare nelle case di ogni utente, che possa fare concorrenza a Win…e sinceramente non lo vedo + come un fenomeno di nicchia…credo che i tempi siano cambiati…

    se no chiediti…perchè la maggior parte delle distribuzioni mirano anche a migliorare l’interfaccia grafica???…non credo perchè si divertino…

    Per quanto riguarda il fatto che il Kernel è un qualcosa di importante, e che prima di “toccarlo” bisogna stare attenti, sono daccordo….ma perchè non facilitare le cose??….non tutti adorano il “Terminale” e le stringhe di codice….

  • IlDruido

    :)
    Io ci ho già provato 3 volte a ricompilare il kernel, per svariati motivi. Hardware meglio supportato nelle versioni recenti, kernel vecchio nella versione sul cd di installazione, esperimento…
    E tutte e tre le volte non è partito,ovviamente. Mi sono accorto da solo che mi serviva imparare ancora molto, e l’ho accantonato per un altro po’.
    Demonizzare chi mette mano alla propria macchina è da tecnocrati (per usare un termine che fa figo), anche usare la rica di comando come superuser è pericoloso.
    Eppure ho ancora un pc funzionante, ne so un po’ di più (su quello che non so), e continuerò ad imparare.
    Una volta che so farlo da shell, avere una gui può risultare molto più veloce e mi permetterebbe di avere tempo da spendere per provare altre cose.
    Il non provare mai porta l’utente a diventare utonto, per cui PROVATE (e tenetevi un kernel funzionante da parte ;) )

  • http://www.palmix.org franz

    @Usho

    [“Linux si impara su linea di comando non su desktop”…massima di tutto rispetto…ma c’è gente che “poverina” vorrebbe provare linux, e direi che la maggior parte dell’umanità non è un genio dell’informatica…che facciamo gli mettiamo un cartello tipo : “tu non puoi entrare”….suvvia…la mia speranza è che linux possa entrare nelle case di ogni utente, che possa fare concorrenza a Win…e sinceramente non lo vedo + come un fenomeno di nicchia…credo che i tempi siano cambiati…]

    Infatti ho distinto utenti da conoscitori: gli utenti non devono minimamente dover mettere mano a file di configurazione del sistema o peggio ancora sul kernel.
    Per provare Linux non è più necessario (grazie a distro come Ubuntu, Arch, Sidux, etc..) conoscerne i funzionamenti e arrovellarsi il cervello…(e benvenga tutto ciò per la diffusione di Linux)….ma stiamo sempre parlando di utenti ATTENZIONE!
    Metter mani al sistema non è da utenti!!….ma da conoscitori o esperti.

    Io stesso ho fatto e metto a disposizione sul mio sito guide per Linux utilizzabili anche dai principianti (www.palmix.org), ma bisogna saper compiere un passo alla volta.

    [Per quanto riguarda il fatto che il Kernel è un qualcosa di importante, e che prima di “toccarlo” bisogna stare attenti, sono daccordo….ma perchè non facilitare le cose??….non tutti adorano il “Terminale” e le stringhe di codice….]

    Il terminale è fondamentale per chi vuole imparare davvero Linux, non si scappa!!…chi ha l’allergia alla riga di comando resti utente!…Chi vuol imparare invece ben venga, ma si rimbocchi le maniche e ci metta la volontà (come in tutte le cose della vita): sapere cosa va compilato nel kernel e cosa invece può essere compilato come modulo (ad esempio) è fondamentale, così come molte altre cose, ed usare un programmino semiautomatico non aiuta a imparare, ma nasconde solo le cose.
    Molto meglio, come ha fatto ilDrudio che ci ha sbattuto la testa e non si perde d’animo!

    @ilDruido:

    [Una volta che so farlo da shell, avere una gui può risultare molto più veloce e mi permetterebbe di avere tempo da spendere per provare altre cose.]

    Si ma per tua stessa ammissione prima impari da shell!!…poi quando sei consapevole velocizzi con una gui (cosa che puoi già fare col comando make xconfig)…..incentivare gli utenti inconsapevoli ad usare direttamente kerneler senza sapere cosa stanno facendo e in che modo è un approccio errato a mio avviso.

  • /V

    “Kerneler è un programma scritto grazie all’ausilio di script in Bash che permette agli utenti di poter ricompilare il kernel attraverso una modalità grafica, senza dover dare nessun comando da terminale. In questo modo, finalmente, sarà più avere i forum di debian e ubuntu pieni di thread su kernel panic e hardware non piu’ riconosciuto aperti da perfetti niubbi senza cognizione di causa”

    :-D scusate, non ho resistito…

  • /V

    umorismo e simpatia d’accatto, io e’ un po’ che ho abbandonato l’idea di ricompilare il kernel perche’ vengo regolarmente preso dalla cosiddetta “sindrome del system integrator”, e cioe’ comincio a spulciare in TUTTE le opzioni di configurazione e mi perdo a riflettere se mi convenga abilitare la “multiTCP packet handling smart dropDown packet filtering uberProtocol (EXPERIMENTAL)”.

    A quando una bella disanima su quali impostazioni di default possano essere toccate a quali no?

  • elcamilo

    ciao, al passo 6 quando scelgo la quarta opzione per la modifica grafica (ho Ubuntu gutsy), mi da questo errore:
    make[1]: *** No rule to make target `scripts/kconfig/.tmp_gtkcheck’, needed by `scripts/kconfig/gconf.o’. Stop.

    torna al menù principale. che ne dici?

  • bautz

    Avete scritto:
    # 4GB se avete un GB di memoria;
    # 8GB se avete da due GB di memoria in poi;

    Ma l’opzione 4GB non è per chi ha da 1 a 4 Gb ?

  • lux

    io al punto 6 seleziono Xconfiguration system (gtk)(gnome), ed ottengo questo errore :

    make[1]: *** No rule to make target `scripts/kconfig/.tmp_gtkcheck’, needed by `scripts/kconfig/gconf.o’. Stop.
    make: *** [gconfig] Error 2

    mi sapete dire come fare??
    sto cercando di usare kerneler su una ubuntu gutsy…

  • http://belzebu.ilbello.com belze

    prima di modificare un kernel su qualsiasi distro, credo che sia più formativo farsi un giretto su gentoo o simili. Prima si capisce come funziona il tutto e poi si usano le scorciatoie per evitare alcuni passaggi noiosi. Con tutto il rispetto per chi si avvicina da poco a linux, ed io ero così fino a qualche anno fa, ma sarebbe come insegnare ai bambini a fare le moltiplicazioni con la calcolatrice senza insegare loro la logica che ci sta dietro.

  • andrea

    Ho seguito le istruzioni ed è andato tutto bene. Però in effetti non ho ben capito che diavolo stessi facendo, se non a grandi linee. C’è da dire che grossi rischi non si corrono, se non funziona posso rifare il boot con il kernel precedente. Giusto?

  • pippo calo’

    ottimo articolo grazie mille , per chi critica , posso solo dire ma rilassatevi va

  • Matteo

    Anche a me dà lo stesso errore, sapete come fare? uso ubuntu-gutsy..

    make[1]: *** No rule to make target `scripts/kconfig/.tmp_gtkcheck’, needed by `scripts/kconfig/gconf.o’. Stop.
    make: *** [gconfig] Error 2

    Grazie!

  • daytan

    A tutti i "Guru" o "che si sentono tali":
    coloro che si sentono sti gran conoscitori, se pensano di ritenersi "esperti" e non utenti, solo xké sanno ricompilare un kernel, è meglio che si sveglino. L'Informatica è una Scienza, ha infiniti rami di ricerca.
    Non vedo cosa più romantica di chi si mette a ricompilare il kernel senza sapere cosa stia facendo.  Perché criticare?

    Davvero lo trovo assurdo…

  • michele

    belze ha scritto:
    (cut) prima di modificare un kernel su qualsiasi distro, credo che sia più formativo farsi un giretto su gentoo o simili. Prima si capisce come funziona il tutto e poi si usano le scorciatoie per evitare alcuni passaggi noiosi.  (cut)
    senti, ma tu guidi una automobile? penso di sì.
    mi sai spiegare, in maniera approfondita, precisa e chiara oltre ogni ragionevole dubbio, e soprattutto a prova di cretino, quale è il meccanismo COMPLETO tramite cui, dal momento in cui giri la chiavetta per accenderla, al momento in cui la giri per spegnerla, il motore della tua automobile funziona?
    penso di no. eppure guidi una autovettura.
    ripensa un po' a quel che hai scritto, và. e così tutti i puristi e pseudo-puristi del "si fa così, si deve fare così perchè si è sempre fatto così".
     le cose cambiano. se pretendi che non si possano utilizzare strumenti nuovi per automatizzare procedure, stai allontanando da linux i potenziali utenti. stai nuocendo all'entusiasmo di persone potenzialmente portatrici di novità e di grossi apporti in termini di ricerca e sviluppo per il rigido rispetto  di un rigore idealistico ed elitaristico.  gentoo? ad alcuni piace. divertitici. se però usi ubuntu e consigli ad altri gentoo, c'è da riderti in faccia.

    franz ha scritto:
    (cut) Il kernel, lo ripeto, è roba seria e non dovrebbe essere in balia di inesperti!!! Linux si impara su linea di comando non su desktop, almeno se si vuole diventare qualcosa di più di un semplice utente. Prima di sapere ricompilare il kernel bisogna saper fare molte altre cose, ma se invece sei già esperto di kerneler non sai che fartene. (cut)

    ma smettiamola.  che è questo pontificare di sacri luoghi comuni dei portatori del verbo del vero linux? questo è quel che pensi TU.  quali sarebbero i pre-requisiti per potere ricompilare il kernel? diciamoci la verità: trovare una guida seria, aggiornata e in progress al kernel, in italiano, documentata, e con tutte le features, è piuttosto difficile.
    le tue frasi rasentano la tautologia: prima di saper ricompilare il kernel bisogna saper fare molte altre cose (ma non dici cosa, nel caso in cui qualcuno decidesse di capire cosa, nefando esempio di security through obscurity)… ma perdio! eccone un altro della serie "dopo di me, il diluvio!".
    vivi e lascia vivere no eh? roba da non crederci. hai l'atteggiamento degli ottantenni che dicono "che tempi, signora mia!" senza ricordare che ai loro tempi era molto peggio.
    ok, entrambi dite che bisogna conoscere i pre-requisiti. allora, fate una serie di articoli seri, dettagliati, e circostanziati, sui pre-requisiti. facile, no? così vediamo quanto siete bravi, oltre che a sapere per conto vostro, anche a FARE sapere agli altri.

  • Paolo

    90 minuti di applausi!

  • lerik

    scusate l'OT… ma che bella è la pubblicità in cima di office x mac in un forum di linux!!!!!
    cmq a me la domandina da newbbo ha fatto comodo perchè stavo cercando proprio questa informazione

  • http://www.kerneler.org Neon

    Mi dispiace di aver visto solo ora questa serie di commenti :)

    Sono lo sviluppatore di Kerneler.

    Ho scritto Kerneler per me e solamente per me, ma l'ho reso pubblico perche' potrebbe servire ad altri.

    Non vi serve? Non lo usate!

    Ci ho speso ore e ore perche' mi andava di farlo e per imparare a fondo cosa vuole dire compilare patchare ecc il kernel… Solo per mio divertimento/interesse/studio…

    Se sapete compilare tramite riga di comando vi giuro che lo so fare anche io.. ma tutto sommato preferisco dare 3 clic e fare in modo che il tutto avvenga per via divina. In genere è proprio dell'essere umano di lavorare il meno possibile..

    Ringrazio tuxjournal e tutti quei siti che mi hanno pubblicizzato senza che io chiedessi niente.
    E ringrazio tutti quelli che hanno visto kerneler e non essendone interessati non hanno dovuto per forza dire la loro!

    Un saluto!

  • http://www.gimaux.wordpress.com GiMauX

    Ottima guida, l'ho riportata sul mio blog, naturalmente ho citato la fonte TuxJournal.net

    Grazie!

  • michele

    Neon ha scritto:
    Sono lo sviluppatore di Kerneler.Ho scritto Kerneler per me e solamente per me, ma l'ho reso pubblico perche' potrebbe servire ad altri. Ecco, è questo lo spirito che ci serve, di studio, di umiltà e di servizio per la COMUNITA', invece che quello geriatrico-protezionistico di post precedenti che tra le righe scrivono "io so tutto, e dovete saperlo anche voi, e cercare strade più corte equivale all'uscire dal verbo del vero Linux. Io so tutto, ma non vi dico nulla."Grazie, Neon. Grazie davvero: senza persone come te, che "osano" muoversi dai "sacri dogmi" per far fare alle macchine quello che è il loro compito, minimizzando l'intervento umano al controllo e alla decisione, ovvero al pensiero, saremmo ancora all'età della pietra!Penso sia necessario un chiarimento: i miei post posson parere molto aggressivi e sprezzanti, nei confronti di certe prese di posizione… è peraltro vero che se non si cercassero strade nuove e più brevi, e ci si fossilizzasse nel "o si fa così oppure l'armageddon", tutto quello in cui crediamo non avrebbe senso.E inoltre: stiamo parlando di scienza, ovvero di qualcosa che è vero fino a prova contraria, e che per definizione è in continua evoluzione. Finiamola con i dogmatismi inutili, controproducenti, e con la custodia di vestigia di un passato che a volte sarebbe meglio dimenticare.Per quanto riguarda il fatto che il kernel sia per conoscitori o esperti… 'sta cosa mi fa fischiare le orecchie. Mi ricorda tanto certe prese di posizione medievali sul "oltre qui non si va" per difendere posizioni di privilegio.Uno conto è sapere, e fare. Un altro conto è saper fare, e fare sapere. Ma mi pare che certe orecchie, a certe cose, siano sempre sorde… :)La conoscenza è sempre potere, eh eh, eh…   

  • sterbuto

    articolo utile, grazie. finora non avevo mai provato a ricompilare, un’occasione di conoscenza in più.