# [KERNEL] realizzazione kernel stile LIVECD

## MonsterMord

Ciao a tutti,

volendo utilizzare gentoo su N macchine eterogenee mi servirebbe realizzare un kernel del tipo livecd che si adattasse all'hardware non omegeneo.

Ho pensato di utilizzare genkernel dandogli in pasto il file di configurazione del kernel 2.6.19 della gentoo 2007 ma i risultati non sono quelli desiderati. Praticamente non modularizza nulla, un lsmod mi da un laconico niente, anche avendogli dato in pasto il /proc/config.gz della live.

Ho anche notato che il live cd parte con un rootdisk virtuale da 5 mega, il ramfsdisk generato dal genkernel si ferma a 2 mega.

Avete delle guide da segnalarmi?

Ho letto la guida genkernel della gentoo doc e del gento wiki ma non mi sono stati di grande aiuto.

Per il momento utilizzo il kernel del livecd, ma non mi dispiacerebbe averne uno simile un po' più personalizzabile.

Grazie.

----------

## MeMyselfAndI

Che opzioni hai passato a genkernel ? per semplificarti la vita potresti passargli --menuconfig e scegliere da te cosa rendere modulare o statico.

----------

## MonsterMord

 *MeMyselfAndI wrote:*   

> Che opzioni hai passato a genkernel ? per semplificarti la vita potresti passargli --menuconfig e scegliere da te cosa rendere modulare o statico.

 

Speravo caricasse le impostazioni dal file di configurazione del livecd 2.6.19

Volevo partire da questo proprio per evitare di modularizzarmi a mano tutto il kernel. Alla fine mi converrà fare così.

----------

## MeMyselfAndI

beh genkernel di default va a cercarsi i file di  configurazione in /etc/kernels/nome_kernel se lo trova lo carica altrimenti penso prenda una configurazione di default.Tu come gli hai passato il contenuto di /proc/config.gz ? non direttamente spero   :Shocked: 

----------

## MonsterMord

 *MeMyselfAndI wrote:*   

> beh genkernel di default va a cercarsi i file di  configurazione in /etc/kernels/nome_kernel 

 

Potrebbe essere quello il problema, Avevo trovato una guida che mi diceva di metterlo in /usr/share/genkernel/x86/kernel-config-2.6.

ho fatto uno "zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6"

Provo a metterlo nella etc/kernel

----------

## djinnZ

genkernel di default lancia un make mrproper e poi un make oldconfig prendendo il file che ti ha detto MeMyselfAndI (e vedi che hai pasticciato genkernel, nel dubbio pulisci e riemergi). Al massimo  *Quote:*   

> zcat /proc/config.gz > /etc/kernels/kernel-config-x86-2.6.x-gentoo-rx

  o meglio fai il normale oldconfig ed avvi genkernel con 

```
genkernel --noclean --menuconfig all
```

vedi che il ramdisk generato da genkernel non è pensato propriamente per una live ma più per consentirti di affrontare cose come root su lvm2 e simili, quindi appena terminato il mount del filesystem base e l'avvio dei servizi principali viene abbandonato al contrario di quello del livecd.

per cominciare dai uno sguardo qui

----------

## topper_harley

 *MonsterMord wrote:*   

> Ciao a tutti,
> 
> volendo utilizzare gentoo su N macchine eterogenee mi servirebbe realizzare un kernel del tipo livecd che si adattasse all'hardware non omegeneo.
> 
> Ho pensato di utilizzare genkernel dandogli in pasto il file di configurazione del kernel 2.6.19 della gentoo 2007 ma i risultati non sono quelli desiderati. Praticamente non modularizza nulla, un lsmod mi da un laconico niente, anche avendogli dato in pasto il /proc/config.gz della live.
> ...

 

Sbaglio o forse hai bisogno di quei test che l'initrd dei livecd fa PRIMA del caricamento del kernel?

----------

## Luca89

Per compilare un kernel generico basta lanciare genkernel con le opzioni predefinite, è il suo compito principale questo.

```
# genkernel all
```

Poi devi scrivere correttamente la voce di grub per avviarlo, dovrebbe essere scritto nel manuale gentoo.

----------

