Back to Top

Camino Caminante Vereda

Category: Documentacion

A lo largo de mi vida personal y profesional he aprendido a hacer algunas cosas.  Aquí voy a detallar algunas cosas más o menos complicadas a las cuales me he enfrentado.

Acceder a páginas Web de forma privada

Para saltarse el filtro de contenido y navegar de forma segura es necesario tener acceso a:

  • Un servidor Linux en Internet.  El mío corre un sistema operativo CENTOS 3
  • Un ordenador de sobremesa con Linux.  El mío tiene Ubuntu Maverick Meerkat  instalado.  Cuando empecé este artículo tenía Edgy Etch instalado.

En el servidor instalé primero un proxy HTTP llamado privoxy y luego un proxy SOCKS llamado Dante.   Al no haber ningún rpm disponible para  CENTOS 3 para ninguno de los dos proxies, los compilé a mano.  Para Debian o similares como el Ubuntu, sí existen los paquetes  disponibles para estas variantes del linux y se encuentran con apt-cache search y se instalan con apt-get install

Instalación del proxy HTTP Privoxy 

Para el privoxy me bajé el src.rpm para Fedora Core desde  http://sourceforge.net/project/showfiles.php?group_id=11118. Preferí bajarme un src.rpm ya que son mucho más fáciles de compilar.  Me lo descargué con el wget a la carpeta /tmp de mi servidor.  Después lo único necesario es compilarlo.  El comando es rpmbuild –rebuild privoxy*src.rpm

Esto deja los rpm en /usr/src/redhat/RPMS/i386/  y se instalan con rpm -Uvh /usr/src/redhat/RPMS/i386/privoxy*rpm

 

En la configuracion por defecto del privoxy únicamente se permiten conexiones desde el localhost del servidor al puerto 8118.  Ahora únicamente es necesario arrancar el privoxy y que permanezca arrancado.  Estos son los comandos para CENTOS.

/etc/init.d/privoxy start
chkconfig –level 2345 privoxy on 

Uso del Privoxy

Para acceder por lo tanto a nuestro flamante proxy desde nuestra máquina es necesario hacer un tunel ssh.  Este tunel es necesario volver a hacerlo cada vez que se arranque el ordenador.  Para eso es necesario tener disponible una cuenta ssh en el servidor.  No valen cuentas restringidas como el jailshell de Cpanel.  Es necesario una cuenta que tenga acceso a todo el servidor.  El comando ssh es  

ssh -NL 8118:localhost:8118 usuario@servidor 

Hace falta introducir la contraseña.  Además hace falta repetir este comando cada vez que arranques tu ordenador personal si quieres navegar de forma discreta o saltarte filtros de contenido.

Ahora todo el tráfico que mándemos al puerto 8118 de nuestra máquina aparecerá por arte de magia en el puerto donde escucha el privoxy sin que nadie pueda interceptarlo.

Lo único pendiente es configurar un navegador para que use como proxy el puerto 8118 de nuestra propia máquina. Yo uso Ubuntu y me gusta usar para temas laborales el Firefox. Hay muchos otros navegadores disponibles en el Ubuntu.  Ahora es necesario escoger un navegador para acceder a las páginas menos serias.  Cualquiera vale menos el Konqueror.  Después de haberlo configurado descubrí  que la variable http_proxy que define el método de conexión a Internet también se había asignado con los valores que introduje para el Konqueror.  El Konqueror es una parte fundamental del entorno KDE y configurarlo para acceder a mi proxy tuvo demasiados efectos secundarios.  Lo mismo pasó con el Galeon, que es el navegador por defecto del Gnome. También asigna el proxy por defecto del sistema.

 Cualquier navegador sirve para conectarse con el proxy.  Únicamente es necesario configurarlo para conectarse al puerto 8118 de localhost.  Este proxy únicamente se conecta con los protocolos http y https.  En las configuraciones de proxies de muchos navegadores viene la posibilidad de configurar muchos protocolos adicionales como ftp y gopher.  Ninguno de estos protocolos funcionará. Únicamente el http y el https funcionarán.  Si se quiere seguir utilizando únicamente el Firefox, hay un módulo llamado FoxyProxy que permite un control más exhaustivo de como el Firefox se conecta a cada página Web.

Una vez configurado el proxy se puede probar navegando a una página normal como http://elpais.es y una de protocolo SSL como https://gmail.com.  Si se ven las páginas a través del navegador que se haya configurado, el proxy funciona.  Yo ahora tengo el opera configurado.

Insalación del proxy SOCKS Dante 

 El método para instalar el proxy SOCKS Dante es un poco más complicado ya que al ser compilado exclusivamente desde fuentes hace falta crear el fichero de configuración desde cero así como el programa que lo arranca al arrancar el sistema.  Las fuentes me las descargué de ftp://ftp.inet.no/pub/socks/  En el momento de escribir este artículo la última versión disponible era la 1.19.   Ahora en 2010 la última versión es la 1.22. La versión 1.22 necesita un mínimo de CENTOS 6 y al tener CENTOS 3, no lo puedo actualizar.

Otra vez se descarga en /tmp con el wget y se descomprime.

tar xvpzf dante*tar.gz
rm dante*tar.gz
cd dante*  

Después se compila y se instala.  Lo más sencillo es hacerlo como root aunque hay gente que recomienda jamás compilar como root porque nunca puedes estar seguro si el programa es de fiar.

./configure   –with-sockd-conf=/etc/danted.conf –prefix=/usr/local
make
make install

Estos comandos configuran el Dante para que su archivo de configuración sea /etc/danted.conf y que los ejecutables estén en /usr/local/bin y en /usr/local/sbin.  Todavía no estamos ni a la mitad ya que el archivo de configuración no se ha creado y queda conseguir que el servidor proxy se arranque cuando se arranque el ordenador.  Ambas cosas las tuve que hacer a mano ya que al instarlo manualmente no se crearon ninguno de los archivos necesarios.

Para crear el fichero de configuraición se ejecuta como root

nano /etc/danted.conf

y se pega en el archivo el siguiente texto


# La salida informativa
logoutput: /var/log/dante.log
#Las ips permitidas
internal: 127.0.0.1 port = 1080
#Utiliza eth0. Si tu interfaz de red según ifconfig tuviera otro
#nombre, se edita
external: eth0

# Al unicamente aceptar conexiones internas no es necesario autenticarse
method: username none

#Ningún permiso especial
user.notprivileged: nobody
user.privileged: nobody
user.libwrap: nobody
# Permisos de conexion
client pass {
from: 127.0.0.0/8 port 1-65535 to: 0.0.0.0/0
}
client block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}
block {
from: 0.0.0.0/0 to: 127.0.0.0/8
log: connect error
}
#Permite conexiones internas y prohibe todo lo demás
pass {
from: 127.0.0.0/8 to: 0.0.0.0/0
protocol: tcp udp
}
block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}

 

Ahora es necesario escribir el fichero para arrancar el proxy.  Como root nano /etc/init.d/socksd y se pega el siguiente texto

#!/bin/sh
# Filename: /etc/init.d/sockd
#
# chkconfig: 345 100 100
# description: Starts and stops the sockd
# thx to the samba-team for the script 😉

SOCKD_CONFIG=”/etc/danted.conf”
SOCKD=/usr/local/sbin/sockd
SOCKD_OPTIONS=”-D  ” # debug (-d) is a bad (and space-wasting) idea

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = “no” ] && exit 0

# Check that smb.conf exists.
[ -f ${SOCKD_CONFIG} ] || exit 0

# See how we were called.
case “$1” in
  start)
    echo -n “Starting socks: “
    daemon ${SOCKD} ${SOCKD_OPTIONS} -f ${SOCKD_CONFIG}
    echo “”
    touch /var/lock/subsys/sockd
    ;;
  stop)
    echo -n “Shutting down socks: “
    killproc ${SOCKD}
    rm -f /var/lock/subsys/sockd
    echo “”
    ;;
  status)
    status ${SOCKD}
    ;;
  restart)
    echo -n “Restarting socks: “
    $0 stop
    $0 start
    echo “done.”
    ;;
  *)
    echo “Usage: $(basename $0) {start|stop|restart|status}”
    exit 1
esac

Ahora se hace ejecutable y se le dice que arranque automáticamente ejecutando como root:

 chmod +x /etc/init.d/sockd
/etc/init.d/sockd  start
chkconfig –level 2345 sockd on

 Uso del Dante

Ahora para conectarse a este proxy se utiliza tal como está configurado el siguiente comando

ssh -NL 1080:localhost:1080 usuario@servidor

 El proxy SOCKS Dante, lo utilizo cuando navego utilizando redes wifi abiertas. El Dante funciona bastante mejor que  el Privoxy.  He configurado el firefox para utilizar como proxy SOCKS el ordenador localhost con el puerto 1080  Todavía no he sido capaz de usarlo en el trabajo ya que tanto el Galeon como el Konqueror cambian la configuración de proxy universal y el Opera no funciona todavía con SOCKS. 

 

Uso de Proxy en Windows

Para conectarse a un proxy SOCKS en Windows el mejor programa es Putty que es un cliente SSH gratuito. Se puede descargar desde http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html En el caso de que no tengas permiso de instalar programas en tu ordenador te puedes descargar el Putty de http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe que es un ejecutable para el que no es necesario ninguna clase de permiso para ejecutar.  Descargar, hacer doble click y disfrutar.

Al abrir el Putty es necesario crear y guardar una sesión

Pantalla Inicial del Putty
En Host Name (or IP address)  se introduce el nombre del servidor.  En Port, el puerto.  En Saved Sessions se introduce un nombre descriptivo y se pulsa sobre Save.

Configuración inicial de los túneles sshSe navega eb el menú hasta Connection >> SSH > Tunnels y se mete en Source Port el 1080 ya que tengo mi Dante escuchando en el puerto 1080.  Se marca Auto y Dynamic y se pulsa sobre Add

Como queda una vez que se hayan guardado los túneles ssh
Al final queda así

Antes de Guardar en el PuttySe selecciona el nombre que se ha escogido para este servidor, en este ejemplo he escogido servidor y se pulsa sobre Save Una vez ya esté todo guardado, cuando se arranque el Putty únicamente es necesario hacer doble click sobre el nombre que hemos dado a este servidor y se abre la ventana de autenticación.

Es un problema en Windows encontrar un navegador que tenga configuración de Proxy independiente del sistema.  Tanto Chrome como Safari como Internet Explorer usan la configuraición de Proxy del sistema. Afortunadamente los navegadores de Mozilla como el Firefox o el Seamonkey permiten configuración individualizada del Proxy.  Por desgracia en el Seamonkey en mi equipo, la pantalla de configuración manual del Proxy es demasiado pequeña y no se puede cambiar el tamaño

Configuración Manual del Proxy en SeamonkeyComo se ve en esta pantalla no hay nada que hacer ya que no aparece la caja de texto para meter el puerto. Afortunadamente no hay ese problema en el Firefox.

configuracion-avanzado-red-firefox
En Firefox se navega a Herramientas >> Opciones >> Avanzado >> Red y se pulsa sobre el botón Configuración…

Configuración manual del Proxy de Firefox como SOCKS

Hay que recordar que el Dante es un Proxy SOCKS.  Se selecciona Configuración manual del proxy: y en el campo Servidor  SOCKS se introduce el 127.0.0.1 que es el ordenador local.  Hay que recordar que el Putty como por arte de magia conecta el puerto 1080  de la máquina local con el puerto 1080 de mi servidor.  En Puerto se intoduce pues el 1080 y se marca la casilla Socks v5.

Se pulsa varias veces sobre Aceptar hasta cerrar todas las ventanas.  Ahora el Firefox se conectará a Internet desde el servidor y la conexión entre el equipo y Internet está cifrada de tal manera que nadie lo puede espiar.

Disfrutad.

Andreso
andres@andreso.net

http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

Actualizar sistema operativo de PDA Acer N50

Desde hace tres años soy el orgulloso propietario de una PDA Acer N50 Premium . Yo me la compré en cuanto tuve una en mis manos y vi que era capaz de escribir casi normalmente en la pantalla táctil.  Llevaba mucho tiempo deseando encontrar tiempo para escribir artículos para mi Web y llegué a la conclusión al ver que era capaz de escribir casi normalmente en una PDA que sería ideal para los viajes en transporte público.  Y cumplí mi deseo.  Paso bastante del tiempo en que estoy en un autobús o en el metro escribiendo.  Lo que escribo lo publico en mis Web, quizás seis meses después de haberlo escrito.

Escogí la Acer N50 porque tenía WiFi.  Sentía curiosidad por navegar por Internet con un trasto de esos.  Únicamente fui capaz de navegar una vez. La mayor parte de las veces que lo intenté, la PDA no pillaba una IP por DHCP.  Era incapaz de conectarse al Router.  Al final desistí.  Navegando por Internet encontré la sección de soporte de Acer y vi que había la posibilidad de descargarse un sistema operativo fresco y reluciente para el aparato.  Después de varios meses dándole vueltas al asunto decidí proceder a hacer la operación.  Si le das a Leer el resto del artículo, podrás ver como lo hice.

Actualizar el sistema operativo de mi PDA Acer N50 me llevó varios intentos.  Al final no me quedó más remedio que buscar una guía en Internet para conseguirlo. Yo me había descargado la BIOS en Inglés de http://support.acer-euro.com/drivers/downloads.html seleccionando Acer n50 series de la caja de selección donde pone Acer Handheld.  A mí me gusta tener todos mis programas en inglés.  La imagen del sistema operativo en inglés es Acer n50 ROM Image v1.xx.xx English.  La imagen en español está disponible desde ftp://ftp.work.acer-euro.com/handheld/n50/osimage/ y se llama SD_CF_v1.xx.xx_SPA-BW.zip.  El primer paso es descargarse el archivo al ordenador y abrirlo con el programa de descompresión que más te apetezca.

 Es necesario copiar el contenido del archivo a la tarjeta de memoria de la PDA.  Para eso es necesario sacar la tarjeta de memoria del PDA y meterlo en un lector de tarjetas.  Sincronizando con ActiveSync hay posibilidades que se corrompa el archvio.  En el .zip hay una carpeta que se llama Acer_n50.   Es necesario descomprimir el archivo en la raíz de la tarjete de memoria.  Se saca la tarjeta del lector de tarjetas y se vuelve a meter en el PDA.

Ahora es necesario asegurarse que la batería de la PDA esté completamente cargada.  Se deja en la base hasta que la luz verde está fija.  Podría dejar totalmente inservible a la PDA el que se le acabe la batería en mitad de la actualización del sistema operativo.  Por eso es imprescindible cargarla hasta que la luz verde esté fija.

El siguiente paso es hacer copia de seguridad de todos los datos.  El proceso de actualizar el sistema operativo borra todos los documentos, todos los contactos, todos los ficheros.  Los ficheros se copian a la tarjeta de memoria.  De todos los demás datos se hace una copia de respaldo en el ordenador con la herramienta Activesync.  Lo que no se guarde se perderá para siempre. 

El proceso de cargar la imagen del sistema operativo me resultó bastante compleja.  El manual de instrucciones de la Web de Acer no proporcionaba un detalle importante que me hizo hacer varios intentos infructuosos.  El proceso es reiniciar a la PDA a los valores de fábrica y luego mantener pulsado durante cinco o más segundos el interruptor.  Ese detalle no venía en la documentación.

 El sistema para reiniciar la PDA es parecido al sistema para reiniciar un ordenador Windows:  una combinación de tres teclas.  Muy divertido.  Lo hacen tan difícil para que no pueda ocurrir por accidente ya que al reiniciar la PDA se pierden todos los datos.  Se apoya el lado derecho contra una superficie inamovible.  Con una mano se coge el lápiz y se presiona la oquedad en la parte superior izquierda de la PDA y se mantiene pulsado.  A la vez se pulsan con la otra mano el símbolo del sobre y el símbolo de la casa en los botones de la parte inferior.  Se mantienen pulsados los tres botones durante cinco segundos. Abajo hay una imagen .

 

Reiniciar PDA

Lo que hay que pulsar para reiniciar la PDA

 

 En cuando se haya reiniciado la PDA esta se apaga.  Ahora es necesario arrancar la carga del nuevo sistema operativo.  Para esto es necesario pulsar y mantener pulsado durante por lo menos cinco segundos el interruptor.  Yo no lo hice las primeras veces por lo cual tuve que repetir muchas veces el proceso de reiniciarlo.  Al principio aparece un mensaje de Tarman Boot Loader.  Pues se sigue manteniendo pulsado el interruptor unos segundos más hasta que aparezca un mensaje de Download Flash Bio.  Una vez que aparezca ese mensaje ya ha empezado el proceso de reemplazar el sistema operativo de la PDA.  Ahora toca esperar los cinco o diez minutos que tarda la carga sin tocar la PDA.  Puede tener efectos desastrosos para el aparato el que se apague mientras esté escribiéndose el nuevo sistema operativo.  Una vez se haya completado el proceso la PDA emitirá unos pitidos y se apagará.

 A disfrutar,

 Andreso

Importar repositorio Subversion en Ubuntu Edgy

El problema es debido a que tanto subversion como apache están enlazados con libapr0.  Parece que cuando se quiera utilizar apache y subversion juntos es necesario que ambos estén enlazados con la misma versión del libapr que creo que significa Apache Portable Library.  Según  http://svn.haxx.se/users/archive-2006-10/1552.shtml la librería libapr0 está limitada a ficheros de 2 GigaBytes.  El archivo que yo quería importar tenía 2.2 GigaBytes. La copia de seguridad del otro repositorio tenía más de 8 GigaBytes.  El artículo además decía que era necesario que tanto el apache como el subversion necesitaban estar compilados con la misma versión del apr.  La versión 1 del libapr era necesaria.  Me veía con la tarea desagradable de compilar el libapr, compilar el apache, compilar el subversion y compilar el php.  Detesto compilar el php.

 Con un apt-cache search vi que Edgy trae libapr1.  Lo instalé con
sudo apt-get install  libapr1 libaprutil1 libapr1-dev libaprutil1-dev

Desgraciadamente tanto el apache como el subversion seguían estando enlazados con libapr0.  Mala suerte.

 Después de consultar en el canal #svn en freenode me dijeron que únicamente era necesario compilar el subversion con la versión 1 del libapr.  No era necesario compilar el resto de cosas.  Me quedé muy aliviado.  En la página del subversión la única versión disponible para descargar era en este momento al 1.4.3.  Me olía mucho que un repositorio hecho con la versión 1.4.3 no iba a ser compatible con el subversion 1.3.2 que traía Edgy.  Afortunadamente  en  el canal #svn me dijeron que desde   http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=6781&expandFolder=6781&folderID=260 me podía descargar versiones anteriores.  Me descargué la versión 1.3.2 a mi home.  Escogí esta versión ya que es la que trae Ubuntu Edgy.

Descomprimí el subversion

cd
mkdir source
cd ~/source
tar xvjf../subversion-1.3.2.tar.bz2
cd ~/source/subversion-1.3.2
./configure –help

Vi que el programa de configuración traía las opciones  –with-apr y –with-apr-util  Gracias al locate vi que el archivo para poner en la opción de –with-apr era /usr/bin/apr-1-config y el archivo de  –with-apr-util era /usr/bin/apu-1-config  Con esta información ya podía compilar el subversion.  No me interesaba instalarlo ya que iba a utilizar la versión que trae el Edgy.

cd ~/source/subversion-1.3.2
./configure –with-apr=/usr/bin/apr-1-config –with-apr-util=/usr/bin/apu-1-config
make

 No hice make install ya que no me interesa para nada una versión del subversion incompatible con el apache.  Ya tenía un binario de svnadmin que podía usar para recuperar mi repositorio.  Me fui a la carpeta donde había creado el repositorio y lo importé con

~/source/subversion-1.3.2/subversion/svnadmin/svnadmin \
load . < /ruta/a/fichero_dump

Funcionó a la perfección.  Ya tenía importado mi repositorio.  Por desgracia hubo un ligero pero.  Un pero que no me deja más remedio que prescindir totalmente de Ubuntu Edgy en mi servidor.  Tengo una revisión de más de dos Gigabytes.  La mierda de enlazar tanto apache como subversion con libapr0 hace que una distribución tan excelente como Ubuntu Edgy me sea inservible para mi servidor.

 En la carpeta /db/revs de mi repositorio, un ls -lh revela lo siguiente.

total 2.1G
-rw-r–r– 1 andres andres  115 2007-02-17 15:27 0
-rw-r–r– 1 andres andres 2.1G 2007-02-18 17:26 1
-rw-r–r– 1 andres andres 105K 2007-02-18 17:26 2
-rw-r–r– 1 andres andres 331K 2007-02-18 17:26 3
-rw-r–r– 1 andres andres 2.9M 2007-02-18 17:26 4
-rw-r–r– 1 andres andres  19K 2007-02-18 17:27 5
-rw-r–r– 1 andres andres  24K 2007-02-18 17:27 6
-rw-r–r– 1 andres andres  17K 2007-02-18 17:27 7
-rw-r–r– 1 andres andres  16K 2007-02-18 17:27 8
-rw-r–r– 1 andres andres  53K 2007-02-18 17:27 9

Mi revisión 1 según este listado tiene un tamaño de 2.1 Gigabytes.  Eso significa que no puedo guardar ninguna modificación de ningún archivo de esta revisión, durante la cual cree mi repositorio.  He sido capaz de agregar nuevos archivos a mi repositorio, pero cuando he intentado modificar uno de los archivos de esta revisión, el subversion dice que no encuentra la revisión 1.  Lo que pasa es que el libapr0 no es capaz de leer el archivo ya que tiene más de dos Gigabytes.

 Los empaquetadores de Ubuntu, al haber enlazado un programa que es fundamental para mí con una librería obsoleta, han hecho que me sea inviable utilizar Ubuntu Edgy para mi servidor.  Yo necesito la posibilidad de trabajar con archivos de tamaño arbitrario.  El que me limiten el tamaño de los archivos que puede manejar el sistema operativo ha convertido esta distribución en inservible.

 Andreso

Placa Base ABIT KN9 SLI en Ubuntu Edgy

En cuanto traje el ordenador a casa y metí el CD de Ubuntu Edgy en la unidad de CDROM me empezó a dar problemas.  Tuve un agradable Kernel Panic.  El Grub del CD se quedaba colgado al principio sugiriéndome que era necesario arrancarlo con la opción de noapic.  Para hacer esto es necesario pulsar F5 o F6 y añadirle el parámetro noapic al final de las opciones de kernel en cuando se arranque con el CD de Edgy.

Tengo un disco duro Serial ATA en el cual instalé el Ubuntu de 64 bits y un disco duro IDE donde instalé el Ubuntu estándar.  Además de los problemas causados por el APIC, la placa base no me reconocía el disco duro IDE cuando lo arrancaba en frío.  Era necesario reiniciar el ordenador, entrar en la BIOS y decirle que arrancase del disco duro IDE.  Al reiniciar no daba ninguna clase de problemas.  Era únicamente cuando  el ordenador había estado apagado varias horas que daba el problema.

 Osease

  • Arrancar el ordenador.  Esperar a que diera el Grub Hard Disk Error debido a que no encontraba el disco duro IDE.
  • Apagar el ordenador pulsando el interruptor durante seis segundos
  • Encender el ordenador y pulsar Suprimir para entrar en la BIOS.
  • Ir a Advanced BIOS Options, Abrir Hard Disk Boot Priority y seleccionar el disco IDE.
  • Guardar la configuración
  • Al arrancar el GRUB, pulsar e para editar sus comandos
  • Seleccionar la opción donde aparece kernel, pulsar e para editar, agregar noapic hacia el final y pulsar Intro para guardar
  • Pulsar b para arrancar.

Los tres últimos pasos se podían obviar editando /boot/grub/menu.lst agregando  noapic al final de todas las líneas que empezaban por kernel.  Es necesario volver a editar el archivo menu.lst cada vez que se actualiza el kernel con el aptitude.  Ha habido veces que he tardado un par de horas en arrancar el ordenador por no seguir exactamente los pasos que especifiqué arriba.  Afortunadamente los de ABIT han sacado una actualización de la BIOS que resuelve estos problemas.  Entrando en BIOS y introduciendo KN9 SLI en la caja de texto de la parte superior aparecen varias actualizaciones para esta placa base.  Es necesario descargar la kn918.zip o una posterior.  

Para actualizar la BIOS seguí los pasos detallados en  HOWTO: Flash BIOS, The Ubuntu WayIMPORTANTE: Si no tienes una placa base ABIT KN9 SLI es probable que seguir estos pasos al pie de la letra va a dejar tu ordenador inservible.

 El archivo se descarga y se descomprime con unzip kn918.zip  creando una carpeta kn918.  Ahora es necesario bajarse la imagen OEM del FREEDOS de  http://www.fdos.org/bootdisks/El archivo que yo me descargué es FDOEM.144.gz.  Es muy importante que sea la versión OEM ya que cualquier otra versión puede cargar programas residentes en memoria.  Cualquier programa residente en memoria puede hacer fracasar la actualización de la BIOs por lo cual tu ordenador puede quedar inservible.  La versión OEM no arranca ningún programa.

Ahora es necesario grabar la imágen del FREEDOS en un disquete.  El HOWTO incluía instrucciones para hacer un CD auto arrancable con el programa para actualizar la BIOS pero las dos veces que lo intenté tuve que tirar los CD.  Estas instrucciones asumen que tienes el disquete en /dev/fd0.  Si no te funcionan las instrucciones el disquete estará en otra parte o quizás no tienes disquete.  Introduces el disquete y en el terminal desde la carpeta donde te descargaste la imagen del FREEDOS:

gunzip  FDOEM.144.gz
sudo dd if=FDOEM.144 -of=/dev/fd0 

Ahora hace falta montar el diskette

sudo mkdir /mnt/floppy
sudo mount /dev/fd0 /mnt/floppy 

Se va a la carpeta  kn918 creada al descomprimir el archivo descargado de ABIT y se copia todo al diskete.  Claro está, si te descargas una versión más moderna del BIOS, será necesario ajustar la ruta.

sudo cp * /mnt/floppy

 Ahora se verifica que todos los archivos se hayan copiado y se reinicia el ordenador.

 Es necesario volver a entrar en la BIOS para asegurarse que va a arrancar desde el diskete.  Esto se hace en las opciones avanzadas.

Una vez se arranca en DOS es necesario ejecutar el fichero .BAT que instala la BIOS.  Se llama RUNME.BAT 

Después de cuatro o cinco pantallas en las cuales me preguntó si estaba verdaderamente seguro de lo que estaba haciendo, me permitió actualizar la BIOS.  Al sacar el disquete y arrancar el ordenador la BIOS me dio una advertencia.  Es necesario dejar la configuración del BIOS a cero.  Para esto es necesario abrir el ordenador.  Se apaga el ordenador y, muy importante, se desenchufa el cable de alimentación.  En la parte inferior de la placa base, más o menos por la mitad, hay un jumper que está haciendo cortocircuito a los dos alambres de la derecha.  A la izquierda hay un alambre libre.  El jumper está marcado con el texto CCMOS1 y en mi placa base era un trozo de plástico amarillo de más o menos medio centímetro de ancho y unos cinco centímetros de alto.  Es necesario sacarlo y ponerlo haciendo cortocircuito con los dos alambres de la izquierda para que la BIOS vuelva a sus valores de fabrica.  Pasados un par de segundos se quita y se vuelve a poner en los dos alambres de la derecha.  Las pase canutas para colocar el jumper.

Al final pude encender el ordenador.  Hice la prueba de editar la línea del kernel de GRUB, quitando el noapic.  Arrancó perfectamente.  Desgraciadamente no terminaron mis problemas con esta placa base.  El servidor X no quería arrancar.  No sé qué de que no encontraba el dispositivo.  Entré en modo consola pulsando Mayus-Alt-F3 o Ctrl-Alt-F3 (no me aclaro) con mi usuario.  Ejecuté lspci -v -v -v | less para tener toda la información que disponía mi ordenador de lo que hay conectado a mi placa base.  Vi que a la izquierda de donde aparecía mi tarjeta gráfica ponía 06:00.0 

En el archivo de configuración de las X, que abrí con  sudo vi /etc/X11/xorg.conf aparece lo siguiente

Section "Device"
    Identifier    "ATI Technologies, Inc. Radeon X600 (RV370)"
    Driver        "fglrx"
    Option      "VideoOverlay" "on"
    BusID        "PCI:5:0:0"
EndSection

En el BusID ponía "PCI:5:0:0" y el lspci decía que la tarjeta gráfica estaba en 06:00.0.  Cambié la línea de BusID

 BusID        "PCI:6:0:0"

y reinicié el ordenador.

 Al final mi flamante sistema es compatible con el Linux.

 Andreso