Guía Práctica de Debian GNU/Linux 2.2 (Potato) para nuevos usuarios


A. Gustavo González.
agonzale@cica.es

Sevilla, 21 de septiembre de 2000
Versión 0.1, 7/9/2000, JEV
Versión 0.2, 21/9/2000, JVG

Este documento es libre. Puede copiarlo, distribuirlo y/o modificarlo bajo los términos de la Licencia GNU Para Documentación Libre, versión 1.1 o cualquier versión posterior publicada por la Free Software Foundation.

Este artículo ha sido producido por La Espiral y su versión mas reciente se puede encontrar en http://www.laespiral.org


Resumen

En este documento se presenta una guía práctica para la instalación y post-instalación de la distribución Debian GNU/Linux 2.2r0 (Potato) mediante los tres CDs oficiales y el non-us/non-free.

Introducción

Esto pretende ser, como el titulo indica, una guía práctica de la instalación y post-instalación de Debian GNU/Linux 2.2 r0 (Potato) para nuevos usuarios de Debian (aunque ya conozcan otras distribuciones Linux). Este documento puede ser copiado, modificado y distribuido sin ninguna restricción. Si alguien lo actualiza y reforma, por favor, envíe una copia a mi dirección . Voy a referirme en esta guía a la instalación del sistema empleando los tres CDs "Oficiales" y el CD "No Oficial" (con programas que solo pueden ser usados fuera de los Estados Unidos, non-US, y programas que no son totalmente libres, non-free) de binarios i386 suministrados por la empresa OPENCD.COM cuya dirección web es la siguiente: www.opencd.com. Los CDs están etiquetados como:

Los 3 primeros discos (oficiales) se pueden obtener libremente en muchísimos servidores que replican a Debian. La sección non-US del cuarto CD también se puede obtener incluida con el primer CD en las réplicas de Debian fuera de los Estados Unidos (el llamado CD1 non-US). La sección non-free es la que mas varia entre diferentes distribuidores, pues algunos se limitan a replicar la sección non-free de Debian, mientras que otros incluyen algunos programas extras que consideren convenientes (en el caso de opencd.com, han incluido la versión de Helix de Gnome y una versión de KDE).

Espero que lo que sigue sirva de ayuda a los nuevos usuarios de Debian GNU/Linux.

Preparativos

Lo que aquí se indica es de sobra conocido por los usuarios de Linux, pero de todos modos lo pongo: Debéis tomar nota de las características de vuestro hardware: Ratón (tipo, puerto, 2 o 3 botones...), módem (tipo, puerto, velocidad ˇcuidado con los WINMODEMS!), monitor (tasa de frecuencia horizontal y refresco vertical, si es multifrecuencia), tarjeta gráfica (tipo, chipset, memoria), tarjeta de red (clase, denominación, dirección io...), etc.

Ha de haber preparado un espacio suficiente para Linux en dos particiones (mediante FIPS + fdisk o PartitionMagic 5): una de intercambio (swap) de contenido variable (si tenéis más de 32 Mb de RAM y va a ser para uso doméstico, 64 Mb de swap será más que suficiente) y otra Linux native ext2 de al menos 1 Gb. Hoy día podéis daros el lujo de disfrutar de discos duros de gran capacidad. Si queréis grabar CDs, trabajar con imágenes, etc podéis destinar 4Gb para Linux.

Otra cosa: si disponéis de conexión no intermitente (via eth0, no ppp), debéis anotar la dirección IP de vuestra máquina, máscara de subred (subnet maske), dirección de difusión (broadcast), puerta de enlace (default gateway), host name, domain name y las IP de los DNS que os ha proporcionado el admin de vuestro ISP. Tened formateados 2 disquetes de 1.4Mb si vuestra BIOS no permite CDs autoarrancables.

La instalación

Como ya he dicho disponemos de los 4 CDs binarios para i386. El CD1 bastaría para comenzar la instalación si nuestra BIOS permite CDs autoarrancables. En caso contrario debemos crear dos disquetes (floopies) de instalación haciendo una copia binaria de dos ficheros que encontraremos en el directorio install del CD1: rescue.bin y root.bin. Rescue.bin es el disco de inicio de la instalación que también sirve como disco de rescate para recuperar una instalación dañada. Root.bin contiene el sistema Linux mínimo para llevar a cabo la instalación. Podemos crear estos discos desde Windows o desde otro Unix/Linux. Desde Windows, explorando el CD, en la carpeta install encontraremos junto con los dos archivos binarios, la utilidad rawrite2, un ejecutable para copiar estas imágenes. Si por ejemplo la unidad del lector de CD en Windows es e:, al hacer un doble click de ratón sobre rawrite2(.exe), aparecerá la ventana de MSDOS :



      Enter source file name: e:\install\rescue.bin
      Enter destination drive: a:
    

Luego te pide que introduzcas un disquete formateado en el drive A: y pulses ENTER. Rotula el disco como RESCUE DISK. Repite el mismo proceso para root.bin y rotula el disco como ROOT DISK.

Para el caso de unix, los discos pueden crearse usando el comando dd. Si el CD1 está montado en /cdrom, el proceso para el RESCUE DISK (puesto en la disquetera A: = /dev/fd0) sería:



      dd if=/cdrom/install/rescue.bin of=/dev/fd0 bs=1k count=1440
    

Repite el proceso para ROOT DISK con if=/cdrom/install/root.bin, y ya tendrás los dos disquetes necesarios.

Bueno: al turrón. Voy a suponer el caso mas restrictivo de tener que usar los dos disquetes. Si podéis arrancar desde el CD1, aún más fácil. Poned el CD1 en vuestro lector de cdrom. A continuación introducid el rescue disk y reiniciad el ordenador...Al poco, saldrán los típicos mensajes y el prompt boot: Hacemos [ENTER] y al ratito se nos pide el root disk:



      Insert root floppy disk to be loaded into RAM disk and press ENTER 
    

(Lo hacemos y comienza el espectáculo :))

Configure the keyboard

Escogemos la línea

qwerty/es: Spain

Initialize and activate a swap partition

nos indica la partición que se usará para swap, p.ej.,

/dev/hda3 : Linux swap

(scan for bad blocks?) y hacéis lo que corresponda

Initialize a linux partition

(p.ej., /dev/hda4):

/dev/hda4



	Do you want to retain Linux kernel 2.0 compatibility? (a gusto del consumidor)
	Skip scan bad blocks? (como queráis)
	--------Creating file system--------
	Mount as the root filesystem?
	/dev/hda4 must be mounted as / (OK)
      

Install operating system kernel and modules



	Select installation medium
	  CDROM (si hay mas de uno --lectora, grabadora-- debéis escoger)
      

Es recomendable aceptar con ENTER lo siguiente



	Choose Debian archive path
	/instmnt
	Select Debian archive path
	default: The default stable archive
	

      

Configure device driver modules

Si estás usando instalación con los 4 CDs no hay que hacer nada aquí, excepto si tienes una conexión directa a la red y quieres cargar el controlador de tu tarjeta ethernet; pero eso siempre puedes hacerlo luego con la instrucción modconf, asi que acepta



	Exit
	Finished with these modules 
	Return to the previous menu
      

Configure the hostname

Preguntarán por el nombre de la maquina. Escoge el que mas te guste. Si das a ENTER por defecto sera debian. Luego preguntaran si estas conectado a la red. Si la conexión se va a establecer via PPP, entonces hay que responder <No>. Si estamos conectados mediante una red eth0 nos pedirán también el nombre de dominio y nuestra IP, la IP de la puerta de enlace, y los DNS. Si se mete la pata no importa porque al final podemos editar /etc/init.d/network y cambiar lo que queramos. Si la respuesta fue <Sí>, seguiremos con:

Configure the network

Configuration for eth0

Do you want to use DHCP or BOOTP to automatically configure... (ˇNo! Mejor a mano)

<No>

Do you want to manually configure this interface?

<Yes> (Es lo mejor, saber lo que uno se hace)

Y ahora viene una serie de preguntas para configurar la red:

y ya está.

Install the base system

Select installation medium:

CDROM , etc igualito que antes en Install operating system kernel and modules .

Configure the base system

(Busca en el panel izquierdo Europe (ENTER). Luego con la tecla pásate al panel de la derecha y escoge Madrid (ENTER))

(Si tienes otro sistema operativo a parte de Linux no configures el reloj a GMT, sino a hora local: es decir escoge <No>)

Make Linux bootable directly from hard disk

Where should the LILO boot loader be installed?

/dev/hda : Install LILO in the MBR (no es recomendable si tienes otros sistemas operativos)

/dev/hda4 : Install LILO in the target boot sector (Ideal cuando disponemos de un bootloader, como el bootmagic o el OS2 boot loader para arrancar diversos sistemas operativos)

Puede ocurrir que debido a la configuracion del disco duro, la BIOS no permita instalar LILO en la partición raíz de Linux. Esto puede ocurrir fundamentalmente si hemos sobrepasado el limite de los 1024 cilindros o a veces si está en una partición lógica. Si ocurre algún problema como este no importa, arrancaremos con loadlin o con un disquete (desaconsejable porque tarda mucho en cargar). De todos modos responde <No> a la pregunta

Do you want to install the MBR anyway?

Y a continuación pararemos a instalar LILO en un disquete formateado (es bueno tenerlo a mano por si acaso).

Alternate: Make a boot floppy

Change disk

Place a blank floppy disk in the floppy disk driver and press ENTER (Lo hacemos)

Formatting the floppy...

Creating a filesystem on the floppy...

Copying the operating system kernel

Reboot the system

Reboot the system?

<Yes> Pero antes de que lo hagáis considerad:

Reiniciad la maquina... y continuamos con la instalación.

Debian System configuration

si decimos que no, entonces

Y entonces les diremos que sí (hay que encriptar los passwd de alguna de las dos manera. Si no lo hacéis y administráis una red, tarde o temprano llegara el intruso para birlar el /etc/passwd)

Ahora hay que establecer el password del root y re-escribirlo para confirmar

Shall I create a user account?

<Yes> (Por supuesto. Aunque estemos solos en casa no debemos nunca andar por ahí como root si no es para hacer las labores propias del administrador, pues cualquier equivocación podría provocar un desastre. Máxime si tenemos varios usuarios)

Tenéis que introducir el nombre de la cuenta de usuario y la contraseña (dos veces).

Shall I remove pcmcia packages?

<Yes> (Evidentemente, si no usáis pcmcia, mejor es borrarlos)

Do you want to use a ppp connection to install the system?

<No> porque estamos instalando desde CDs.

Ahora se producirá un barrido del CD1 en el lector de CD-ROM y a continuación comenzará la configuración del apt (Apt configuration). Esto es muy importante para evitar quebraderos de cabeza: Si disponemos de varios CDs (3 oficiales y 1 no oficial) conviene que apt los escanee uno a uno. Ya lo ha hecho con el primero; así que cuando pregunte

Scan another CD?

Debéis expulsar el CD1 del lector y sustituirlo por el siguiente (CD2)

Luego respondéis que <Yes> (atención que por defecto es <No> y vuelve a serlo así después de cada escaneo)

....Se produce el escaneo....

Y después repetís los mismos pasos hasta que hayáis escaneado todos los CDs (si tenéis algún otro como el de Helix-Gnome + KDE de opencd, pues, también). Cuando acabéis, aparecerá:

Apt is now configured and should be able to install Debian packages

Add another Apt source

<No> (Por ahora. Luego ya descomentaremos cosas del archivo /etc/apt/sources.list para bajarnos nuevos paquetes via ftp)

ATENCIÓN Llegamos a la instalación de paquetes de software en el sistema Debian. Hay dos formas de hacer la selección: La avanzada (Advanced), que no la vamos a considerar para un novicio (pues además de tener las ideas muy claras y usar el programa dselect es bastante lenta) y la simple que consiste en escoger colecciones de aplicaciones preestablecidas. Convendría que os leyerais en el CD1 los documentos en español que están en /install/doc/es/ con un interesante manual de dselect para principiantes.

De este modo, seleccionamos la opción simple y aparecerá un menú con las colecciones a instalar:

Select task package install (pongo unas cuantas e incluso intercaladas subrayando las que pienso son mas importantes para el recién llegado...pero hay alrededor de 40)

-------------------------------------------------------------------

[ ] C ++ Dev ( C++ development)

[ ] C Dev (C development)

[ ] Database Pg (Postgre SQL database)

[ ] Debian Devel (Debian package development)

[ ] Debug (Debugging of C++, C,..)

[ ] Devel common (Development in various languages)

[ ] Dialup (Dialup utilities)

[ ] Dialup isdn (queda claro)

[ ] Dns Server

[ ] Fortran

[ ] Gnome App (GNOME applications and utilities)

[ ] Gnome desktop

[ ] Gnome net

[ ] Imap (imap server)

[ ] Laptop

[ ] Newbie help (;-D)

[ ] News server

[ ] Object Dev (Object C development)

[ ] Python (Python scripts)

[ ] Samba

[ ] Science (science basic tools)

[ ] Sgml (Sgml & XML authoring and editing)

[ ] Sgml Dev

[ ] Spanish (8->)

[ ] TclTk

[ ] TclTk Dev

[ ] Tex (Tex/LaTeX environment)

[ ] X window system (Complete)

[ ] X window system core (core components)

----------------------------------------------------------------

Se seleccionan con la barra espaciadora. Cada uno que escoja lo que quiera y pueda. Yo escogí Desarrollo C y C++, Debug, Dialup, Fortran, Gnome (Apps, desktop y net), Python, Science, Sgml y Sgml Dev, Spanish, TclTk y TclTk Dev, TeX y X windows (por razones de mi trabajo y para disfrute personal)

Una vez hecha la selección damos a Finish (las otras teclas dan información sobre las aplicaciones señaladas y ayuda).

Aparecerá entonces la pregunta ...

If you have a PCI video card...(es el momento de gestionar su configuración)

Si la tienes responde <Yes> y al asunto.

Ahora apt buscará en la base de datos que ha elaborado en los barridos de los CDs y empezará a instalar los paquetes correspondientes a las colecciones que hemos seleccionado. De vez en cuando pedirá que cambies el CD del lector (algo semejante al yast de SuSE) e irá desenpaquetándolos. Sírvete un refresco y espera un ratito...pero atento que hay que responder algunas preguntas.

...setting libpaperg

Default paper name? (estará en letter, así que poned a4)

...setting up exim (/usr/sbin/eximconfig) (Exim es el MTA usado por Debian ˇmucho mas sencillo que sendmail y qmail)

Automatic configuration of your mail system by asking a number of questions. (Podéis consultar luego eximdoc y /usr/doc/exim/spec.txt)

Ahora te suelta una serie de opciones. Si te conectas via PPP como la mayoría de los usuarios domésticos escoge la opción (2):

Internet site using smarthost: You receive internet mail on this machine (either directly by SMTP or by running a utility such as fetchmail). Outgoing mail is sent using a smarthost. Optionally with address rewritten. (Esta claro, eh?)

Enter value:2

...Y empiezan las preguntas...

Enter value (default 'el nombre de la maquina'):

Enter value (default'none'):transmetita.com (por ejemplo XDDDDD)

Enter value (default 'none'):

Enter value (default 'none'):

Enter value (default 'n'):

Enter value (no hay default):

Enter value ('none' si no se redirige):

...Se acabo la configuración del exim

NOTA: Luego hay que leerse un poco la documentación de exim y retocar el fichero de configuración /etc/exim.conf para que funcione adecuadamente...y aquí cada maestrillo tiene su librillo. Si uno es novato y quiere empezar a utilizar el correo electrónico pronto y sin problemas así como leer grupos de news sin configurar casi nada...mejor es que instale primero Netscape 4.73 (Communicator, Messenger y Navigator) para mantenimiento y ya aprenderá más tranquilamente a configurar su MTA (exim, sendmail, qmail) para enviar el correo, su MDA (fetchmail+procmail) para recibirlo y su MUA (pine, mutt) para leerlo y componerlo. Las news las almacenará con el proxy-caché leafnode de su servidor de news y las leerá con slrn o gnus. O montará un verdadero servidor de news como inn y las procesará con sucks... Primero lo fácil para poder aprender lo que aparentemente se nos antoja difícil.

Do you want configure wvdial now?

Como queráis, pero quizás sea mejor usar luego pppconfig, o usar el pppdialer de GNOME.

Atención que llegan las X window:

No default X server previously set

Do you want to make the VGA16 Xserver the default? <n> (No!!. Ahora no porque no se como se las ingenia que todavía no funciona el ratón con XF86Setup y además no hemos seleccionado el servidor que corresponda mejor a nuestra tarjeta gráfica. En mi caso será el SVGA pues tengo una tarjeta S3 Virge GX2 (algo carrozona pero que me va muy bien).

NOTA:

...Si te aparece 'Packages failed to install. Retry?' di que <Yes> sin miedo y no te acongojes si todo acaba aquí y te aparece el login del sistema. Esto puede ocurrir cuando se instalan al principio un montón de paquetes. Voy a suponer lo peor.

Tranquilamente entra como root (sí ahora sí) y luego haz dselect (deberás haberte leído un poco como funciona esta gran utilidad pero poco intuitiva al comienzo)

Después de pasar por Access vas directamente a Install (te saltas el Update y Select) y entonces continuará instalando lo que quedó por hacer...te volverá a pedir que le cambies de CDs y seguirá preguntando ˇAnimo!.

(Ya va a funcionar el ratón)

Mira la configuración que tiene y si es la correcta la aceptas. A partir de ahora, el ratón funcionará en la consola. En mi caso el protocolo era:

gpm -m /dev/psaux -t ps2 -Rms3

NOTA: En el proceso de instalación del ratón, si alguno de los ítems no lo sabes escribe help en lugar de ninguna opción y presentará una lista de la misma. Creo que durante la instalación no hace ninguna prueba para caracterizar el ratón. Si después de la configuración, no funciona el ratón porque nos hemos equivocado, no importa. Después de la instalación y en modo consola como root, hacemos



	/usr/sbin/gpm-mouse-test
      

para caracterizarlo. Y cuando lo tengas claro (que deberías saberlo antes de la instalación) lo re-configuras con



	/usr/sbin/gpmconfig
      

Luego, automáticamente se reiniciará el servidor gpm.

A gusto del debian user.

Por fin termina la instalación...

luego Config para configurar los paquetes,

luego Remove para eliminar software no deseado y

luego Quit para salir.

La Post-instalación

Configuración de las X Window

Tenemos que configurar las X. No se porqué (a lo mejor solo me ha pasado a mí con la Potato) solo me ha cargado el servidor VGA16 (que es un servidor general que puede valer para configurar las X, pero es preferible instalar el más adecuado a nuestra tarjeta de video). Como el servidor que corresponde a mi S3 Virge GX2 (AGP) es el SVGA hago (como root)

dselect

Pasamos por Access, Update y al llegar a Select buscamos la cadena SVGA (invocamos la búsqueda tecleando / (que nos presenta en la barra inferior el carácter ?) Y a continuación escribimos 'svga' y vamos viendo en que paquete aparece la cadena. La búsqueda se continúa con \, hasta que encontremos el paquete buscado (si está, claro ;-/). En mi caso lo encuentro, lo señalo (con +, leeros el manualito de dselect) y luego como siempre, Install, Config, Remove y Quit.

Ahora es el momento de hacer la instalación gráfica de las X con la herramienta XF86Setup. Hacemos, pues

XF86Setup

Y a partir de ahora vamos configurando paso a paso cada ítem gráficamente mediante clicks y arrastres con el ratón.

El procedimiento es muy intuitivo porque en la barra superior de la ventana aparecen botones correspondientes a los elementos que hemos de configurar: Mouse, Keyboard, Card, Monitor, Mode Selection y Other. Empezamos con el ratón mismo (mouse): ya estará bien configurado y simplemente si es un ratón de dos botones conviene activar la emulación con tres botones.

NOTA: Puede ocurrir en el caso de que nuestro ratón sea ps2 y haya sido configurado previamente y lanzado como demonio (gpm -m /dev/psaux -t ps2 -Rms3, que al configurar las X aparezca no como /dev/psaux, sino como Microsoft gpmdata (pseudodevice, repeater data for gpm mouse daemon). No os preocupéis y p'alante. (apply)

En el teclado (keyboard) debéis seleccionar el de 102 teclas internacional y el idioma Spanish (apply)

En el apartado de la tarjeta gráfica (Card) debéis seleccionarla de la lista. En mi caso se trata de una S3 Virge GX2 (generic). Podemos pasar al detailed setup y veremos arriba seleccionado el servidor X correspondiente a la tarjeta en cuestión, en mi caso, de nuevo es el SVGA. Podemos indicar la cantidad de memoria de la misma (la mía tiene 4Mb de video RAM) y si lo sabemos, mas opciones (chipset, ramdac, Clockchip) pero NO ES NECESARIO; basta con escoger la tarjeta y con mucho indicar la memoria.

Para configurar el Monitor debemos escribir en los dos panelitos superiores bajo la denominación de Monitor sync rates los intervalos de frecuencias horizontales y verticales del mismo que las debéis saber (mirad la documentación). El mío tiene de frecuencia horizontal el intervalo 30-69 (kHz) y de vertical el rango de 50-120 (Hz).

Los modos gráficos (Mode selection) permiten elegir la resolución de los gráficos así como la profundidad de color expresada en bits por pixel (bpp). El número de colores se puede calcular como 2 **profundidad (2 elevado al valor de profundidad de bpp). Así, 8 bpp corresponden a 256 colores, 16bpp a 65536, 24bpp a casi 17 millones y 32 bpp (true color) a más de cuatro mil millones. Las tarjetas gráficas almacenan el contenido de los píxeles en memoria de acceso aleatorio, conocida como vídeo RAM. El número de colores y la resolución de pantalla admitido por una tarjeta gráfica depende de su video RAM. Por ejemplo: Si quiero una resolución de 1024 x 768 pixels y una profundidad de color de 16 bpp, la cantidad de memoria necesaria será: 1024 x 768 pixel x 16 bits/pixel = 12582912 bits = 1572864 bytes (8 bits = 1byte) = 1.6 Mbytes (aprox.). Si tengo una tarjeta de 4 Mbytes puedo mantener esa resolución a 24 bpp (necesita unos 2.4 Mbytes) y a 32 bpp (alrededor de 3.2 Mbytes). Con una tarjeta de 1 Mbyte no puedo conseguir resolución de 1024x768 ni siquiera con el mínimo de profundidad ( 8bpp). Hacemos las cuentas y seleccionamos la resolución y la profundidad que queremos. En mi caso escogí 1024x768pixel y 16bpp.

Ya solo queda hacer click en el siguiente y último botón de la barra superior (Other) y comprobar que tiene activada la secuencia de escape de las X, con las teclas Alt+Ctrl+Backspace y hacemos click en Done, con lo cual después de unos momentos nos saldrá el panel donde nos dice la ruta en que se almacenará la configuración (/etc/X11/XF86Config) y si todo ha ido bien seleccionaremos Save the configuration and exit y ˇse acabó la configuración de las X! La próxima vez que inicies tu Debian se activará el login gráfico (seguramente) mediante el xdm (X desktop manager) que se ejecutará en el arranque y se continuará (respawn) aunque quieras escapar de él. Ahora simplemente para pasar ya a modo gráfico puedes hacer como usuario

startx

y seguramente se cargará el gestor de ventanas WindowMaker. Si deseas vislumbrar en seguida tu flamante GNOME podemos hacer la chapuza siguiente: Sal de las X, crea en tu /home/usuario el fichero .xinitrc y escribe dentro con tu editor favorito (los mios son vim o emacs) la línea

exec gnome-session

y sálvalo. Vuelve a hacer startx y ya lo verás. De todos modos seguramente de ahora en adelante a partir del próximo inicio el login será gráfico y entrarás directamente en las X. Si quieres pasar a una consola lo puedes hacer con Alt+Ctrl+Fx (x de 1 a 6) y vuelves a la pantalla gráfica con Alt+Ctrl+F7.

Loadlin

Antes que se me olvide, si resulta que quieres usar loadlin desde tu windows ahora es el momento de prepararlo todo. Sigue como root y monta en /mnt la partición de tu Windows 98 (que sera p. ej. /dev/hda1) mediante



	debian:~# mount -t vfat /dev/hda1 /mnt
	debian:~# cd /mnt
	debian:/mnt# mkdir loadlin
	debian:/mnt# cd /boot
	debian:/boot# ls
      

y verás que entre los archivos se encuentra vmlinuz-2.2.17 que es nuestro kernel de arranque. Vamos a copiarlo al directorio loadlin que hemos hecho en la partición de windows 98 (que coincidirá con la unidad C:\ en DOS/WINDOWS) con el nombre de 'vmlinuz'

debian:/boot# cp vmlinuz-2.2.17 /mnt/loadlin/vmlinuz

Pon ahora el CD1 en el lector de cdrom y móntalo



	debian:/# mount -t iso9660 /dev/hdb /cdrom
	debian:/# cd /cdrom/tools/
	debian:/cdrom/tools# ls
	

      

y verás entre otros archivos a lodlin16.zip.

Cópialo y descomprímelo en /tmp:



	debian:/cdrom/tools# cp lodlin16.zip /tmp
	debian:/cdrom/tools# cd /tmp
	debian:/tmp# unzip lodlin16.zip
	
	
      

Unzip debe estar instalado (si no hacerlo mediante dselect).Al descomprimir se producirá el directorio lodlin16 que contiene dos ficheros fundamentales: loadlin.exe y linux.bat



	debian:/tmp# cd lodlin16
	debian:/tmp/lodlin16#
      

Edita ahora con tu editor favorito el fichero linux.bat y verás su contenido:



	rem
	Sample DOS batch file to boot Linux.
	rem
	First, ensure any unwritten disk buffers are flushed:
	smartdrv /C
	rem
	Start the LOADLIN process:
	c:\loadlin\loadlin
	c:\loadlin\zimage
	root=/dev/hdb2
	ro
	vga=3	
      

debemos cambiar /dev/hdb2 por nuestra partición Linux: /dev/hda4 (en nuestro ejemplo)

y luego lo salvamos.

Ahora, después de esto, copiamos estos dos ficheros en el directorio loadlin que habíamos creado en la partición de Windows:

debian:/tmp/lodlin16# cp loadlin.exe linux.bat /mnt/loadlin/

y ya está todo listo

Si estás escribiendo desde una xterm en las X, sal de ahí y desde la consola haz un reboot (o directamente Alt+Ctrl+Del). Inicia Windows 98 con el bootmanager que tengas y una vez allí: ve con el explorador de Windows a la carpeta c:\loadlin. Marca el fichero linux.bat con el ratón y selecciona en el menú de edición 'Copiar'. Vamos al escritorio, pulsamos el botón derecho del ratón y seleccionamos 'Pegar Acceso Directo'. Marcamos el acceso directo recién hecho con un click del ratón y pulsando su botón derecho seleccionamos 'Propiedades'. Escogemos la solapa 'Programa' y pulsamos en 'Avanzado...', luego marcamos la casilla 'Modo MS-DOS' y confirmamos con 'Aceptar'. Después pulsamos en 'Cambiar Icono...' y escogemos el que mas nos guste (El del capirote de mago con varita mágica por ejemplo <(8^) ). Podemos cambiar la leyenda del icono (linux.bat) por otra mas adecuada como 'Acceso Debian 2.2'. Al hacer doble click sobre el icono, saldrá primero una advertencia de que vamos a entrar en modo MS-DOS y luego ...accederemos a Debian. (Esto lo he sacado de mi manual de SuSE 6.4)

NOTA: Es posible pasar parámetros con loadlin como se hace con lilo, pero no lo comentaré. Leeros el manual de loadlin que viene en lodlin16.zip y mirad el ejemplo test.par.

Configuración de la tarjeta de red

Si estando directamente conectados a la red mediante tarjeta ethernet y no cargamos en el núcleo los controladores como módulos, ahora es el momento de hacerlo. Tenemos evidentemente que tener los datos de nuestra tarjeta. En mi caso de trata de una típica SMC Ether EZ con io = 0x2a0. El correspondiente driver es el smc-ultra. Hacemos como root modconf y seleccionamos net. Allí se encuentran los controladores correspondientes a tarjetas de red como módulos cargables. Buscamos el módulo smc-ultra (SMC Ultra support) y lo instalamos. En este caso nos aparecerá en la pantalla:

----------------------------------------------

smc-ultra

io=0 (It will complaint if you don't supply an "io=0xNNN")

irq=0 (IRQ val. read from EEPROM)

(Probeports: 0x200, 0x220, 0x240, 0x280, 0x300, 0x340, 0x380)

Depends on 8390.o

-----------------------------------------------

Lo que significa que yo tengo que escribir como parámetro io=0x2a0 (que ya sabía), mientras la irq se va a leer automáticamente. También dice que depende del módulo 8390.o, que también habrá de ser cargado. Pues bien introducimos el valor anterior como parámetro e instalamos el módulo. Luego al volver al menú net vemos que automáticamente se ha cargado también el 8390 (ˇlógico!)

Ahora hacemos

Exit Finished with these modules y salimos de ahí. Si todo ha ido bien y hacemos ifconfig, aparecerá además del bloque de loopback (lo) el de la interfaz ethernet (eth0).

Configuración de la impresora

Antes de nada miraremos con lsmod y comprobaremos que no están instalados por defecto los módulos parport ni parport_pc, que son necesarios para el funcionamiento de una impresora en paralelo. Debemos de cargar los módulos con la herramienta modconf ejecutada como root. Seleccionamos la opción misc e instalamos parport y parport_pc para que se carguen en el núcleo sin opciones ni parámetros. Si hacemos de nuevo lsmod, veremos que ya están.

Usemos ahora dselect para cargar el paquete magicfilter con todas sus dependencias:

Ejecutamos dselect y como siempre pasamos secuencialmente por Access, Upgrade y Select...Entonces buscamos la cadena magicfilter ( tecleando / ). Seleccionamos dicho paquete y todos los que recomienda o sugiere: enscript, libjpeg-gif, libtiff-tools, psptools, recode y djtools. Pasamos a Install, luego a Config, Remove y Quit. Ya están todos instalados. Ahora ejecutamos

magicfilterconfig --force (--force para ya existe un fichero /etc/printcap original que sera sobreescrito)

y seguimos sus indicaciones. En mi caso tengo una Epson Stylus Color 600:



	#Printer 1
	Full name: Epsilon Stylus Color 600
	Short name: stc600
	Full device path: /dev/lp0
	Input Filter (Aparecen en pantalla): StylusColor-600@720dpi
      

cuando acabemos de rellenar el último printer, y salga la cabecera del siguiente, finalizamos poniendo 'done' en el Full name. En nuestro caso acabamos así:



	#Printer 2
	Full name: done
      

.... Te hace un resumen ...

Is this OK? (y/n)

Luego para comprobar hacemos

lpr /etc/printcap y aparecerá nuestro fichero de cola de impresión. En mi caso es:



	#
	# Copyright (c) 1983 Regents of the University of California.
	# All rights reserved.
	#
	# Redistribution and use in source and binary forms are permitted
	# provided that this notice is preserved and that due credit is given
	# to the University of California at Berkeley. The name of the University
	# may not be used to endorse or promote products derived from this
	# software without specific prior written permission. This software
	# is provided ``as is'' without express or implied warranty.
	#
	#       @(#)etc.printcap        5.2 (Berkeley) 5/5/88
	#
	# This file was generated by /usr/sbin/magicfilterconfig.
	#
	lp|stc600|Epson Stylus Color 600:\
	         :lp=/dev/lp0:sd=/var/spool/lpd/stc600:\
                 :sh:pw#80:pl#72:px#1440:mx#0:\
                 :if=/etc/magicfilter/StylusColor-600@720dpi-filter:\
                 :af=/var/log/lp-acct:lf=/var/log/lp-errs:
  

No comento las entradas del fichero porque eso es algo que encontraréis en cualquier manual de Unix y son muy intuitivas.

Escuchar música

Ahora es muy fácil conseguir configurar nuestra tarjeta de sonido si no es muy peregrina porque ya existe apoyo para sonido en el kernel en forma modular. El ejemplo lo voy a poner con mi tarjeta de sonido, una clásica entre las clásicas: una SoundBlaster 16. (Todavía me acuerdo cuando tenía la Debian 2.0 (Hamm) que tuve que recompilar el kernel monolíticamente para que funcionara). Es muy importante recopilar toda la información acerca de la tarjeta de sonido a partir de la documentación o del Panel de Control de Windows viendo las propiedades de los dispositivos, para saber las direcciones de entrada/salida (io), las solicitudes de interrupción (irq), el acceso directo a memoria (dma, dma16), etc.

En mi caso:

Creative SoundBlaster 16

irq=5

dma=1

dma16=5

sb io = 0x220-0x22f

mpu_io = 0x330-0x331

adlib_card io = 0x388-0x38b

Tenemos que instalar los módulos necesarios para sonido con modconf; que son:

sound (OSS sound modules)

soundcore (sound card support)

soundlow (OSS sound modules)

La verdad es que instalando el primero se cargan los otros dos. Comprobadlo con lsmod.

Luego hay que instalar también los siguientes módulos:

uart401 (Yamaha OPL3-SA1 audio controller)

sb (SoundBlaster) con las opciones io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330

adlib_card (FM synthetizer for YM3812/OPL-3 support) con la opción io=0x388

A continuación hacemos cat /dev/sndstat y aparece:

------------------------------------------------------------------

OSS/Free:3.8s2++-971130

Load type: Driver loaded as a module

Kernel: Linux darkstar 2.2.13 #22 Wed Oct 20 17:32:52 CDT 1999 i686

Config options: 0

Installed drivers:

Card config:

Audio devices:

0: Sound Blaster 16 (4.13) (DUPLEX)

Synth devices:

0: Yamaha OPL3

Midi devices:

0: Sound Blaster 16

Timers:

0: System clock

Mixers:

0: Sound Blaster

-------------------------------------------------------------------

OK! Si metemos un CD de música en nuestro lector y manualmente lo accionamos, lo escucharemos. Pero hacerlo así (aunque yo es lo que prefiero por sencillez) puede a otro parecer cutre y preferir por ejemplo hacerlo con el CD player del GNOME. En tal caso no le funcionará...todavía. Supongamos el caso de tener dos dispositivos de lectura de cdrom: un lector típico, /dev/hdd y un lector/grabador, /dev/hdb. Admitamos que en la instalación se usó el dispositivo /dev/hdb, con lo cual será el que apunta a /dev/cdrom. Si nos vamos al escritorio GNOME seleccionamos CD-player y en la configuración cambiamos /dev/cdrom por /dev/hdd. Pero aun no funciona después de esto...porque no tenemos permiso de acceso a una serie de dispositivos. Para que todos los usuarios de la máquina puedan escuchar música sin tener que pulsar manualmente la tecla del lector hay que dar los permisos adecuados:

chmod 666 /dev/dsp /dev/audio /dev/hdd

La próxima vez que ingresemos en el escritorio GNOME ya se producirán los eventos de sonido (si están funcionales). Y al activar el CD-player funcionará y escucharemos música "con magno artificio" .

Antes de terminar voy también a decir como configurar tarjetas PCI como la Creative SoundBlaster PCI 64 o128. Estas tarjetas vienen provistas de chips del tipo Ensonic ES1370 ó ES1371. Para instalar el controlador correspondiente hacemos modconf, nos vamos a misc y allí cargamos el módulo es1370 ó es1371 (miramos antes el chip de la tarjeta). Cualquiera de ellos necesita también el módulo soundcore, pero se carga automáticamente al hacerlo con uno de los primeros. Solo con esto ya se puede escuchar música con el lector de CDs.

NOTA: Estas tarjetas no soportan el dispositivo /dev/sndstat ni permiten la reproducción directa con cat y /dev/audio. No tienen soporte MIDI por hardware, pero podemos parchearlo descargando el paquete timidity.

Conexión PPP

En principio utilizaremos la herramienta pppconfig, que es la genuina de Debian (no el vwdial). Para ello haremos como root

pppconfig

y seleccionamos

Create a connection <OK>

(Voy a crear una conexión llamada alehop usando los datos de la conexión gratis que ofrecía alehop.com --hoy llamado eresmas.com-- pero que me funciona perfectamente)

---Provider Name---

Borramos la palabra 'provider' y escribimos 'alehop' <OK>

---Configure Nameservers (DNS)---

Escogemos 'Static' porque alehop.com tiene unas IP fijas para tales DNS

(*) Static Use Static DNS <OK>

---IP number---

Introducimos la dirección IP del DNS principal

62.81.16.197 <OK>

Luego nos pedirá la del secundario

62.81.0.1 <OK>

---Authentication method for alehop---

Escogemos PAP

PAP Peer Authentication Protocol <OK>

---User name---

Sustituimos lo que hay por

050@alehop <OK>

---Password---

Sustituimos lo que hay por

gratis <OK>

(ˇque barbaridad, poniendo el password de mi ISP, para que lo vea cualquiera XDDDD!)

---Speed---

Velocidad del módem. Se recomienda dejar el valor

115200 <OK>

---Pulse or Tone---

Seleccionamos

(*) Pulse <OK>

---Phone number---

Escribimos

955000123

---Choose modem config method---

En lugar de escoger <Yes> con lo cual se hace una configuración automática, como sabemos el puerto serie de nuestro modem, decimos que <No>

y lo escribimos nosotros a continuación:

----Manually Select Modem Port---

(en mi caso está en com2, es decir /dev/ttyS1)

/dev/ttyS1 <OK>

Ahora te da un resumen

---Properties of alehop---

Number 955000123 Telephone number

User 050@alehop ISP user name

Password gratis ISP password

Speed 115200 Port speed

Com /dev/ttyS1 Modem com port

Method PAP Authentication method

Escojamos a continuación

Finished Write files and return to main menu <OK>

y después

Quit Exit this utility <OK>

ˇSe acabó!

De todos modos creo conveniente incluir en nuestro archivo /etc/resolv.conf los DNS del proveedor:

---------------------------

search alehop.com

nameserver 62.81.16.197

nameserver 62.81.0.1

---------------------------

Para la conexión (como root) usaremos la herramienta pon <nombre preoveedor>, monitorizaremos lo que pasa con plog y cerraremos la conexion con poff

>pon alehop

(escucharemos el click del modem si es interno)

esperamos un poco y saldrá algo como

>Local: 62.82.85.62 --> Remote: 62.81.56.40 ppp0

para ver todos los mensajes haremos

>plog (y vereis todo)

Podemos comprobar nuestra conexión haciendo

>ifconfig

y veremos que además del bloque de loopback (lo) está el de PPP (ppp0). Podemos probar a hacer ping, traceroute, telnet...y cuando queramos cerrar la conexión, escribimos

>poff (oiremos de nuevo el click)

Bueno, el que lo desee puede configurar su conexión gráficamente usando el GNOME pppdialer que se parece mucho al kppp del KDE.

Hispanizando Debian

Después de la instalación, aparte de la localización de las letras del teclado, que corresponden al español, no hallamos nada que nos lo recuerde porque no podemos escribir la eñe ni acentuar las vocales y todos los mensajes aparecen en inglés. Al que le guste hispanizar su Debian, no pierda tiempo y siga estas sencillas instrucciones.

La consola

Si hemos realizado correctamente la instalación, habremos cargado el juego de caracteres del teclado español que se encuentra en /usr/share/keymaps/i386/qwerty/es.map.gz que se habrá almacenado como /etc/console-tools/default.kmap.gz, para que en el arranque el script /etc/init.d/ keymaps-lct.sh nos lo instale adecuadamente. Sin embargo veremos que aunque cada letra esta en su sitio del teclado, no visualizamos ni la ñ ni las vocales acentuadas. Para conseguir esto para todos los usuarios de la maquina editamos el fichero /etc/inputrc y descomentamos la línea set convert-meta off, de manera que quede así:

-----------------------------------------------------------

# /etc/inputrc - global inputrc for libreadline

# See readline(3readline) and `info readline' for more information.

#Be 8 bit clean.

set input-meta on

set output-meta on

# To allow the use of 8bit-characters like the german umlauts, comment out

# the line below. However this makes the meta key not work as a meta key,

# which is annoying to those which don't need to type in 8-bit characters.

set convert-meta off

-----------------------------------------------------------

Cuando iniciemos una nueva shell, veremos que ya aparecen las vocales acentuadas y la ñ.

La primera línea sin comentar del archivo, permite trabajar con 8 bits; la segunda que se conserve también a la salida del terminal (es decir, que cuando pulsamos <ñ> salga la ñ y no su valor numérico, y la tercera que no se conviertan como secuencias de escape.

Pero no todo funciona como debiera. Si hacéis por ejemplo (no necesariamente como root)

mkdir cañón

y hacéis luego

ls -l

vereis una línea

drwxr-xr-x 2 gustavo users 4096 Sep 5 15:16 ca??n

Esto se debe a que el comando ls no trabaja con caracteres de 8 bits. Podemos parchearlo, pero la solución integral la veremos luego en el apartado Locales.

Otro problema aparece con vi y con less. Si montáis (como root) el CD1 de Debian 2.2 en /cdrom

y hacéis

vi /cdrom/install/dos/es/install.es.txt (el documento de instalación en español)

observareis que el título es:

Instalación de Debian...

en lugar de

Instalación de Debian...

Si lo leéis usando el comando

less /cdrom/install/dos/es/install.es.txt

aparecerá

Instalaci<F3>n de Debian...

Esto también puede parchearse poniendo

export LESSCHARSET=latin1 en /etc/profile, pero la solución la veremos en el epígrafe Locales.

X Window

Para asegurarnos de que se ha cargado el teclado español en las X miraremos en el fichero /etc/X11/XF86Config la sección Keyboard y nos aseguraremos que existen las líneas

XkbModel "pc102" y

XkbLayout "es"

Si miramos en nuestro fichero de configuración

encontramos la sección :

Section "Keyboard"

Protocol "Standard"

XkbRules "xfree86"

XkbModel "pc102"

XkbLayout "es"

EndSection

y efectivamente, deben poder verse las vocales acentuadas y la ñ. De todos modos, este método no es perfecto porque muchas aplicaciones bajo X Window tienen su propia configuración o carecen de soporte para caracteres extendidos.

Locales

Se conoce por 'Locales' a los rasgos culturales característicos de un país, como los caracteres especiales, la forma de representar la fecha, etc...En Linux cada proceso funciona en un determinado entorno que llamaremos LOCALE donde se establece como ha de comportarse cada proceso según las peculiaridades del idioma y país.

Si por ejemplo hacemos date, obtenemos

date

Tue Sep 5 15:07:31 CEST 2000

Luego el entorno LOCALE no es el nuestro, sino el americano (por defecto). Para poder usar nuestro entorno LOCALE, definiremos la variable de entorno LANG como:

export LANG=es_XX

siendo XX=ES (español de España), MX (de México), CO (de Colombia) o AR (de Argentina). (En mi caso particular puse export LANG=es_ES)

ahora obtenemos

date

mar sep 5 15:07:31 CEST 2000

De repente, además ahora funciona adecuadamente el ls -l:

drwxr-xr-x 2 gustavo users 4096 Sep 5 15:16 cañón

y también leemos correctamente los acentos y eñes con vi y less

por lo tanto, editaremos (como root) el fichero /etc/profile y haremos permanente la definición de la variable LANG. He ahí como queda.



	  # /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
	  # and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
	  PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games"
	  if [ "$BASH" ]; then
	    PS1='\u@\h:\w\$ '
	  else
	    if [ "`id -u`" -eq 0 ]; then	  
	      PS1='# '
	    else
              PS1='$ '
	    fi
	  fi
	  export PATH PS1
	  #Españolización de Debian
	  export LANG=es_ES
	  umask 022
	

De este modo, los mensajes de diversas aplicaciones (Lyx, Netscape...) las veremos en español. Para terminar, si vamos a usar Tex/Latex/LyX y queremos que las palabras se corten de acuerdo con nuestras reglas, no basta con tener el diccionario, sino que hemos de hacer como root

texconfig

luego escogemos HYPHEN y después latex (o pdflatex, etc; pues al hacerlo con uno, lo hacemos con todos ;-))

entonces entramos en modo de edición vi y debemos descomentar

% spanish

luego salimos del editor guardando (:wq) y ya está. Podemos hacer también un REHASH y largarnos.

Personalizando nuestra Debian

Navegación, correo y noticias

Como ya hemos dicho, si somos principiantes y estamos todavía acostumbrados al windoze o hasta ahora éramos usuarios finales, más vale que para empezar nos instalemos el Netscape Communicator 4.73, que aunque consume recursos es hasta que aparezca Mozzila estable, el bastión fundamental del linuxero novato para el disfrute de internet: Es un excelente navegador y además tiene posee un eficaz gestor de correo electrónico que integra un MUA para la lectura y composición del correo, un "MTA" que envía nuestras misivas al smarthost (smtp-outgoing ISP server) de nuestro proveedor de correo y un "MDA" que lo recoge del servidor pop del mismo. Fácil de configurar, es el medio más rápido y sencillo para la comunicación en internet. Además también dispone de un "aceptable" cliente de news que nos permite leer y componer mensajes de los grupos de noticias del servidor configurado.

Pero si ya tenemos algo de solera en linux, quizás optemos por procedimientos más genuinos. Para la navegación en consola el paquete lynx y su homófono "links" (algo mejor) son una delicia. Para la gestión del correo electrónico, podemos escoger como MTA (Mail Transfer Agent) para "enviar" correo directamente o a través de un smarthost (el SMTP mail server de nuestro ISP), entre exim (que se instala por defecto), sendmail 8.9.3 que es el más extendido en el mundo unix y qmail (solo las fuentes). Yo personalmente prefiero sendmail por su extremada flexibilidad (aunque hay que vigilar los posibles agujeros de seguridad) y porque en el fondo soy un carroza de tomo y lomo : ). Como DMA (Mail Delivery Agent) para distribuir el correo a nuestra cuenta, me gusta la combinación fetchmail+procmail. El primero lo baja del servidor pop de nuestro ISP y el segundo lo filtra y coloca en nuestra cuenta como nosotros lo hayamos configurado. Excelente para el spam y la estructuración del correo en carpetas. Como MUA (Mail User Agent): Para leer, guardar o eliminar correo, así como para componerlo me gusta pine, pero especialmente mutt. Mutt es extremadamente configurable y moldeable y permite firmar y encriptar mensages con PGP o GPG. Para la lectura de las news me gusta usar el proxy-cahé leafnode, que se baja las news del servidor de nuestro ISP y las podemos leer luego oof-line usando el excelente lector slrn. No se me puede olvidar hablar de emacs-gnus para procesar nuestro correo y leer las news. Emacs es un "entorno de trabajo" que tiene integradas multitud de funcionalidades. Es conveniente pensar en instalar GPG y darle apoyo con mutt/slrn o emacs/gnus.

Gestores de ventana y Escritorios

Aquí, como de costumbre "Aleluya, cada uno con la suya" . Al que le guste uno en especial, que lo instale. GNOME (Escritorio)+Enlightenment (gestor) es una virguerida española, pero consume un montón. Yo uso WindowMaker y me va de perlas. Aunque en Debian 2.2 Potato no se ha hecho mucha justicia con KDE, en Woody, volverá con los nuevos bríos de las Qt-GPL.

Si alguno no quiere que arranque el xdm (X desktop manager) o gdm (GNOME desktop manager) en el login puede desinstalarlo con apt-get remove o simplemente quitarlo de los scripts de inicio.

Editores y Entornos de desarrollo.

Existen multitud de editores, pero yo me quedo con aquellos dos que más solera tienen en el mundo unix: vi (vim, elvis,...) y emacs (20). Verdaderas torturas para los neófitos, llegan a hacerse excelentes herramientas para las cuestiones fundamentales de la edición. Vi es más ligero y menos complejo que emacs, pero como ya he dicho emacs es en esencia un entorno de trabajo y desarrollo: podemos usarlo como editor de sgml/xml, como IDE para diversos leguajes, incluyendo emacs-lisp, etc..Con estos editores podemos escribir documentos en LaTeX, xml, sgml...

Disponemos de algunos front-ends como LyX que es un editor WYSIWYM (Lo que ves es lo que significa) fundamentalmente para LateX y SGML. Exporta ficheros .tex que tratados luego adecuadamente y procesados con pdflatex genera documentación en formato pdf. Los ficheros .sgml pueden convertirse en LateX, postscript, html...

Aparte de emacs y joe existen otros entornos integrados de desarrollo (IDE) como gide o xwpe, que tiene apoyo (ˇno digais "soporte" !) para varios lenguajes y procesadores. E incluso herramientas RAD (Rapid Application Development) que son constructores visuales de GUIs (Graphical User Interfaces) como glade o visual-tcl. Glade puede generar código C, C++, ADA 95 y Perl. Esto solo son los entremeses.

Suites ofimáticas

A la espera de la futura suite desarrollada por el proyecto GNOME (y fundamentalmente por Helix-Gnome), lo único que tenemos en Debian es Abiword, un procesador de texto en la línea de Word. Toda vía tiene muchas carencias, pero es un buen comienzo para el software Libre. La buena noticia es que Sun va a liberar StarOffice con licencia GPL: http://www.openoffice.org y también algunos podrán disfrutar de esta excelente Suite

. Mientras tanto es posible instalar StarOffice 5.2 pero se trata de software "patentado" (no escribais propietario).

Visualizadores y procesadores de imágenes

Para leer los archivos postscript necesitais gv (una mejora de ghostview) que seguramente ya estará instalao. Para lod ficheros pdf, debeis instalar el programa acroread (Adobe Acrobat Reader), y para el procesamiento de imágenes el excelente GIMP.

Servidores web y FTP

Si disponeis de una conexión directa (universidad, empresa) a la red podeis utilizar el servidor Apache para empezar. Es conveniente instalar php como módulo y PosgreSQL para gestionar vuestras bases de datos. Para la elaboración de la documentación web podeis instalar el magnífico programa bluefish.

Si quereis disponer de un servidor FTP, instalad el wu-ftp y configuradlo adecuadamente.

Seguridad

Cuando uno se conecta a internet en casa con una conexión INTERMITENTE (módem vía PPP) con asignación dinámica de IP no es necesario llevar a cabo mucha labor de seguridad. Lo que debemos hacer es deshabilitar todo servicio que con seguridad no vayamos a dar. Por un lado eliminar los servicios de arranque directo que se inician al arrancar el sistema excepto quizá sendmail (no los usareis jamás con conexión intermitente) y por otro los de arranque bajo demanda en /etc/inet.conf (quitadlos todos, menos auth si disfrutais con el IRC). Si teneis una conexión permanente y un número fijo de IP de máquina, entonces estais en la red y tendreis que hacer un balance entre los servicios que pretendeis proporcionar y la seguridad que deseais. Los servicios proporcionados en el arranque debeis asociarlos con reglas de cortafuegos (tipo filtrado de paquetes con ipchains) y los de demanda los gestionareis con tcp-wrapper (poniendo cuidado en los ficheros /etc/hosts.allow y /etc/hosts.deny). Pero esto es otra historia que merece una atención especial que no puedo dar aquí. Para ver los servicios que ofrece vuestra máquina podeis hacer



	netstat -atu | grep '*:*' | more
      

y así os hareis una idea de ello.

Apt-get para instalar y eliminar paquetes

Aunque personalmente me gusta dselect, para la instalación y desinstalación de paquetes, ya que usamos apt, podemos utilizar el la utilidad apt-get:



      apt-get install paquete
    

que instala 'paqueteXXX.deb' como se encuentra en la base de datos que ha hecho de los CDs. (o si se han descomentado algunas entradas en /etc/apt/sources.list, usando el sitio http o ftp de debian.org o uno de sus espejos, lo buscará on-line)



      apt-get remove paquete
    

desinstala 'paqueteXXX.deb' del sistema.

Pero además podeis hacer



      apt-get upgrade
    

Para instalar las últimas versiones de los paquetes accesibles en /etc/apt/sources.list (cuya entrada debe contener un servidor ftp de debian.org)...Vamos, vamos, leeros el man apt-get.

Modificando los scripts de inicio

La orden update-rc.d actualiza automáticamente los enlaces de los scripts de inicio (estilo System V) /etc/rcrunlevel.d/NNname a scripts /etc/init.d/name. Podemos utilizar dicho mandato para instalar nuestros propios scripts de modo que se arranquen al inicio o podemos usarlo para eliminar scripts que no queremos que se ejecuten en el inicio.

Para instalar nuevos scripts haremos:



      update-rc.d nombre_del_script defaults 
    

Si usamos el modificador defaults, update-rc.d establecerá los enlaces simbólicos para que se arranquen los servicios en los runlevels 2345 y se paren en los runlevels 016. El script /etc/init.d/nombre_del_script tiene que existir antes de que usemos el comando.

Para eliminar scripts haremos



      update-rc.d nombre_del_script -f remove
 

De este modo se rompen los enlaces simbólicos con el archivo /etc/init.d/nombre_del_script. En teoría, el guión nombre_del_script debe haber sido ya eliminado antes de hacer el comando, pero con la opción -f, n o es necesario haberlo quitado previamente.

La recompilación del núcleo

Después de la instalación de Debian 2.2, disponemos de un núcleo altamente modular que permite muchísimas posibilidades para configurar el sistema a nuestro gusto (ya hemos visto la impresora y la tarjeta de sonido), pero hay algunas cosas que implicarán la necesidad de recompilar el núcleo como por ejemplo para usar grabadoras de CD IDE. Pero uno recompila el núcleo cuando quiere pasar de una versión a otra; p. ej. del kernel 2.2.12 al 2.2.17. Existe un modo particular en Debian para la recompilación del núcleo, pero prefiero la forma tradicional que por supuesto también funciona y es universal.

Lo primero será conseguir las fuentes del nuevo kernel que queremos instalar. Si se trata de uno nuevo, que no está en los CDs habrá que buscar las fuentes en debian.org mediante apt-get install (con el sitio http o ftp de debian.org incluído en el archivo /etc/apt.sources.list). Si nos dice que "Sorry, kernel-source-2.X.X is already the newest version" , pues habrá que buscar con nuestro navegador habitual (lynx, links, Netscape) en www.kernel.org. Voy a considerar como ejemplo la recompilación de un kernel genérico 2.X.X para tenerlo a nuestra medida.



      uname -a
      Linux debian 2.2.17 # Sun Jun 25 09:24:41 EST 2000 i686 unknown
    

Aí corroboramos el núcleo que tenemos instalado es el 2.2.17. El lugar por defecto para albergar al núcleo es en /usr/src/ (ó /usr/local/src/) pero observamos que está vacío. Luego aunque lo tenemos compilado como /vmlinuz, no tenemos las fuentes en el sistema. Para ello habremos de instalarlas mediante el archivo fuente kernel-source-2.X.X.tar.bz2 que lo habremos conseguido en la red.



      cp kernel-source-2.X.X.tar.bz2 /usr/src/
    

De este modo, nos aparecerán las fuentes del núcleo en /usr/src/kernel-source.2.2.17.tar.bz2. Arrancamos las X, abrimos un terminal (xterm, kvt) y como root hacemos cd /usr/src y descomprimimos las fuentes con



      tar -Ixvf kernel-source-2.X.X.tar.bz2
    

(La opción -I es para descomprimir bz2 como la -z es para descomprimir gz)

Luego hacemos cd kernel-source-2.X.X y comenzamos la compilación (Pongo toda la ruta del prompt porque si hacemos algo adicional intermedio con cambio de directorio, no es posible realizar la compilación con mke a menos que enos encontremos en este directorio)



      debian:/usr/src/kernel-source-2.2.17# make xconfig
    

De este modo nos aparecerá el panel gráfico de botones que debemos seleccionar adecuadamente. Hay que hacer notar que el kernel que hemos descomprimido sólo tiene unas cuantas opciones auxiliares activadas por defecto, así que ˇcuidadín que no se olvide nada!. Podéis desactivar las que ya están (n), activarlas monolíticamente en el núcleo (y) ó bien como módulo (m), que os dará un núcleo compilado más ligero, pudiendo instalar los diferentes módulos cuando queramos (con modprobe, mejor que insmod) o con modconf, haciéndo que se carguen al arrancar. Sólamente algunas puntualizaciones referentes a los apoyos que hay que activar (aparte de las que hay por defecto) en los distintos apartados.

Loadable module support

Enable loadable module support

Kernel module loader (para que puedan cargarse automáticamente)

General setup

Parallel port support

PC-style hardware

Block devices

Déjalos tal cual excepto si vas a recompilar el kernel para hacer funcionar tugrabadora IDE con emulación SCSI. Para ello, desactiva

Include IDE/ATAPI CDROM support

y activa:

SCSI Emulation support

loopback device support

Network options

Aparte de las por defecto, y si quieres utilizar filtros de paquetes para aumentar la seguridad de tu sistema, activa:

Network firewalls

IP firewalling

SCSI support

En el caso de que tengas algún dispositico scsi o si has hecho emulación para una grabadora ide, debes activar

SCSI support

SCSI CDROM support

SCSI generic support

Network device support

Si la conexión es intermitente via módem, activa

PPP support

y si estás conectado a la red directamente mediante una tarjeta, busca los controladores para ella. Seguramente será una ethernet, así que estará en el menú Ethernet (10 o 100 MB)

Character devices

Parallel print support

Support IEEE 1284 status readback

(con ello podremos volcar archivos a la impresora cat archivo > /dev/lp0). Luego buscar en Mouse support para seleccionar el tipo de ratón si no está por defecto.

Filesystem

activa las opciones auxiliares siguientes:

DOS FAT fs support

VFAT (Windows 95) fs support

y si vas a usar una grabadora para CD, sería conveniente

Microsoft Joliet CDROM extension

Luego, dentro del submenú Network filesystem, activar NFS y SMB (Samba si los vais a utilizar), y dentro del submenú Native language support, hay una serie de opciones que habrá que activar:

Codepage 437 (United States, Canadá)

Codepage 850 (Europe)

NLS ISO 8859-1 (latin1)

Sound card support

Ante la variedad de tarjetas, aquí no hay regla fija. Para mi SoundBlaster16, tengo que activar

Sound Card Support

Persistent DMA Buffer

OSS sound modules

100% SB Compatibility

Yamaha OPL3 audio controller

FM Synthesizer (YM3812/OPL-3) support

Hay otros botones que se pueden seleccionar, cada uno tiene un equipo particular y puede usar dispositivod por rayos infrarrojos, ISDN, ver la tele con linux, tener un scanner (compatible),...

Ahora nos vamos al menú principal y allí hacemos seleccionamos el botón Save and Exit, con lo cual volveremos a nuestra terminal y allí haremos:

Ahora se habrán creado los diversos módulos cargables para el núcleo bzImage que acabamos de recompilar. Cuando hagamos make modules_install, éstos se instalarán en el directorio /lib/modules/2.X,X pero en el caso de que estuvieramos recompilando la misma versión del núcleo, los módulos del núcleo actual y los del acabado de recompilar irían aparar al mismo directorio, /lib/modules/2.X.X, produciéndose una mezcla de los módulos de ambos núcleos (que compilados tendrán soportes diferentes) y que producirán problemas tipo ...unresolver symbol... en el arranque. Por lo tanto, en tal caso, antes de instalarlos, debemos renombrar el directorio que contendrá los módulos de la siguiente manera:

mv /lib/modules/2.X.X /lib/modules/2.X.X-old

y entonces podremos hacer tranquilos

con lo cual se creará el directorio nuevo /lib/modules/2.X.X con los módulos correspondientes a nuestra selección.

Ahora algunos hacen make bzlilo para actualizar, pero yo prefiero ser cauteloso, guardar las opciones antiguas por prudencia y además hacerlo todo a mano. Vamos a sustituir la imagen actual del núcleo que estamos usando por el recién compilado. La imagen nueva se llama bzImage y es el archivo (con todo el path): /usr/src/arch/i386/boot/bzImage. La actual es /vmlinuz. Vamos a renombrarlos:

mv /vmlinuz /vmlinuz-old

cp /usr/src/arch/i386/boot/bzImage /vmlinuz

Ahora cuidadín: Si nuestro archivo /etc/lilo.conf contenía:



	# Generated by liloconfig
	# Specifies the boot device
	boot=/dev/hdc3
	# Specifies the device that should be mounted as root.
	root=/dev/hdc3
	# Install the specified file as the new boot sector.
	# If INSTALL is omitted, /boot/boot.b is used as the default.
	install=/boot/boot.b
	# Specifies the number of _tenths_ of a second LILO should
	# wait before booting the first image. LILO
	# doesn't wait if DELAY is omitted or if DELAY is set to zero.
	delay=20
	# Specifies the location of the map file. If MAP is
	# omitted, a file /boot/map is used.
	        map=/boot/map
	# Specifies the VGA text mode that should be selected when
	# booting. 
	vga=normal	
	#Imagen del núcleo
	image=/vmlinuz
	        label=Linux
	        read-only
      

Nosotros debemos transformarlo como sigue:



	# Generated by liloconfig
	# Specifies the boot device
	boot=/dev/hdc3
	# Specifies the device that should be mounted as root.
	root=/dev/hdc3
	# Install the specified file as the new boot sector.
	# If INSTALL is omitted, /boot/boot.b is used as the default.
	install=/boot/boot.b
	prompt
	timeout=200
	# Specifies the location of the map file. If MAP is
	# omitted, a file /boot/map is used.
	map=/boot/map
	# Specifies the VGA text mode that should be selected when
	# booting. 
	vga=normal
	#imagen del kernel nuevo
	image=/vmlinuz
	        label=Linux
	        read-only
	#imagen del kernel anterior 
	image=/vmlinuz-old
	        label=old
	        read-only
      

Hay algunos cambios: En lugar de delay tenemos la instrucción prompt, para que podamos seleccionar la etiqueta de la imagen que queramos cargar: Linux o old. El mandato timeout=200 mantiene el prompt 20 segundos (200 décimas) y si no se introduce nada, acabado el tiempo se cargará la primera imagen listada (Label: Linux). A continuación se ponen las líneas correspondientes a la carga de las dos imágenes.

De este modo si al cargar el nuevo núcleo ocurriera algo desastroso, siempre podríamos volver a cargar el antiguo y resolver el problema. Pero ˇTodavía no está todo acabado!: Hay que ejecutar

/sbin/lilo -v

para reinstalar el cargador de arranque y remapee la posición del disco duro en la que se sitúa el nuevo núcleo. Si no, el sistema no podría reiniciarse: nos aparecería en el arranque el temido "LI" y lo tendríamos que resolver iniciando mediante un disco de arranque y luego ejecutando /sbin/lilo (-v es solo para que nos de información de lo que está haciendo). Una vez que todo ha sido hecho según los cánones, reiniciaremos el ordenador.

Los ficheros objeto que se generan durante la compilación del kernel se pueden borrar haciendo

debian:/usr/src/kernel-source-2.X.X# make clean

pero no es aconsejable, porque si queremos cambiar algo en el futuro de la configuración del kernel es conveniente partir de las opciones actuales. Así al hacer en otra ocasión

debian:/usr/src/kernel-source-2.X.X# make xconfig

después de realizar los cambios de configuración y salir con Save and Exit, no es necesario hacer make dep; make clean, sino empezar directamente por make bzImage.

Grabando CDs con grabadoras IDE

Si tenemos una grabadora de CD IDE/ATAPI los programas para grabar como cdrecord no la reconocerán como unidad normal de cdrom, pues sólo reconocen las grabadoras tipo SCSI. Por lo tanto hemos de llevar a cabo una emulación IDE-SCSI en nuestra grabadora. Antaño, para conseguir nuestro objetivo había que recompilar el núcleo (véase La recompilación del núcleo ) del siguiente modo:

  1. Quitar el soporte para IDE-ATAPI CDROM (Block devices)

  2. Activar la emulación SCSI (Block devices)

  3. Incluir SCSI support, generic support y CDROM support (SCSI support)

  4. Activar Loopback device support (Block devices)

  5. Si se tiene pensado hacer imágenes Joliet, habrá que dar apoyo a Microsoft Joliet CDROM extension (Filesystems) y dentro del submenú Native language support, activar Codepage 437, Codepage 850 y NLS ISO 8859-1

Pero después de la instalación con los CDs Oficiales, nuestra Debian 2.2 está preparada para realizar la emulación sin necesidad de recompilar el núcleo habida cuenta de la modularidad del mismo, con apoyo para tal emulación mediante la carga del módulo ide-scsi, pero antes hay que especificar en el arranque del sistema, para qué interfaz IDE se debe cargar posteriormente la emulación SCSI. Para ello, debemos pasar a LILO una línea con tal información. La manera más sencilla es incluir en el fichero /etc/lilo.conf una línea después de las especificaciones de la imagen del núcleo a cargar que sea:



      append="unidad IDE=ide-scsi"
    

En mi caso dispongo de un lector CDROM en /dev/hdd (esclavo del segundo canal IDE) y una grabadora CDROM en /dev/hdb (esclava del primer canal IDE), con lo cual el archivo /etc/lilo.conf adecuado para la emulación será:



      # Generated by liloconfig
      # Specifies the boot device
      boot=/dev/hdc3
      # Specifies the device that should be mounted as root.
      root=/dev/hdc3
      # Install the specified file as the new boot sector.
      # If INSTALL is omitted, /boot/boot.b is used as the default.
      install=/boot/boot.b
      # Specifies the number of _tenths_ of a second LILO should
      # wait before booting the first image. LILO
      # doesn't wait if DELAY is omitted or if DELAY is set to zero.
      delay=20
      # Specifies the location of the map file. If MAP is
      # omitted, a file /boot/map is used.
      map=/boot/map
      # Specifies the VGA text mode that should be selected when
      vga=normal
      image=/vmlinuz
              label=Linux
              read-only
              append="hdb=ide-scsi"
    

Una vez arrancado el kernel con esta opción pasada en el arranque instalaremos como root el módulo de emulación ide-scsi

modprobe ide-scsi

Inmediatamente se crea una serie de dispositivos "virtuales" para usar la grabadora como lector de CDROM: Si hacemos ls /dev/sr* vemos que se han creado desde /dev/sr0 hasta /dev/sr7. Nos harán falta también los dispositivos genéricos SCSI /dev/sgX que son los que utiliza el programa cdrecord y también necesitamos los ficheros especiales /dev/loopX para poder montar imágenes iso en un directorio. Al comprobarlo mediante ls /dev/loop* veremos que se han creado desde /dev/loop0 a /dev/loop7. De este modo podemos montar imágenes para revisarlas en un directorio (p.ej.) /mnt/imagenesCD:

mount -o loop -t iso9660 imagenCD.iso /mnt/imagenCD

Podemos comprobar que nuestra grabadora está reconocida como SCSI viendo el resultado de cat /proc/scsi/scsi

NOTA: Cuando tengamos una grabadora HP 7100 ó superior, hay que editar el archivo

/usr/src/kernel-sources-XXX/drivers/block/ide.h

y buscar la línea



      #define WAIT_CMD (10*HZ) 
      /* 10 sec 
      - maximum wait for an IRQ to happen 
      */
    

para cambiarla por



      #define WAIT_CMD (1000*HZ) 
      /* 1000 sec 
      - maximum wait for an IRQ to happen 
      */
    

y de este modo funcionará.

Configurando Xcdroast 0.96e

Los programas fundamentales que permiten la grabación de imágenes en CDs o CD-CD son: mkisofs (permite hacer imágenes de CD en iso9660 raw) y cdrecord (para efectuar la grabación de CD), perono vamos a considerar los procedimientos para realización de imágenes y grabación porque para los principiantes existe un programa llamado xcdroast que es una interfaz gráfica de esos dos programas y otros más y que permite de manera excelente la grabación de cds. Xcdroast 0.96e (o superior) de Thomas Niederreiter una de las interfaces gráficas más útil para la grabación de CDs.

Lo instalaremos mediante

apt-get install xcdroast

y veremos que además de dicho paquete se instalan además: cdparanoia, libcdparanoia0, tix41, cdrecord y mkisofs. Para configurar xcdroast, iniciamos las X, abrimos una xterm e invocamos como root xcdroast &. Al hacerlo nos sale un marco indicando que no existe el fichero de configuración (xcdroast.conf) y que hagamos el setup. Hacemos OK y aparece el frontispicio llameante de xcdroast ;-). Aceptamos el disclaimer y accionamos el botón de setup. Aparece entonces el panel de setup con 4 pestañas: CDSETUP, HDSETUP, MISC y DEFAULTS.

CDSETUP: Hay que configurar los dispositivos de lectura y escritura, que en nuestro caso, tal como hemos realizado la simulación SCSI, corresponderán al mismo elemento: la grabadora de CD. En mi caso tengo una antigua Memorex CRW-1622 que funciona de maravilla. Por lo tanto, en el bloque CD-WRITER seleccionamos:

CDWriterDevice:

Memorex CRW-1622

CDWriterMode:

Autodetected

CDWriterSpeed:

2x

y en el bloque CD-READER, escogemos:

CDReadDevice:

Memorex CDW-1622

AudioReadDevice:

Memorex CDW-1622

AudioReadMode:

ATAPI

AudioReadSpeed:

Default

HDSETUP: Lo mejor a mi modo de ver es no configurar ni Image Partition 1 ni Image Partition 2, sino seleccionar el último bloque como default e indicar en Image-Data-Path la ruta del archivo donde se guardará la imagen del CD que generemos en el proceso de creación o copia de CD. Yo uso el directorio /usr/cdrecord. NOTA: Debéis tener al menos unos 650 MB libres para almacenar la imagen.

MISC: Dejar las opciones por defecto excepto DPS-Device for audio, que seleccionaremos a /dev/dsp

DEFAULTS: En principio lo podemos dejar así.

Por último accionamos el botón save para guardar la configuración y luego hacemos done, con lo cual volvemos al panel de presentación pero ahora tiene activos los botones CopyDataCD, CopyAudioCD y MasterCD.

Si hacemos ahora lsmod veremos que además de haberse cargado el módulo ide-scsi, también se ha cargado automáticamente el módulo sg (dispositivo genérico SCSI) cuando ha hecho falta. Si hacemos ls /dev/sg* nos aparecen 8 dispositivos genéricos desde /dev/sg0 a /dev/sg7, y si hacemos ls /dev/loop* también nos aparecen 8 dispositivos desde /dev/loop0 a /dev/loop7.

Copiando CDs con Xcdroast 0.96e

Basta con activar el botón CopyDataCD o CopyAudioCD para poder realizar la copia. Metemos el CD que queremos copiar en la grabadora y activamos el botón correspondiente. Aparece un menú muy intuitivo que permitirá copiar la imagen del CD de datos o los tracks seleccionados del CD de audio en el directorio de almacenamiento (en mi caso /usr/cdrecord). La verificamos si queremos y luego expulsamos el CD y lo sustituimos por uno virgen. Entonces grabamos la imágen o los tracks de audio en él, lo verificamos si nos apetece y si está bien, borramos la imagen ó los tracks del directorio para liberar disco.

Compilando CDs con Xcdroast 0.96e

La compilación de CDs es sencilla. Previamente debemos tener un directorio en donde se encuentre ya dispuesta la estructura de directorios y ficheros que queremos grabar. Introducimos el CD virgen en la grabadora y accionamos el botón MasterCD. Aparece un menú también muy intuitivo que iremos explicando: En Master From/To hay que poner el directorio donde tenemos la estructura de archivos a compilar. Puede estar incluso en otra partición montada (p.ej. /mnt/win98/mastercd). En Set Image Type, es bueno seleccionar el tipo de imagen a Unix Rock Ridge + Win95/NT, pues así crearemos un CD que puede leerse bien en Linux y Windows. En Set ISO header, rellenamos los datos que queremos que aparezcan en la etiqueta del CD (volume-CD), y en los otros registros (opcional). Después pasamos a crear la imagen y luego grabarla en el CD, accionando los botones correspondientes. Con Xcdroast, tanto la compilación como la grabación se realizan perfectamente, no teniendo que envidiar en eficacia al EasyCD Creator o al Nero Burning para Windows.

NOTA: Cuando no nos interese la emulación SCSI, comentamos la línea 'append="hdb=ide-scsi" ' en /etc/lilo.conf y al arrancar de nuevo, nuestra grabadora volverá a ser IDE. Por esta razón no se hace cargar el módulo ide-scsi automáticamente en el núcleo con modconf, sino que lo hacemos manualmente con modprobe cuando hayamos pasado a LILO el parámetro de emulación.