# genkernel caricare lo stretto indispensabile

## eleaffar

Salve a tutti,

volevo sapere se voi sappiate di qualche opzione di genkernel  o qualche programmino simile che sappia costruirmi un kernel :

caricandomi tutti i moduli STATICI e solo quelli che strettamente mi servono data la mia macchina dove compilo il kernel.

In maniere da evitarmi lshw, lspci ... 

X' in maniera statica, x' uso delle macchine diskless.

Grazie e buon lavoro.

 :Very Happy: 

----------

## djinnZ

genkernel non fa altro che prendere una conf preconfezionata (e verificata sicuramente compatibile con le necessità dei vari pacchetti) in /usr/share/genkernel se non ne esiste una in /etc/kernels.

quindi genkernel --menuconfig e rifinisci *( cd /usr/src/linux ; make help) wrote:*   

> Configuration targets:
> 
>   config          - Update current config utilising a line-oriented program
> 
>   nconfig         - Update current config utilising a ncurses menu based program
> ...

 oppure genkernel --noclean --menuconfig dopo aver pasticciato autonomamente.

Se sei alle prime armi con il kernel non fare l'eroe e parti dalla configurazione verificata di genkernel, se proprio sai quel che fai allora genkernel ti serve solo per dare un solo comando per installare il kernel.

Non ti dico di più perchè ho già spiegato troppe volte come si usa. Leggi anche cosa c'è scritto in genkernel.conf.

----------

## eleaffar

 *djinnZ wrote:*   

> genkernel non fa altro che prendere una conf preconfezionata (e verificata sicuramente compatibile con le necessità dei vari pacchetti) in /usr/share/genkernel se non ne esiste una in /etc/kernels.
> 
> quindi genkernel --menuconfig e rifinisci[quote="( cd /usr/src/linux ; make help)"... 

 

Quindi mi confermi che non esiste qualche opzione di genkernel o qualche programmino simile che sappia costruirmi un kernel customizzate (ad och) x le mie macchine, senza ridondarmi di moduli che mi potrebbero servire ed il kernel perfetto bisogna costruirselo.

 :Very Happy: 

Bisognerebbe farlo  :Rolling Eyes: 

----------

## djinnZ

Non esiste e non esisterà mai. Al massimo per genkernel si parla (come sviluppo futuro) di disabilitare i moduli hardware inutili e mettere builtin quelli rilevati (lo puoi fare giocando con le opzioni che ti ho segnalato) ma cose come decidere cosa vuoi e non vuoi o modulare e builtin nella sezione ipfilter o qos certo non puoi automatizzarlo e neppure puoi decidere a priori quali scheduler, opzioni di debug, algoritmo di congestion control erc. vuoi.

Senza andare a citare il caso, tutt'altro che infrequente, in cui potresti volere un kernel con il supporto builtin riferito a più macchine diverse tra loro.

Quello che tu chiedi è impossibile al momento.

Ci sono distribuzioni del piffero che tentano questa strada ma perderesti la libertà di personalizzare realmente (con i nuovi i7 puoi decidere di predisporre un kernel valido sia per nvidia che per kms ed intel o staticamente valido solo per una delle due indipendentemente da quello che hai installato).

Quindi o ti becchi il kernel ultramodulare (o qualcosa di estremamente rigido e limitato) e ti accontenti o fai a manina (che è meglio). Su una distribuzione che ti consente di gestire dipendenze e ottimizzazione è insensato pensare di non personalizzare il kernel.

Per sbattersi il meno possibile invece ci sono diversi modi per vedere quali ozioni attivare postati in questo forum, puoi pensare di usare localmodconfig con un kernel live caricato e confrontarlo o puoi andare su un certo sito con l'output di lspci e via dicendo.

In ogni caso se sei alle prime armi parti dal kernel di genkernel (senza usare il suggerimento cretino della guida di andare a sovrascrivere la configurazione in /usr/share) e rifinisci.

L'approccio è personale ma tieni conto che nulla ti vieta di iniziare con genkernel interrompere e continuare con localmodconfig e finire con genkrnel od a manina, usa la "fantasia"... ricordando che in generale tutto il mondo linux/BSD/*ix prende l'avvio dalle gesta di hacker miscredenti che, come tutte le persone naturalmente irreligiose dovrebbero rifiutare aprioristicamente l'approccio a soluzioni "erga omnes" di scarsa flessibilità (meglio una serie di comandi dedicati facili da raccogliere in uno shell script piuttosto che un unico dinosauro dalle mille opzioni).

usando il fottuto google ci sono diversi script in python e perl per fare il confronto dei moduli caricati

----------

