CCorderoR
22/06/03, 23:09:49
Buenas Noches:
He escrito un tutorial sobre el kernel que espero pueda ayudar a algunos usuarios con este sistema operativo:
En este pequeño tutorial quiero mostrar como compilar un nuevo kernel en nuestra maquina Linux, enseñando a la vez pequeños trucos que he ido aprendido a lo largo del tiempo que he dedicado a ello.
Si tenéis cualquier duda preguntarla, así todos aprenderemos algo nuevo. Durante todo el proceso estaré usando un P3 500Mhz con Debian Woody en sus entrañas.
Nuestro primer paso será la descarga del kernel, vamos a compilar la última versión disponible, la 2.4.21.
Utilizando “WGET”, y desde el directorio /usr/src, la bajaremos con la siguiente orden:
wget http://www.kernel.org/pub/linux/kernel/v2....-2.4.21.tar.bz2 (http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.21.tar.bz2)
La descomprimimos: tar jxvf linux-2.4.21.tar.bz2 y creamos un enlace simbólico que nos ayude: ln -s linux-2.4.21 linux (si ya hay un directorio linux, lo borraremos).
http://www.infochaos.com/tutoriales/linux/kernel/imagen_descarga.jpg
Una vez dentro del directorio, tenemos tres formas de seleccionar la compilación del kernel:
-make config (texto, pregunta tras pregunta)
-make menuconfig (en consola, pero de forma grafica a través de ncurses)
-make xconfig (utilizando X11)
En este tutorial utilizaré “menuconfig” por ser la que, personalmente, más me gusta.
http://www.infochaos.com/tutoriales/linux/kernel/imagen_menuconfig.jpg
En un primer vistazo a la pantalla principal podemos ver la versión del kernel arriba (en este caso se ve 2.4.21, “MAJE” es un añadido que personaliza el kernel y que más tarde os enseñaré a poner). Se ven las opciones principales en las cuales habrá que entrar para configurar el kernel.
En este momento voy a intentar ver globalmente las opciones de configuración, sería imposible deciros que opciones tenéis que seleccionar, pues depende de cada equipo y de cada configuración.
Antes de empezar con la configuración de las opciones, hay que distinguir las distintas posibilidades para cada opción del modulo:
-No seleccionado (obvio)
-Seleccionado (incluido en el propio kernel, cargado en cada arranque)
-Modulo (se puede cargar y descargar según las necesidades del usuario)
Mi recomendación es que al compilar el modulo, se incluyan en el kernel las opciones básicas y se ponga como modulo todo lo que sea posible (siempre que se tenga la opción M de modulo), de esa forma se crea un kernel modular y muy versátil.
Ahora listaré las opciones más interesantes, aunque personalmente os invito a probar todas las opciones, siempre que guardéis copia del kernel antiguo, no tendréis problemas.
Code maturity level options ---> No lo recomiendo si no quereís probar drivers “en prueba”, puede crear problemas de estabilidad.
Loadable module support ---> Siempre activado, permite la carga de modulos
Processor type and features --->En esta opción podeís seleccionar el tipo de procesador que teneís, es importante para que el kernel funcione correctamente.
General setup ---> Funciones hardware, se refieren especialmente a opciones de placa madre (se activa el soporte PCMCIA en los portatiles)
Memory Technology Devices (MTD) ---> No es normal tenerlo activado
Parallel port support ---> Soporte del puerto paralelo (impresora)
Plug and Play configuration ---> Soporte Plug and Play, normalmente activado
Block devices ---> Se suele dejar por defecto, activa el soporte de disquetera
Multi-device support (RAID and LVM) ---> No suele ser normal
Networking options ---> Activación de soporte de red, firewall entre otras opciones.
Telephony Support ---> No suele ser normal
ATA/IDE/MFM/RLL support ---> Soporte IDE, suele dejarse por defecto (si se tiene CD-RW hay activar la opción de emulación SCSI)
SCSI support ---> Soporte SCSI, dependiendo de la configuración del equipo.
Fusion MPT device support ---> No suele ser normal
IEEE 1394 (FireWire) support (EXPERIMENTAL) ---> Soporte FireWare
I2O device support ---> No suele ser normal
Network device support ---> Selección de Driver de la tarjeta de Red, en caso de disponer de ella
Amateur Radio support ---> No suele ser normal
IrDA (infrared) support ---> Soporte de Infrarrojos
ISDN subsystem ---> Soporte RDSI
Old CD-ROM drivers (not SCSI, not IDE) ---> No suele ser normal
Input core support ---> Control de dispositivos USB, por ejemplo teclados y ratones
Character devices ---> Sistema de Caracteres, suele dejarse por defecto
Multimedia devices ---> Si se tiene tarjeta de televisión/radio, es una opción que se tiene que activar (soporte overlay)
File systems ---> Sistemas de Ficheros soportados, suele ser recomendable compilar la mayoria como modulos (de forma personal uso ext3, así que lo incluyo en el kernel)
Console drivers ---> Se pueden activar distintas opciones para la consola, yo lo dejo por defecto
Sound ---> Opciones para tarjetas de sonido
USB support ---> Soporte USB, en equipos modernos es indispensable
Bluetooth support ---> Soporte Bluetooth
Kernel hacking ---> No lo recomiendo, se activa Debug, solo para desarrolladores
Library routines ---> Opciones de compresión, realmente no muy documentadas hasta el momento.
En este momento salimos, salvamos las opciones, y ya tenemos todo listo para compilar nuestro nuevo kernel.
Antes de empezar, me gustaría comentaros como podéis “personalizar” vuestro kernel para modificar la versión o añadir un pequeño texto al mismo:
En el directorio /usr/src/linux encontrareis un fichero que tendréis que editar con vuestro editor preferido (pico, nano, joe, vi…):
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 21
EXTRAVERSION = MAJE
Como podréis ver, el “extraversión” os permitirá esto.
Bien, empecemos a compilar el kernel, la primera opción será “make dep”, siguiente a ese tendréis que escribir será “make clean” y “make bzImage”. Para compilar e instalar los módulos tendréis que escribir “make modules” y “make modules_install”.
De forma personal, recomiendo escribir la siguiente cadena (siempre como root):
make dep && make clean && make bzImage && make modules && make modules_install
Sabiendo que el kernel tarda en compilar, podréis iros a tomar un café o coca-cola mientras se realiza el proceso.
Una vez terminado, solo queda un paso dentro de la carpeta del kernel. En la mayoría de los tutoriales comentarían que el paso es “make install”, sin embargo, esta opción instala el kernel en / (directorio root) y muchos de nosotros lo tenemos por ejemplo en /boot. El último truco que comentaré permitirá elegir la carpeta y de esa forma, hacer más rápido y eficaz el proceso. Volvéis a editar Makefile dentro de /usr/src/linux y os buscáis la línea 74 donde veréis:
# export INSTALL_PATH=/boot
Tendréis que quitar el “#” y escribir la carpeta correcta, después de salvar ya podréis hacer “make install”.
Por último tendréis que editar el fichero de configuración de vuestro programa boot (ej: lilo o grub), aquí os copio la configuración de “lilo” para este ultimo kernel:
image=/boot/vmlinuz-2.4.21MAJE
label=Linux
read-only
Una vez rearrancado el pc, solo tendréis que escribir “depmod –a” y ya tendréis vuestro kernel actualizado y personalizado.
Este tutorial puede ser distribuído siempre que se copie textualmente e integro y se cite el autor y el website de origen, www.infochaos.com.
Espero que os sirva para aprender un poco más acerca de las “entrañas” de linux :)
Salu2,
CCorderoR
He escrito un tutorial sobre el kernel que espero pueda ayudar a algunos usuarios con este sistema operativo:
En este pequeño tutorial quiero mostrar como compilar un nuevo kernel en nuestra maquina Linux, enseñando a la vez pequeños trucos que he ido aprendido a lo largo del tiempo que he dedicado a ello.
Si tenéis cualquier duda preguntarla, así todos aprenderemos algo nuevo. Durante todo el proceso estaré usando un P3 500Mhz con Debian Woody en sus entrañas.
Nuestro primer paso será la descarga del kernel, vamos a compilar la última versión disponible, la 2.4.21.
Utilizando “WGET”, y desde el directorio /usr/src, la bajaremos con la siguiente orden:
wget http://www.kernel.org/pub/linux/kernel/v2....-2.4.21.tar.bz2 (http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.21.tar.bz2)
La descomprimimos: tar jxvf linux-2.4.21.tar.bz2 y creamos un enlace simbólico que nos ayude: ln -s linux-2.4.21 linux (si ya hay un directorio linux, lo borraremos).
http://www.infochaos.com/tutoriales/linux/kernel/imagen_descarga.jpg
Una vez dentro del directorio, tenemos tres formas de seleccionar la compilación del kernel:
-make config (texto, pregunta tras pregunta)
-make menuconfig (en consola, pero de forma grafica a través de ncurses)
-make xconfig (utilizando X11)
En este tutorial utilizaré “menuconfig” por ser la que, personalmente, más me gusta.
http://www.infochaos.com/tutoriales/linux/kernel/imagen_menuconfig.jpg
En un primer vistazo a la pantalla principal podemos ver la versión del kernel arriba (en este caso se ve 2.4.21, “MAJE” es un añadido que personaliza el kernel y que más tarde os enseñaré a poner). Se ven las opciones principales en las cuales habrá que entrar para configurar el kernel.
En este momento voy a intentar ver globalmente las opciones de configuración, sería imposible deciros que opciones tenéis que seleccionar, pues depende de cada equipo y de cada configuración.
Antes de empezar con la configuración de las opciones, hay que distinguir las distintas posibilidades para cada opción del modulo:
-No seleccionado (obvio)
-Seleccionado (incluido en el propio kernel, cargado en cada arranque)
-Modulo (se puede cargar y descargar según las necesidades del usuario)
Mi recomendación es que al compilar el modulo, se incluyan en el kernel las opciones básicas y se ponga como modulo todo lo que sea posible (siempre que se tenga la opción M de modulo), de esa forma se crea un kernel modular y muy versátil.
Ahora listaré las opciones más interesantes, aunque personalmente os invito a probar todas las opciones, siempre que guardéis copia del kernel antiguo, no tendréis problemas.
Code maturity level options ---> No lo recomiendo si no quereís probar drivers “en prueba”, puede crear problemas de estabilidad.
Loadable module support ---> Siempre activado, permite la carga de modulos
Processor type and features --->En esta opción podeís seleccionar el tipo de procesador que teneís, es importante para que el kernel funcione correctamente.
General setup ---> Funciones hardware, se refieren especialmente a opciones de placa madre (se activa el soporte PCMCIA en los portatiles)
Memory Technology Devices (MTD) ---> No es normal tenerlo activado
Parallel port support ---> Soporte del puerto paralelo (impresora)
Plug and Play configuration ---> Soporte Plug and Play, normalmente activado
Block devices ---> Se suele dejar por defecto, activa el soporte de disquetera
Multi-device support (RAID and LVM) ---> No suele ser normal
Networking options ---> Activación de soporte de red, firewall entre otras opciones.
Telephony Support ---> No suele ser normal
ATA/IDE/MFM/RLL support ---> Soporte IDE, suele dejarse por defecto (si se tiene CD-RW hay activar la opción de emulación SCSI)
SCSI support ---> Soporte SCSI, dependiendo de la configuración del equipo.
Fusion MPT device support ---> No suele ser normal
IEEE 1394 (FireWire) support (EXPERIMENTAL) ---> Soporte FireWare
I2O device support ---> No suele ser normal
Network device support ---> Selección de Driver de la tarjeta de Red, en caso de disponer de ella
Amateur Radio support ---> No suele ser normal
IrDA (infrared) support ---> Soporte de Infrarrojos
ISDN subsystem ---> Soporte RDSI
Old CD-ROM drivers (not SCSI, not IDE) ---> No suele ser normal
Input core support ---> Control de dispositivos USB, por ejemplo teclados y ratones
Character devices ---> Sistema de Caracteres, suele dejarse por defecto
Multimedia devices ---> Si se tiene tarjeta de televisión/radio, es una opción que se tiene que activar (soporte overlay)
File systems ---> Sistemas de Ficheros soportados, suele ser recomendable compilar la mayoria como modulos (de forma personal uso ext3, así que lo incluyo en el kernel)
Console drivers ---> Se pueden activar distintas opciones para la consola, yo lo dejo por defecto
Sound ---> Opciones para tarjetas de sonido
USB support ---> Soporte USB, en equipos modernos es indispensable
Bluetooth support ---> Soporte Bluetooth
Kernel hacking ---> No lo recomiendo, se activa Debug, solo para desarrolladores
Library routines ---> Opciones de compresión, realmente no muy documentadas hasta el momento.
En este momento salimos, salvamos las opciones, y ya tenemos todo listo para compilar nuestro nuevo kernel.
Antes de empezar, me gustaría comentaros como podéis “personalizar” vuestro kernel para modificar la versión o añadir un pequeño texto al mismo:
En el directorio /usr/src/linux encontrareis un fichero que tendréis que editar con vuestro editor preferido (pico, nano, joe, vi…):
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 21
EXTRAVERSION = MAJE
Como podréis ver, el “extraversión” os permitirá esto.
Bien, empecemos a compilar el kernel, la primera opción será “make dep”, siguiente a ese tendréis que escribir será “make clean” y “make bzImage”. Para compilar e instalar los módulos tendréis que escribir “make modules” y “make modules_install”.
De forma personal, recomiendo escribir la siguiente cadena (siempre como root):
make dep && make clean && make bzImage && make modules && make modules_install
Sabiendo que el kernel tarda en compilar, podréis iros a tomar un café o coca-cola mientras se realiza el proceso.
Una vez terminado, solo queda un paso dentro de la carpeta del kernel. En la mayoría de los tutoriales comentarían que el paso es “make install”, sin embargo, esta opción instala el kernel en / (directorio root) y muchos de nosotros lo tenemos por ejemplo en /boot. El último truco que comentaré permitirá elegir la carpeta y de esa forma, hacer más rápido y eficaz el proceso. Volvéis a editar Makefile dentro de /usr/src/linux y os buscáis la línea 74 donde veréis:
# export INSTALL_PATH=/boot
Tendréis que quitar el “#” y escribir la carpeta correcta, después de salvar ya podréis hacer “make install”.
Por último tendréis que editar el fichero de configuración de vuestro programa boot (ej: lilo o grub), aquí os copio la configuración de “lilo” para este ultimo kernel:
image=/boot/vmlinuz-2.4.21MAJE
label=Linux
read-only
Una vez rearrancado el pc, solo tendréis que escribir “depmod –a” y ya tendréis vuestro kernel actualizado y personalizado.
Este tutorial puede ser distribuído siempre que se copie textualmente e integro y se cite el autor y el website de origen, www.infochaos.com.
Espero que os sirva para aprender un poco más acerca de las “entrañas” de linux :)
Salu2,
CCorderoR