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.