Introducción ============ Este documento está diseñado para proporcionar una lista de los niveles mínimos de software necesarios para ejecutar los núcleos 2.6, así como proveer de unas pequeñas instrucciones referentes a cualquier «problema» que pueda aparecer mientras intenta «vivir a la última». Si está actualizando desde un núcleo anterior a 2.4.x, por favor, consulte el fichero Changes (Cambios) incluido en los núcleos 2.4.x para encontrar información adicional; mucha de esa información no se repite aquí. Básicamente, este documento asume que su sistema ya es funcional y está utilizando como mínimo núcleos 2.4.x. Este documento está basado originalmente en mi fichero Changes para los núcleos 2.0.x y por ello sus créditos son los mismos que para ese fichero (Jared Mauch, Axel Boldt, Alessandro Sigala, e incontables usuarios a través de la red). Siéntase libre de traducir este documento. Si lo hace, por favor, mándeme una URL donde encontrar su traducción para incluirla en futuras revisiones de este documento. Visite para obtener la traducción al español de este documento en varios formatos. Eine deutsche Version dieser Datei finden Sie unter Última actualización: 29 de octubre de 2002. Chris Ricker (kaboom@gatech.edu o chris.ricker@genetics.utah.edu). Última actualización de la traducción: 19 de agosto de 2004. Autor de la traducción: David Martínez Moreno (ender@debian.org). Requisitos mínimos actuales =========================== ¡Actualice *como mínimo* a estas versiones de software antes de creer que ha encontrado un error! Si no está seguro de qué versión está usando actualmente, el comando sugerido debería decírselo. De nuevo, tenga presente que esta lista asume que ya tiene un núcleo Linux 2.4 funcionando de forma normal. Asimismo, no todas las herramientas son necesarias en todos los sistemas; obviamente, si no tiene ningún hardware PCMCIA (PC Card), por ejemplo, probablemente no necesite preocuparse en absoluto por la versión de pcmcia-cs. o Gnu C 2.95.3 # gcc --version o Gnu make 3.79.1 # make --version o binutils 2.12 # ld -v o util-linux 2.10o # fdformat --version o module-init-tools 0.9.10 # depmod -V o e2fsprogs 1.29 # tune2fs o jfsutils 1.1.3 # fsck.jfs -V o reiserfsprogs 3.6.3 # reiserfsck -V 2>&1|grep reiserfsprogs o xfsprogs 2.6.0 # xfs_db -V o pcmcia-cs 3.1.21 # cardmgr -V o quota-tools 3.09 # quota -V o PPP 2.4.0 # pppd --version o isdn4k-utils 3.1pre1 # isdnctrl 2>&1|grep version o nfs-utils 1.0.5 # showmount --version o procps 3.2.0 # ps --version o oprofile 0.5.3 # oprofiled --version Compilación del núcleo ====================== GCC --- La versión de gcc que se necesita puede depender del tipo de CPU que tiene su computadora. El próximo párrafo se aplica a los usuarios de CPUs x86, pero no necesariamente a los usuarios de otras CPUs. Los usuarios de otras CPUs deberían obtener información en algún otro sitio de la versión de gcc que necesitan. El compilador recomendado para el núcleo es gcc 2.95.x (x >= 3), y es el que debería usar cuando necesite estabilidad absoluta. Puede usar gcc 3.0.x si lo desea, aunque puede que tenga algún problema. Las versiones posteriores de gcc no han recibido demasiadas pruebas de compilación del núcleo de Linux, y hay ciertos fallos (principalmente, pero no exclusivamente, en el núcleo) que han de arreglarse para poder usar estos compiladores. En cualquier caso, usar pgcc en vez de simplemente gcc es querer buscarse problemas. La subrama de gcc 2.96 de Red Hat también se puede usar para compilar este árbol. Ha de asegurarse de que usa gcc-2.96-74 o posterior. gcc-2.96-54 no compilará el núcleo correctamente. Además, por favor, preste atención a la optimización del compilador. Cualquier cosa mayor que -O2 puede no ser acertada. Por motivos similares, si escoge usar gcc 2.95.x o derivados, asegúrese de no usar -fstrict-aliasing (lo que, dependiendo de su versión de gcc 2.95.x, puede obligarle a usar -fno-strict-aliasing). Make ---- Necesitará una versión del make de Gnu 3.79.1 o posterior para construir el núcleo. Binutils -------- Linux en IA-32 ha dejado de usar «as86» en favor de «gas» para ensamblar el código de arranque de 16 bits, y por tanto evitando la necesidad de tener as86 para compilar su núcleo. Este cambio, sin embargo, significa que necesita una versión reciente de binutils. Utilidades del sistema ====================== Cambios estructurales en la arquitectura ---------------------------------------- DevFS ya está en el núcleo. Vea Documentation/filesystems/devfs/* en el árbol de las fuentes del núcleo si quiere conocer los detalles más escabrosos. Ya hay soporte para UIDs de 32 bits. ¡Diviértase! La documentación de funciones en Linux se está transformando en un estilo de documentación dentro del código, que funciona gracias a que cerca de las definiciones de las funciones en el código fuente hay comentarios con un formato especial. Estos comentarios se pueden combinar con las plantillas SGML del directorio Documentation/DocBook para conseguir ficheros DocBook, que pueden entonces convertirse con hojas de estilo DocBook en PostScript, HTML, ficheros PDF, y varios formatos más. Para convertir algo de formato DocBook a otro de su elección, necesitará instalar Jade, así como las hojas de estilo de DocBook necesarias. Util-linux ---------- Las nuevas versiones de las util-linux ofrecen soporte en *fdisk de discos más grandes, soportan opciones nuevas de montaje, reconocen más tipos de particiones, tienen un fdformat que funciona con núcleos 2.4, y otras características estupendas. Probablemente quiera actualizarlas. Ksymoops -------- Si sucede lo impensable y su núcleo produce un oops, necesitará una versión 2.4 de ksymoops para descifrar el informe; lea REPORTING-BUGS, situado en la raíz de las fuentes de Linux, para más información. Module-Init-Tools ----------------- Ahora hay un nuevo cargador de módulos en el núcleo que necesita usar module-init-tools. Es compatible con los núcleos de la serie 2.4.x. Mkinitrd -------- Los cambios del aspecto del árbol de ficheros de /lib/modules también requieren que se actualice mkinitrd. E2fsprogs --------- La última versión de e2fsprogs arregla varios fallos en fsck y debugfs. Obviamente, es una buena idea actualizarlos. JFSutils -------- El paquete jfsutils contiene las utilidades para el sistema de ficheros. Están disponibles las siguientes utilidades: o fsck.jfs - inicia una revisión del fichero de transacciones, y chequea y repara una partición JFS. o mkfs.jfs - formatea una partición JFS. o este paquete también ofrece otras utilidades para el sistema de ficheros. Reiserfsprogs ------------- El paquete de reiserfsprogs debería usarse para reiserfs-3.6.x (núcleos de Linux 2.4.x). Es un paquete combinado y contiene versiones funcionales de mkreiserfs, resize_reiserfs, debugreiserfs y reiserfsck. Estas utilidades funcionan tanto en plataformas i386 como Alpha. Xfsprogs -------- La última versión de xfsprogs contiene las utilidades mkfs.xfs, xfs_db y xfs_repair, entre otras, para sistemas de ficheros XFS. Son independientes de la arquitectura y cualquier versión a partir de la 2.0.0 debería funcionar perfectamente con la versión del código de XFS del núcleo (recomendamos la versión 2.6.0 o cualquiera mayor, debido a mejoras significativas). Pcmcia-cs --------- Se ha implementado parcialmente el soporte de PCMCIA (PC Card) en las fuentes principales del núcleo. Preste atención cuando recompile su núcleo ;-). Además, asegúrese de tener la última versión de pcmcia-cs. Quota-tools ----------- Si quiere usar el nuevo formato v2 de cuotas de disco, necesitará soporte para uid's y gid's de 32 bits. La versión 3.07 de quota-tools o cualquiera más nueva tiene este soporte. Use la versión recomendada o más nueva de la tabla de más arriba. Microcódigo de Intel IA32 ------------------------- Se ha añadido un controlador para permitir actualizar el microcódigo de los Intel IA32, accesible tanto como un fichero regular en devfs como un dispositivo de caracteres normal. Si no está usando devfs puede que necesite hacer: mkdir /dev/cpu mknod /dev/cpu/microcode c 10 184 chmod 0644 /dev/cpu/microcode como root antes de que pueda usarlo. Probablemente también querrá conseguir la utilidad en espacio de usuario microcode_ctl para usarla con esto. Powertweak ---------- Si está usando la versión 0.1.17 o anterior, debería actualizar a la versión 0.99.0 o superior. Utilizar versiones antiguas puede causar problemas con programas que usen memoria compartida. Red === Cambios generales ----------------- Si tiene necesidad de configuraciones de red avanzadas, probablemente debería considerar usar las herramientas de red del paquete ip-route2. Filtrado de paquetes / NAT -------------------------- El código de filtrado de paquetes y de NAT usa las mismas herramientas (iptables) que las versiones anteriores del núcleo, las 2.4.x. Aún incluyen módulos para compatibilidad previa con la sintaxis de ipchains (propia de 2.2.x) e ipfwadm (propia de 2.0.x). PPP --- Se ha reestructurado el controlador PPP para que aguante multienlace y para que permita operar sobre diversos medios de transporte. Si usa PPP, actualice ppp al menos hasta la versión 2.4.0. Si no está usando devfs, ha de tener el fichero de dispositivo /dev/ppp, que puede crear ejecutando: mknod /dev/ppp c 108 0 como root. Si usa devfsd y construye el soporte de ppp como módulos, necesitará lo siguiente en su fichero /etc/devfsd.conf: LOOKUP PPP MODLOAD Isdn4k-utils ------------ Debido a cambios en la longitud del campo del número de teléfono, hay que recompilar o (preferiblemente) actualizar las isdn4k-utils. NFS-utils --------- En los núcleos 2.4 y anteriores, el servidor NFS necesitaba conocer todos los clientes que se supone que iban a acceder a ficheros sobre NFS. Esta información sería entregada al núcleo por «mountd» cuando el cliente montase el sistema de ficheros, o por «exportfs» en el inicio del sistema. exportfs tomaría información de los clientes activos de /var/lib/nfs/rmtab. Este enfoque es bastante frágil, ya que depende de que la información de rmtab sea correcta, lo cual no es siempre fácil, en particular cuando se intenta implementar alta disponibilidad. Incluso cuando el sistema funciona bien, el rmtab se ve poblado por montones de entradas antiguas que nunca se borran. Con 2.6 tenemos la opción de hacer que el núcleo notifique a mountd que ha recibido una petición de un cliente desconocido, y entonces mountd puede dar información de exportación apropiada al núcleo. Esto hace que desaparezca la dependencia de rmtab y quiere decir que el núcleo sólo necesita conocer los clientes activos en cada momento. Para activar esta nueva funcionalidad, necesita ejecutar: mount -t nfsd nfsd /proc/fs/nfs antes de arrancar exportfs o mountd. Se recomienda que todos los servicios NFS estén protegidos de la Internet general por un cortafuegos si es posible. Dónde conseguir software actualizado ==================================== Compilación del núcleo ********************** gcc 2.95.3 ---------- o Make ---- o Binutils -------- o Utilidades del sistema ********************** Util-linux ---------- o Ksymoops -------- o Module-Init-Tools ----------------- o Mkinitrd -------- o E2fsprogs --------- o JFSutils -------- o Reiserfsprogs ------------- o Xfsprogs -------- o Pcmcia-cs --------- o Jade ---- o Hojas de estilo de DocBook -------------------------- o Microcódigo para Intel P6 ------------------------- o Powertweak ---------- o Red *** PPP --- o Isdn4k-utils ------------ o Iptables -------- o Ip-route2 --------- o OProfile -------- o Sugerencias y correcciones ========================== Siéntase libre de mandarme cambios, correcciones, críticas, enfados, dinero, etc. a . ¡Feliz Linux! Si hay algún error en la traducción (por desgracia, algo muy probable) o alguna otra cosa que el traductor tuviera que reconsiderar ;-), por favor, escriba a David Martínez Moreno (ender@debian.org). Prometo contestar. Esta traducción está mantenida por David Martínez Moreno para el Proyecto NuLiEs (NÚcleo de LInux en ESpañol), que puede visitarse en http://nulies.hispalinux.es/ Bajo Licencia Pública GNU.