Compilare il kernel con DEbian
  • In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Visualizzazione risultati da 1 a 3 di 3

Discussione: Compilare il kernel con DEbian

Cambio titolo
  1. #1
    Hail to the Prophet L'avatar di Asriel
    Registrato il
    11-03
    Località
    Roma
    Messaggi
    34.909

    Compilare il kernel con DEbian

    Qualcuno a caso, ad esempio phoenix ( ), mi potrebbe spiegare come si compila il kernel con i coamndi di debian? intendo con qui "fakeroot" ecc. ecc.

    non mi rimandate al top di prometeo perchè non ci ho caito un gatzu

  2. #2
    Utente Gentoo Gnu/Linux L'avatar di []\/[]aStEr-HaCk
    Registrato il
    06-03
    Località
    /dev/sda6
    Messaggi
    1.663
    Io preferisco compilarlo alla maniera classica...


    ed3nuzzo@venice64 ~ $ uname -a
    Linux venice64 2.6.15-gentoo-r5 #1 Wed Apr 12 18:48:03 GMT 2006 x86_64 AMD Athlon(tm) 64 Processor 3500+ AuthenticAMD GNU/Linux

  3. #3
    Utente L'avatar di Phoenix
    Registrato il
    10-02
    Località
    Midwich Street
    Messaggi
    6.699
    Ti incollo la parte relativa della mia guida, se hai dubbi poi chiedi:



    4) Il kernel-package di debian

    Se utilizzate una debian, avrete un tool pensato ad-hoc per semplificare la (ri)compilazione del
    kernel, che funziona sia con i 2.4 sia con i 2.6 indistintamente. A dire il vero potreste utilizzare
    anche il metodo classico descritto in precedenza, funzionerà, ma l'utilizzo del kernel-package
    rende più facile e ordinato il tutto, inoltre è sempre meglio attenersi ai metodi propri di una
    distribuzione per evitare eventuali problemi di incompatibilità in seguito.
    Quindi, come sempre, vediamo prima i requisiti: vi servirà ovviamente il pacchetto kernel-package
    stesso, oltre ai sorgenti del kernel che volete installare, alle modutils (se è un 2.4) o ai
    module-init-tools (se è un 2.6), e alle ncurses per utilizzare il menuconfig. Ovviamente gcc e libc
    sono dati per scontati. Ad esempio se avete deciso di mettere un 2.6.4 potreste dare
    # apt-get install kernel-package kernel-source-2.6.4 module-init-tools libncurses5-dev

    Bene, ora spostatevi in /usr/src e scompattate i sorgenti, cambiando poi il link simbolico linux:
    # cd /usr/src/
    # tar -xjf kernel-source-2.6.4.tar.bz2
    # rm -f linux
    # ln -s kernel-source-2.6.4 linux

    Spostatevi nella directory /usr/src/linux e passate a configurare il kernel: vale quanto detto in
    precedenza, ossia potete copiarci il vecchio config (che trovate in /boot e che copiereste qui con
    il nome ".config") solo se state trattando kernel della stessa famiglia, mentre se passate da un 2.4
    a un 2.6 non fatelo; avrete diverse interfacce disponibili, ma la migliore nonchè valida per i kernel
    di qualunque famiglia è menuconfig. Dunque
    # cd /usr/src/linux
    # cp /boot/config-2.6.0 ./.config
    # make menuconfig

    al posto di menuconfig potete usare oldconfig se state cambiando tra due release (entrambe 2.6.x)
    particolarmente vicine tra loro, dovrete così solo rispondere alle domande relative i cambiamenti tra
    l'una e l'altra. Potete anche usare prima oldconfig e poi menuconfig se dovete fare altre modifiche.
    Fate le vostre scelte come sempre quindi, dopodichè uscite, salvate e preparatevi alla compilazione.
    E' qui che entra in gioco il kernel-package: con due semplici comandi potrete fare un po' di pulizia
    e successivamente compilare kernel e moduli; vi si creerà un normalissimo pacchetto deb che conterrà
    il nuovo kernel da installare normalmente con dpkg.
    Un paio di appunti sulle opzioni che è possibile passare in fase di compilazione: il nome del
    pacchetto che creerete sarà così strutturato:
    * kernel-image-(kernel-version)(--append-to-version)_(--revision)_(architecture).deb

    (kernel-version) è ovviamente la release del kernel (in questo caso 2.6.4), (architecture) è
    l'architettura del vostro calcolatore (i386 nei normali PC), mentre le altre due sono due opzioni
    che potrete passare al comando di compilazione: (--append-to-version) definisce un suffisso che
    andrà a finire direttamente nel nome del kernel, potrete usarla ad esempio per differenziare due
    kernel della stessa release ma compilati in due date differenti. Nel suo nome potrete usare i
    caratteri '-', '.', '+', ma non '_' (underscore). Se non specificate un'append diverso durante una
    ricompilazione, sovrascriverete l'attuale kernel (moduli compresi), quindi è consigliabile usare
    sempre quest'opzione, anche per una questione di ordine. (--revision) invece è un ulteriore suffisso
    che andrà a porsi nel nome del pacchetto deb creato ma non nel nome del kernel; modificare questo
    parametro quindi non vi salverà da eventuali sovrascritture, non è che sia utilissimo a dire il vero,
    il suo nome di default è "10.00.Custom".

    Passiamo quindi all'azione dando i seguenti comandi (sempre dalla directory dei sorgenti):
    # make-kpkg clean
    # make-kpkg --append-to-version=-26mar04 kernel_image kernel_headers

    In questo modo avrete creato due pacchetti deb, l'immagine del kernel e i suoi header (che possono
    servire per qualche applicazione che li richieda espressamente): li troverete in /usr/src e avranno
    nome
    * kernel-image-2.6.4-26mar04_10.00.Custom_i386.deb
    * kernel-headers-2.6.4-26mar04_10.00.Custom_i386.deb

    rispettivamente.
    Per installarli procedete con dpkg:
    # cd ..
    # dpkg -i kernel-image-2.6.4-26mar04_10.00.Custom_i386.deb kernel-headers-2.6.4-26mar04_10.00.Custom_i386.deb

    Al termine dell'installazione vi verranno poste tre domande:
    1) se volete creare un floppy di ripristino (bootdisk).
    Potrebbe essere una buona idea rispondere sì, se non ne avete già uno; in ogni caso potete farlo
    quando volete con mkboot.
    2) se volete installare un bootblock usando l'/etc/lilo.conf attuale.
    Rispondete di no, o tenterà di avviare il nuovo kernel mantenendo le impostazioni del vecchio, e non
    partirà nulla...
    3) se volete sostituire il lilo.conf attuale con uno nuovo predisposto per far partire il nuovo kernel.
    Rispondete di no anche a questa, è meglio fare tutto manualmente, si è più sicuri di quel che si fa :P

    L'unica cosa che vi resta da fare ora è proprio impostare il bootloader, come più volte descritto
    nelle sezioni precedenti. Fatelo dunque, riavviate e controllate che sia tutto a posto.
    Ora potete anche eliminare (o spostare altrove) i pacchetti deb creati, e volendo potete anche
    cancellare il link "linux" in /usr/src.


    He who is not bold enough to be stared at from across the abyss
    is not bold enough to stare into it himself.

Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •