Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

ubuntu: come mettere il kernel di una versione vecchia

Per chi muove i primi passi nel mondo del pinguino

ubuntu: come mettere il kernel di una versione vecchia

Messaggioda iLupus » mer nov 18, 2009 3:58 pm

Con il mio hardware vi sono irrisolvibili problemi con le nuove versioni, che mi obbligherebbero ad usare il kernel della 8.04 (o la 8.04 stessa). Vorrei cercare a installare xubuntu KK con questo stratagemma e provare la nuova versione se mi sta addosso o no.
Qualcuno mi può illustrare la procedura nei modi adatti a un niubbio? [:)] Grazie.
Avatar utente
iLupus
Aficionado
Aficionado
 
Messaggi: 117
Iscritto il: mer ott 10, 2007 11:42 am

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda masterz3d » mer nov 18, 2009 4:17 pm

Io ti direi di ricompilarlo... ma esiste una procedura molto più semplice adatta a Ubuntu (distro debian) che mi pare abbia a che fare con make-kpkg... passo la palla a ninjabionico per altre info. Provai a ricompilarlo una volta per un sistema Debian... ancora non conoscevo l'affare delle initrd/initramfs, e il disastro che ne scaturì non è esprimibile a parole [:D]
Tocca i grani di un mala durante la preghiera, in ordine, tutti.
Allora sfiorerai la natura del Buddha.
Avatar utente
masterz3d
Senior Member
Senior Member
 
Messaggi: 425
Iscritto il: mer nov 04, 2009 4:59 pm
Località: Fiumicello, UD

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda ninjabionico » gio nov 19, 2009 4:59 am

Ciao.

I comandi da utilizzare per creare un pacchetto contenente il kernel, i moduli e il file initrd li trovi facilmente nella guida...

... http://wiki.ubuntu-it.org/Amministrazio ... ioneKernel ...

... il vero problema è conoscere il proprio hardware e trovare la giusta configurazione, una scelta sbagliata e il sistema potrebbe piantarsi durante la fase di boot con un bel messaggio di kernel panic.

Comunque mi sembra strana la cosa che il vecchio kernel della 8.04 supporti il tuo hardware meglio della nuova versione contenuta nel 9.10... [uhm]

... mi viene il sospetto che sia pi probabilmente un problema con la nuova versione di Xorg, il server grafico... [uhm]
... le ultime versioni hanno introdotto delle routines per il riconoscimento e l'autoconfigurazione dell'hardware installato nella macchina, soluzione molto comoda quando tutto funziona come previsto, ma complica notevolmente la vita in caso di problemi.

Hai provato ad avviare il LiveCd della 9.10 in modalità grafica sicura?
Quali sono gli errori e i problemi che riscontri?

[ciao]
Io dico le cose così come stanno! Questo è il mio credo ninja - by Naruto Uzumaki
Expert-Advanced User Powered by Gnu/Linux
Avatar utente
ninjabionico
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5207
Iscritto il: lun mar 20, 2006 10:51 pm
Località: Prov. Pd


Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda masterz3d » gio nov 19, 2009 1:50 pm

Comunque mi sembra strana la cosa che il vecchio kernel della 8.04 supporti il tuo hardware meglio della nuova versione contenuta nel 9.10...

Lo fanno ogni tanto, ho degli amici che hanno di 'sti problemi. In una versione precedente supportano una particolare periferica che in una versione successiva non supportano più... un taglietto nel kernel (dai 4 ai 15k in media) e il gioco è fatto. E' facile, basta sapere come si fa. Purtroppo la configurazione del kernel si può stampare su una trentina di pagine A4 (con caratteri piccoli però) e la consultazione è una cosa proibitiva per i non addetti ai lavori (o, volendo, per chi non sa leggere la configurazione).

Di conseguenza la configurazione del kernel di Ubuntu è, per chi non sa o non vuole addentrarsi, di esclusiva competenza dei suoi sviluppatori. C'è una marea di cose di cui tener conto, come il filesystem: per esempio, se compili come modulo il supporto ext3 quando hai la root su un filesystem ext3 avrai un sistema non bootabile; se compili come modulo il driver del tuo chipset IDE o SATA su cui risiede il disco rigido di root avrai un sistema non bootabile; se usi un initrd in filesystem ext2 quando compili ext2 come modulo avrai un sistema non bootabile... le uniche cose sagge da fare sono due: usare initramfs o compilare le cose importanti built-in e il resto in moduli in initrd, o direttamente in root e bypassare initrd (come ho fatto io fino a quando ho scoperto come usare initramfs o initrd).

Se vuoi, e se esiste il file /proc/config.gz, puoi vedere la configurazione del kernel attuale con questo semplice comando:
Codice: Seleziona tutto
zcat /proc/config.gz | less

Avendo due versioni del kernel fatte funzionare in momenti diversi, estrai la configurazione nelle rispettive sessioni (ricorda che proc è un filesystem virtuale creato dal kernel attualmente caricato in memoria) e la scarichi su un file di testo con il seguente comando:
Codice: Seleziona tutto
zcat /proc/config.gz > $(uname -r)_config

L'output sarà un testo ASCII e il nome del file sarà una roba del tipo 2.6.30-gentoo-r8_config (per me che uso la Gentoo) o qualcosa del genere, potrà cambiare per versioni diverse o per distribuzioni diverse. Impossibile sbagliare.
Poi si possono confrontare per vedere le differenze.
Tocca i grani di un mala durante la preghiera, in ordine, tutti.
Allora sfiorerai la natura del Buddha.
Avatar utente
masterz3d
Senior Member
Senior Member
 
Messaggi: 425
Iscritto il: mer nov 04, 2009 4:59 pm
Località: Fiumicello, UD

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda ninjabionico » gio nov 19, 2009 3:16 pm

Ciao.

Spesso sono già presenti i files di configurazione delle varie versioni dei kernel installati, si trovano nel percorso /boot e hanno nome tipo config-{versione kernel}

Per mantenere le medesime impostazioni basta copiare il file di configurazione nella cartella dove sono presenti i sorgenti del kernel da compilare dandogli come nome .config e provvedendo quindi alla compilazione.
Il mio consiglio è invece, visto che tanto lo si vuole compilare, di ottimizzare la configurazione per la macchina nella quale il kernel dovrà girare.

Faccio un esempio:
Nel mio caso, ho come fisso un Amd Athlon64 3000+ e chipset Via KT800, posso specificare di compilare il codice per il K7 (32 bit come il sistema che sto utilizzando, invece sceglierei K8 in un sistema 64 bit) e togliere tutti i driver per chipset Intel, Nvidia, Ali/Uli, Sis e Amd, le funzionalità APM (abilitate per compatibilità con i vecchi PC, nei computer degli ultimi 6 anni sono utilizzate le funzioni ACPI), le schede PCMCIA e PCI che so di non avere sul mio PC (es. schede PCI di rete, audio, d'acquisizione video, mentre lascio abilitate come moduli quelle USB).
Posso inoltre compilare come statici i driver per il mio chipset Via, la scheda di rete integrata, il controller sata Promise integrato, l'audio integrato, le funzionalità del bluetooth (lo uso per navigare col cellulare), le funzioni di gestione della frequenza e dell'alimentazione del processore.
Tutto quello su cui ho dubbi lo inserisco come modulo.
In questo modo alleggerisco il kernel e lo rendo più veloce (con un aumento della velocità di boot e con un miglioramento nelle prestazioni globali del sistema).

[ciao]
Io dico le cose così come stanno! Questo è il mio credo ninja - by Naruto Uzumaki
Expert-Advanced User Powered by Gnu/Linux
Avatar utente
ninjabionico
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5207
Iscritto il: lun mar 20, 2006 10:51 pm
Località: Prov. Pd

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda ninjabionico » gio nov 19, 2009 3:16 pm

Ciao.

Spesso sono già presenti i files di configurazione delle varie versioni dei kernel installati, si trovano nel percorso /boot e hanno nome tipo config-{versione kernel}

Per mantenere le medesime impostazioni basta copiare il file di configurazione nella cartella dove sono presenti i sorgenti del kernel da compilare dandogli come nome .config e provvedendo quindi alla compilazione.
Il mio consiglio è invece, visto che tanto lo si vuole compilare, di ottimizzare la configurazione per la macchina nella quale il kernel dovrà girare.

Faccio un esempio:
Nel mio caso, ho come fisso un Amd Athlon64 3000+ e chipset Via KT800, posso specificare di compilare il codice per il K7 (32 bit come il sistema che sto utilizzando, invece sceglierei K8 in un sistema 64 bit) e togliere tutti i driver per chipset Intel, Nvidia, Ali/Uli, Sis e Amd, le funzionalità APM (abilitate per compatibilità con i vecchi PC, nei computer degli ultimi 6 anni sono utilizzate le funzioni ACPI), le schede PCMCIA e PCI che so di non avere sul mio PC (es. schede PCI di rete, audio, d'acquisizione video, mentre lascio abilitate come moduli quelle USB).
Posso inoltre compilare come statici i driver per il mio chipset Via, la scheda di rete integrata, il controller sata Promise integrato, l'audio integrato, le funzionalità del bluetooth (lo uso per navigare col cellulare), le funzioni di gestione della frequenza e dell'alimentazione del processore.
Tutto quello su cui ho dubbi lo inserisco come modulo.
In questo modo alleggerisco il kernel e lo rendo più veloce (con un aumento della velocità di boot e con un miglioramento nelle prestazioni globali del sistema).

[ciao]
Io dico le cose così come stanno! Questo è il mio credo ninja - by Naruto Uzumaki
Expert-Advanced User Powered by Gnu/Linux
Avatar utente
ninjabionico
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5207
Iscritto il: lun mar 20, 2006 10:51 pm
Località: Prov. Pd

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda masterz3d » gio nov 19, 2009 8:54 pm

Spesso sono già presenti i files di configurazione delle varie versioni dei kernel installati, si trovano nel percorso /boot e hanno nome tipo config-{versione kernel}

Si, giusto. C'è scritto pure nella guida.

Ormai io le cose le faccio a modo mio [:D]
Tocca i grani di un mala durante la preghiera, in ordine, tutti.
Allora sfiorerai la natura del Buddha.
Avatar utente
masterz3d
Senior Member
Senior Member
 
Messaggi: 425
Iscritto il: mer nov 04, 2009 4:59 pm
Località: Fiumicello, UD

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda ninjabionico » gio nov 19, 2009 11:10 pm

Ciao.

Il tuo metodo è correttissimo, ma se non sbaglio deve essere abilitata la relativa opzione del kernel. [^]

Se gli sviluppatori della distribuzione decidono di disattivare l'opzione per avere un kernel leggermente più piccolo e leggero, allora la tua soluzione potrebbe non funzionare. [uhm]

[ciao]
Io dico le cose così come stanno! Questo è il mio credo ninja - by Naruto Uzumaki
Expert-Advanced User Powered by Gnu/Linux
Avatar utente
ninjabionico
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5207
Iscritto il: lun mar 20, 2006 10:51 pm
Località: Prov. Pd

Re: ubuntu: come mettere il kernel di una versione vecchia

Messaggioda masterz3d » gio nov 19, 2009 11:41 pm

ninjabionico ha scritto:Ciao.

Il tuo metodo è correttissimo, ma se non sbaglio deve essere abilitata la relativa opzione del kernel. [^]

Se gli sviluppatori della distribuzione decidono di disattivare l'opzione per avere un kernel leggermente più piccolo e leggero, allora la tua soluzione potrebbe non funzionare. [uhm]

[ciao]


Si, è vero.

Codice: Seleziona tutto
    <*> Kernel .config support
    [*]   Enable access to .config through /proc/config.gz

in General Setup.
Tocca i grani di un mala durante la preghiera, in ordine, tutti.
Allora sfiorerai la natura del Buddha.
Avatar utente
masterz3d
Senior Member
Senior Member
 
Messaggi: 425
Iscritto il: mer nov 04, 2009 4:59 pm
Località: Fiumicello, UD


Torna a NewBie

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising