Se pueden obtener las fuentes por FTP anónimo de ftp.funet.fi
, en
/pub/OS/Linux/PEOPLE/Linus
, en un ``mirror'' o en otros
servidores. Típicamente tienen el nombre linux-x.y.z.tar.gz
, donde
x.y.z
es el número de versión. Las versiones se encuentran en
directorios `v1.1
', `v1.2
' y `v1.3
'. El
número mayor es el de la
última versión, en este caso versión de desarrollo. Le sugerimos que
utilice un servidor ``mirror'' de ftp.funet.fi
, por ejemplo:
EE.UU.: tsx-11.mit.edu:/pub/linux/sources/system EE.UU.: sunsite.unc.edu:/pub/Linux/kernel Inglaterra: sunsite.doc.ic.ac.uk:/pub/unix/Linux/sunsite.unc-mirror/kernel Austria: fvkma.tu-graz.ac.at:/pub/linux/linus Alemania: ftp.Germany.EU.net:/pub/os/Linux/Local.EUnet/Kernel/Linus Alemania: ftp.dfv.rwth-aachen.de:/pub/linux/kernel Francia: ftp.ibp.fr:/pub/linux/sources/system/patches Australia: kirk.bond.edu.au:/pub/OS/Linux/kernel España: sunsite.rediris.es:/pub/linux/kernel/sources
Si no tiene acceso al FTP, encontrará una lista de BBS con lo mismo en el grupo comp.os.linux.announce de USENET News.
Entre en la cuenta `root'
y vaya al directorio
/usr/src
. Si instaló
las fuentes cuando instaló Linux, habrá aquí un directorio `linux
',
con las fuentes antiguas. Si quiere preservar esas fuentes (y tiene
espacio de sobra), renombre (con `mv
') ese directorio a
linux-x.y.z
(la versión actual x.y.z la puede obtener con el comando `uname
-r
').
Es importante que antes de descomprimir las nuevas fuentes no
haya ningún directorio `/usr/src/linux
'.
Ahora, en /usr/src
, descomprima las fuentes con `tar xvfzp
linux-x.y.z.tar.gz
' (si solo tiene un fichero .tar, sin .gz, elimine
la z del comando tar
). Los contenidos del fichero se expandirán en
/usr/src/linux
. Vaya ahora a ese directorio y lea el fichero
README. Encontrará una sección `INSTALLING the kernel'. Siga las
instrucciones que allí se digan (aunque en las siguientes líneas le
diremos cómo tiene que hacer casi todo esto).
Nota: Este texto es parcialmente una repetición de lo que hay en el
fichero README
de las fuentes.
El comando `make config
' en el directorio
/usr/src/linux
inicia un
programa shell-script de configuración que le preguntará bastantes
cosas. Requiere que esté instalado bash, con lo que debe existir
/bin/bash
, /bin/sh
o la variable $BASH
.
Ahora se trata de contestar las preguntas, normalmente con sí (`y
')
o no (`n
'). Los manejadores de dispositivos incorporan,
además, la opción de módulo (`m
'), opción interesante puesto
que no incorpora el manejador al núcleo en tiempo de compilación, sino
que se hace durante la ejecución del mismo, cuando sea necesario (por
ejemplo, cargar el módulo PPP solo cuando vayamos a usar el módem). Algunas opciones obvias o poco importantes no son
descritas aquí. Vea la sección ``Otras opciones de configuración''
para descripciones de otras muchas.
Además, cuando configure el núcleo 2.0.x, podrá poner la opción `?', lo que le dará una breve descripción de la misma.
Si no tiene coprocesador matemático (o un 486), debe contestar `y' a esto. Si tiene coprocesador y contesta `y' la emulación será instalada pero no usada, funcionará pero le ocupará memoria innecesariamente. Además, he oído que la emulación es lenta, lo que se traducirá en unas pesadas X-Windows.
Normalmente necesitará este soporte, pues es el de los discos habituales en los PCs. Este manejador no gestiona discos SCSI, para eso está la opción específica que luego veremos.
Ahora se le preguntará si quiere usar ``old disk-only'' y manejadores ``new IDE''. Tiene que elegir uno de ellos. La diferencia principal es que el nuevo (new IDE) maneja controladoras secundarias y CD-ROM IDE/ATAPI, hasta cuatro dispositivos, pero ocupa 4 KB más que el antiguo. Se supone que los nuevos manejadores mejoran también velocidad y fiabilidad, en especial si dispone de dispositivos EIDE.
En principio, contestaría afirmativamente si la máquina estuviera en una red local o conectada a la Internet con SLIP/PPP. Sin embargo, muchos programas, como ocurre con el sistema X Window, requieren el soporte de red, así que lo mejor es contestar `y' siempre. Después se le preguntará si quiere soporte TCP/IP: conteste afirmativamente aun no estando seguro.
Hay controladores de DMA en 386 con problemas para direccionar más de 16 MB de RAM. Contestar `y' en el caso (raro) de que tenga uno de éstos.
Una de las mejores definiciones del IPC está en el glosario del libro del Perl. Curiosamente, los programadores de Perl suelen usar IPC para comunicar sus procesos, así como muchas otras aplicaciones (como el DOOM, sobre todo), por lo que no es buena idea contestar `n' si no se está seguro de lo que hace.
Nota: En anteriores núcleos, la opción era "Usar flag -m486 en el compilador" (Use -m486 flag for 486-specific optimizations)
Tradicionalmente, esto era una optimización compatible con todos los chips, aunque más rápido en la CPU elegida (y en todo caso, ocupaba algo más). Actualmente, esto puede no ser cierto, con lo que deberá elegir siempre la CPU que tenga (aunque la versión de 386 funcionará en todas las máquinas).
Si tiene dispositivos SCSI, conteste `y'. Se le preguntarán entonces más cosas: soporte de CD-ROM, discos y qué clase de adaptador utiliza. Vea el documento SCSI-HOWTO para más detalle.
Si tiene tarjeta de red, o quiere usar PPP, SLIP o PLIP (puerto paralelo usado para conectarse a Internet), conteste afirmativamente. El script le preguntará ahora qué tarjeta tiene y qué protocolo usar.
El programa le preguntará si quiere soporte para los siguientes sistemas de ficheros:
Standard (minix) - Las nuevas distribuciones no crean sistemas Minix, y mucha gente no las usa para nada, pero puede convenir elegirla. Algunos ``discos de rescate'' usan el sistema Minix como formato de sus disquetes, ya que da menos problemas.
Extended fs - Fue la primera versión del sistema extendido, pero ya no se usa. No necesita seleccionarla.
Second extended - Este es el sistema más usado. Seguramente lo usará Vd. también. Seleccione `y'.
xiafs filesystem - Hace mucho pudo ser usado, pero ahora mismo no conocemos a nadie que lo utilice.
msdos - Selecciónelo si quiere acceder desde Linux a sus particiones de MS-DOS o quiere montar disquetes de ese sistema.
umsdos - Este sistema permite añadir a un sistema MS-DOS las características típicas de Unix como nombres largos o enlaces. Sirve para quienes quieran instalar Linux en la partición DOS, pero nada más.
/proc - Uno de los grandes inventos desde la leche condensada. No se
trata de algo que se guarde en el disco, sino de una interfaz por
medio de ficheros con la tabla de procesos del núcleo, usada por
programas como `ps
'. Pruebe a teclear `cat
/proc/meminfo
' o `cat
/proc/devices
'. Algunos shells (rc, concretamente) hacen uso de
/proc/self/fd (en lugar de /dev/fd) para E/S. Debe contestar
afirmativamente a la pregunta: muchas utilidades de Linux lo necesitan.
NFS - Si su máquina está en red y quiere acceder a sistemas de ficheros remotos con NFS, conteste `y' a esta pregunta.
ISO9660 - Típico en los CD-ROMs. Si tiene un CD-ROM, seleccione esta opción.
OS/2 HPFS - En el momento de escribir esto, el soporte HPFS es de sólo lectura.
System V and Coherent - para particiones de sistemas Coherent y System V (otras variantes de Unix para PC).
De acuerdo, teclee `mount
'. La salida será como esta:
blah# mount
/dev/hda1 on / type ext2 (defaults)
/dev/hda3 on /usr type ext2 (defaults)
none on /proc type proc (defaults)
/dev/fd0 on /mnt type msdos (defaults)
Observe cada línea; la palabra que sigue a `type
' es el tipo de
sistema usado. En este ejemplo, los sistemas raíz (/) y /usr usan el
sistema ``second extended'', además usamos sistema ``proc'' y hay montado
un disquete MS-DOS.
Para saber qué sistemas de ficheros usa en el núcleo actual puede teclear
`cat /proc/filesystems
' siempre y cuando tenga al menos
soporte proc.
Otros sistemas de ficheros más raramente usados ocupan también mucho. Quizás le interese meterlos como módulos (vea la correspondiente sección, y vea también la sección ``típicos problemas'' para saber por qué no se recomiendan núcleos que ocupen mucho).
Aquí se activan los manejadores para impresoras (por puerto paralelo), ratones de bus, ratones PS/2 (usado también en muchos trackballs de los portátiles), algunos manejadores de cintas y otros. Conteste según su hardware.
Nota: `Selection' es un programa que le permite usar el ratón para cortar y pegar texto entre consolas virtuales, fuera de las X-Windows. Actualmente no es una opción de configuración, sino un estándar.
Nota 2: `Selection' está bastante obsoleto. Es mucho mejor el programa `gpm', puesto que hace cosas como manejar diversos protocolos de ratones, etc.
Si siente gran necesidad de oir el ladrido del `biff
', conteste `y'
y después otro programa de configuración le preguntará acerca de la
tarjeta de sonido que tiene. Una observación: cuando le pregunte si
quiere instalar la versión completa del manejador, conteste `n' y
ahorrará memoria, aunque tendrá que elegir qué
características desea incluir. Le recomiendo aquí que lea el
Sound-HOWTO donde encontrará mucha más información.
No todas las opciones se han listado ya que cambian mucho y otras
son completamente evidentes (por ejemplo, el soporte 3Com 3C509). Hay
una lista más extensa en el siguiente URL de Axel Boldt
(axel@uni-paderborn.de
):
http://math-www.uni-paderborn.de/~axel/config_help.htmlo por FTP anónimo en:
ftp://sunsite.unc.edu/pub/Linux/kernel/config/krnl_cnfg_hlp.x.yz.tgzdonde x.yz se refieren a la versión del núcleo.
En las últimas versiones (2.0.x) se incluyen estos documentos entre los ficheros de las fuentes del núcleo (directorio Documentation/...).
Traducción del fichero README de Linus:
La configuración ``kernel hacking'' suele dar lugar a un núcleo más grande y/o lento, y puede hacerlo menos estable al configurar algunas rutinas especiales para encontrar errores del núcleo (kmalloc()). Para un núcleo de ``producción'' deberá contestar `n' a la pregunta.
Tras hacer `make config'
, un mensaje le dirá que ya está preparado
el núcleo y que ``revise el fichero Makefile para opciones
adicionales'', etc.
Por tanto, veamos el Makefile
. Probablemente no tendrá que cambiar
nada, pero debe mirarse. Sus opciones podrán cambiarse con el comando
`rdev
' una vez que el núcleo esté compilado.