Fichero de Cambios en Linux 2.6 |
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.2.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 http://nulies.hispalinux.es/ para obtener la traducción al español de este documento en varios formatos.
Eine deutsche Version dieser Datei finden Sie unter http://www.stefan-winter.de/html/kernel_2_6_-_changes.html.
Última actualización: 29 de octubre de 2002.
Chris Ricker (kaboom@gatech.edu ó 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).
¡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.
Programa Versión Cómo conocer la versión Gnu C 2.95.3 gcc --version GNU make 3.79.1 make --version binutils 2.12 ld -v util-linux 2.10o fdformat --version module-init-tools 0.9.10 depmod -V e2fsprogs 1.19 tune2fs jfsutils 1.1.3 fsck.jfs -V reiserfsprogs 3.6.3 reiserfsck -V 2>&1|grep reiserfsprogs xfsprogs 2.6.0 xfs_db -V pcmcia-cs 3.1.21 cardmgr -V quota-tools 3.09 quota -V PPP 2.4.0 pppd --version isdn4k-utils 3.1pre1 isdnctrl 2>&1|grep version nfs-utils 1.0.5 showmount --version procps 3.1.13 ps --version oprofile 0.5.3 oprofiled --version
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.
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 está transformándose 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.
Modutils
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
Estos 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:
fsck.jfs inicia una revisión del fichero de transacciones, y chequea y repara una partición JFS. mkfs.jfs formatea una partición JFS. 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.
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/nfsantes 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.
Compilación del núcleo
gcc 2.95.3
ftp://ftp.gnu.org/gnu/gcc/gcc-2.95.3.tar.gz
Make
ftp://ftp.gnu.org/gnu/make/
Binutils
nnbspn ftp://ftp.kernel.org/pub/linux/devel/binutils/
Utilidades del sistema
Util-linux
ftp://ftp.kernel.org/pub/linux/utils/util-linux/
Ksymoops
ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.4/
Module-Init-Tools
ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/
Mkinitrd
ftp://rawhide.redhat.com/pub/rawhide/SRPMS/SRPMS/
E2fsprogs
ftp://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.29.tar.gz
JFSutils
http://oss.software.ibm.com/jfs/
Reiserfsprogs
http://www.namesys.com/pub/reiserfsprogs/reiserfsprogs-3.6.3.tar.gz
Xfsprogs
ftp://oss.sgi.com/projects/xfs/download/
Pcmcia-cs
ftp://pcmcia-cs.sourceforge.net/pub/pcmcia-cs/pcmcia-cs-3.1.21.tar.gz
Quota-tools
http://sourceforge.net/projects/linuxquota/
Jade
ftp://ftp.jclark.com/pub/jade/jade-1.2.1.tar.gz
Hojas de estilo de DocBook
http://nwalsh.com/docbook/dsssl/
Microcódigo para Intel P6
http://www.urbanmyth.org/microcode/
Powertweak
http://powertweak.sourceforge.net/
Red
PPP
ftp://ftp.samba.org/pub/ppp/ppp-2.4.0.tar.gz
Isdn4k-utils
ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/isdn4k-utils.v3.1pre1.tar.gz
NFS-utils
http://sourceforge.net/project/showfiles.php?group_id=1
Iptables
http://www.iptables.org/downloads.html
Ip-route2
ftp://ftp.tux.org/pub/net/ip-routing/iproute2-2.2.4-now-ss991023.tar.gz
OProfile
http://oprofile.sf.net/download/
NFS-Utils
http://nfs.sourceforge.net/
Siéntase libre de mandarme cambios, correcciones, críticas, enfados, dinero, etc. a chris.ricker@genetics.utah.edu. ¡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.