cronopios en espiral

proferamon - GNU/Linux - compilació del nucli

compilació del nucli

Aquesta és una compilació del nucli que vaig fer amb la distribució SuSE 9.2

Si vols també pots accedir a una compilació del nucli per a la Debian Sarge

  1. Abans de començar farem una còpia de seguretat del kernel original i de l'arxiu initrd. Des d'un terminal com a root:
    cp /boot/vmlinuz /boot/vmlinuz.old
    cp /boot/initrd /boot/initrd.old

  2. Comprovem que estan instal·lats els paquets: kernel_source, gcc, automake, xf86tools, tcl y tk, binutils, glibc-devel. Si no ho estesin els instal·lem.

  3. Entrem al directori /usr/src/linux i escrivim:
    zcat /proc/config.gz > .config
    make oldconfig
    exit

  4. Com a usuari escrivim:
    xhost+

  5. Adquirim permisos de root:
    su

  6. Entrem la contrasenya.

  7. Construïm l'arxiu xconfig:
    make xconfig

  8. Fem una còpia de l'arxiu Makefile:
    cp Makefile Makefile.bak

  9. Editem l'arxiu Makefile
    vi Makefile

  10. Canviem la línia EXTRAVERSIÓN per el nou nom del nucli

  11. Esborrem els arxius innecessaris:
    make clean

  12. Construïm la imatge:
    make bzImage (aquest procés pot trigar en funció de l'ordinador)

  13. Comprovar que tot hagi anat bé:
    a /usr/src/linux/arch/<arquitectura>/boot (<arquitectura> sol ser i386) ha d'estar el nou bzImage

  14. Tornem a /usr/src/linux

Si fem servir el gestor d'arrencada LILO:

  1. make bzlilo
    make modules_install
    cp /arch/i386/boot/bzImage /boot/vmlinuz

  2. Mirem quina és la partició d'arrencada
    df | grep '/$'

  3. Editem l'arxiu de configuració d'arrencada

  4. vi /etc/lilo.conf

  5. Afegim les línies
    image = /boot/vmlinuz.old
    label = antic
    initrd = /boot/initrd
    root = /dev/hda7 (el que retorni df | grep '/$')
    append = "resume=/dev/hda6 selinux=0 splash=silent desktop elevator=as"
    lilo
    cp /usr/src/linux/System.map /boot/System.map
  6. Finalment per esborrar els arxius objecte després de la compilació des del directori /usr/src/linux escrivim:
    make clean

Si fem servir el gestor d'arrencada GRUB:

  1. cp /arch/i386/boot/bzImage /boot/vmlinuz
    make modules_install

  2. Editem l'arxiu de configuració:
    vi /boot/grub/menu.1st

  3. Afegim les línies
    image = /boot/vmlinuz.old
    label = antic
    initrd = /boot/initrd
    root = /dev/hda7 (el que retorni df | grep '/$')
    append = "resume=/dev/hda6 selinux=0 splash=silent desktop elevator=as"

  4. Copiem l'arxiu System.map al directori d'arrencada
    cp /usr/src/linux/System.map /boot/System.map

  5. Finalment per esborrar els arxius objecte després de la compilació des del directori /usr/src/linux escrivim:
    make clean


inici

copyleft © 2005 ramón lópez
última actualització 15/03/05 12:22
Es permesa la distribució i la còpia literal d'aquest artícle en la seva totalitat i per qualsevol mitjà sempre que es conservi aquesta nota.
El meu agraïment a Òscar Batet per cedir-me l'espai perquè s'allotgi aquesta web