<!-- $FreeBSD$ -->
<!-- The FreeBSD Documentation Spanish Project -->
  <sect>
    <heading>Problemas<label id="troubleshoot"></heading>

    <sect1>
      <heading>Tengo bloques err&oacute;neos en mi disco duro!<label id="awre"></heading>

      <p>Los discos SCSI deber&iacute;an ser capaces de marcar estos bloques
      err&oacute;neos automaticamente para que no presenten problemas. Algunos
      discos, por alguna raz&oacute;n desconocida, se venden con esta
      caracter&iacute;stica desactivada.

      <p>Para activar esta opci&oacute;n, tendr&aacute;s que editar una de las 
      opciones del dispositivo, lo que puede ser hecho con FreeBSD tecleando el
      siguiente comando (como root):

      <verb>
        scsi -f /dev/rsd0c -m 1 -e -P 3
      </verb>

      <p>y cambiando los valores de AWRE y ARRE de 0 a 1:-

      <verb>
        AWRE (Auto Write Reallocation Enbld):  1
        ARRE (Auto Read Reallocation Enbld):  1
      </verb>

      <p>Para otros tipos de discos, dependes de las caracter&iacute;sticas de
      los sistemas operativos. Desafortunadamente, el comando "bad144"
      que se incluye en FreeBSD, necesita ser desarrollado m&aacute;s en
      profundidad. 

      <p>Se <em/supone/ que los discos IDE incluyen de serie la posibilidad
      de "remapear" los bloques da&ntilde;ados; si tienes documentaci&oacute;n 
      de tu disco, podr&aacute;s ver si esta opci&oacute;n est&aacute; activada
      o desactivada.


    <sect1>
      <heading>FreeBSD no reconoce mi Bustek 742a EISA SCSI!</heading>

      <p>Esta informaci&oacute;n es espec&iacute;fica para la tarjeta 742a, 
      pero puede ser aplicable a otras tarjetas Buslogic. (Bustek = Buslogic)

      <p>Existen dos versiones de la tarjeta 742a. Son revisiones de
      hardware A-G y H. La letra de revisi&oacute;n est&aacute; situada 
      despu&eacute;s del n&uacute;mero de ensamblaje. La 742a tiene 2 ROMs, 
      una es la BIOS y la otra es el Firmware. FreeBSD no se fija en la 
      versi&oacute;n de BIOS de la tarjeta, pero si en la de Firmware. 
      Buslogic te enviar&aacute; una actualizaci&oacute;n de de las ROMs si te 
      pones en contacto con su departamento t&eacute;cnico. La BIOS y el 
      Firmware son distribuidas de manera inseparable. Deber&iacute;as tener 
      la versi&oacute;n de Firmware m&aacute;s actualizada para la 
      revisi&oacute;n de hardware de tu tarjeta.

      <p>Las tarjetas con revisi&oacute;n A-G solo pueden aceptar BIOS/Firmware
      2.41/2.21. La revisi&oacute;n H y superiores pueden aceptar las versiones
      m&aacute;s actuales 4.70/3.37. La diferencia entre las versiones de
      Firmware es que la 3.38 soporta "round robin".

      <p>Las tarjetas Buslogic tienen un n&uacute;mero de serie serigrafiado
      en ellas. Si tienes una revisi&oacute;n de hardware antigua, puedes llamar
      al departamento de RMA de Buslogic y darles el n&uacute;mero de serie de
      la tarjeta para intentar cambiarla por una revisi&oacute;n superior del
      hardware.

      <p>FreeBSD 2.1 solo soporta revisiones de Firmware 2.21 o superiores.
      Si tienes una versi&oacute;n inferior, tu tarjeta no ser&aacute; 
      reconocida como Buslogic. Quiz&aacute;s sea reconocida como una Adaptec 
      1540. Las primeras versiones de Firmware de Buslogic contienen una modo 
      de emulaci&oacute;n de la AHA1540.

      <p>Si tienes una revisi&oacute;n de hardware antigua y consigues una 
      m&aacute;s actual (2.21), necesitar&aacute;s chequear la posici&oacute;n 
      del jumper W1 y asegurarte que est&aacute; en la posici&oacute;n B-C 
      (por defecto esta en B-C).


    <sect1>
      <heading>
        Mi controladora SCSI HP Netserver's no es detectada!
      </heading>

      <p>Este es un problema ya conocido. Las controladoras SCSI EISA
      integradas en la placa base en las m&aacute;quinas HP Netserver, ocupan
      el slot numero 11. El espacio de direcciones  para los slots
      EISA >=10 colisionan con los espacios de direcciones asignados
      para los dispositivos PCI, y la autoconfiguraci&oacute;n de FreeBSD no
      maneja esta situaci&oacute;n demasiado bien.

      <p>Lo mejor que puedes hacer es pretender que no existan clases
      de rangos de direcciones :), cambiando el valor de la opci&oacute;n del
      kernel <tt/EISA_SLOTS/ a un valor de 12.
      Configura y compila un nuevo kernel como se describe en la
      <url url="../../handbook/kernelconfig.html"
      name="entrada correspondiente del manual">.
                                              
      <p>Por supuesto, esto presenta un peque&ntilde;o problema. Para poder
      solucionarlo, es necesario un truco en la utilidad de
      configuraci&oacute;n. No uses el interface "visual", simplemente teclea
      lo siguiente en la l&iacute;nea de comando de la utilidad

      <verb>
        eisa 12
        quit
      </verb>

      <p>Esperamos que en las pr&oacute;ximas versiones tengamos solucionados
      estos temas.

    <sect1>
      <heading>&iquest;Qu&eacute; ocurre con la controladora IDE CMD640?</heading>

      <p>No funciona. No puede manejar comandos en los dos canales
      simult&aacute;neamente.

      <p>Hay una soluci&oacute;n posible y se activa autom&aacute;ticamente si 
      tu sistema usa este chip. Para m&aacute;s detalles, referirse al man del
      driver de discos (man 4 wd).

      <p>Si todav&iacute;a est&aacute;s usando FreeBSD 2.2.1 o 2.2.2 con una 
      controladora IDE CMD640 y quieres usar el segundo canal, crea un nuevo 
      kernel con <tt/options "CMD640"/ activada. Esta es la opci&oacute;n por 
      defecto en la versi&oacute;n 2.2.5 y superiores.

    <sect1>
      <heading>Tengo mensajes como ``<tt/ed1: timeout/''.</heading>

      <p>Esto, normalmente es causado por conflictos de interrupciones (por
      ejemplo, dos tarjetas usando la misma IRQ). Las versiones
      anteriores a la 2.0.5R eran tolerantes con los problemas de
      conflictos de IRQ. A partir de esa versi&oacute;n, los conflictos de IRQ 
      ya no son tolerados. Arranca con la opci&oacute;n -c y cambia la entrada
      correspondiente a tu tarjeta.

      <p>Si est&aacute;s usando conectores BCN en tu tarjeta de red, el mensaje
      de error puede ser debido a una mala terminaci&oacute;n de la red. Para 
      chequear esto, conecta un terminador directamente a la salida BNC de la
      tarjeta (sin cable) y mira si el mensaje desaparece.

    <sect1>
      <heading>Cuando monto el CDROM, obtengo ``Incorrect super block''.</heading>

      <p>Tienes que indicar el tipo de dispositivo que quieres montar. Por 
      defecto <htmlurl url="http://www.FreeBSD.org/cgi/man.cgi?mount" 
      name="mount"> asumir&aacute; que el dispositivo que quieres montar es 
      ``<tt/ufs/''. 
      Si quieres montar un CDROM, tienes que especificar <tt/-t cd9660/.
      Esto hace que el sistema asuma que tiene que montar un sistema de
      ficheros con formato ISO 9660 que es lo que los CDROM deben tener.

      <p>Como ejemplo, si quieres montar una unidad CDROM,
      <tt>/dev/cd0c</tt>, bajo <tt>/mnt</tt>, tienes que ejecutar

      <verb>
        mount -t cd9660 /dev/cd0c /mnt
      </verb>

      <p>Ten en cuenta que el nombre de tu dispositivo
      (<tt>/dev/cd0c</tt> en este ejemplo) puede ser diferente dependiendo
      del interface que est&eacute;s usando. El comando anterior puede ser
      acortado tecleando:

      <verb>
        mount_cd9660 /dev/cd0c /mnt
      </verb>

    <sect1>
      <heading>Cuando monto un CDROM, obtengo ``Device not configured''.</heading>

      <p>Esto, generalmente, significa que no hay ning&uacute;n disco en el 
      lector de CDROM. Tambi&eacute;n puede significar que el lector no es 
      visible para el bus. Chequea que est&aacute; bi&eacute;n configurado en 
      lo referente a master/slave si es IDE (ATAPI).

      <p>Algunas veces un CDROM SCSI puede "desaparecer" por que no ha tenido
      tiempo suficiente para responder a un reset del bus. Si tienes un
      CDROM SCSI, a&ntilde;ade la siguiente l&iacute;nea en el fichero de 
      configuraci&oacute;n del kernel y recomp&iacute;lalo.

      <verb>
        options "SCSI_DELAY=15"
      </verb>

    <sect1>
      <heading>Mi impresora es ridiculamente lenta. &iquest;Qu&eacute; puedo hacer?</heading>

      <p>Si es paralelo, y el &uacute;nico problema es la lentitud, intenta
      configurar el puero de impresora en modo "polled":

      <verb>
        lptcontrol -p
      </verb>

      <p>Algunas impresoras nuevas de HP son conocidas por no trabajar
      correctamente en modo de interrupci&oacute;n, aparentemente debido (y
      todav&iacute;a no exactamente entendido), a un problema de "timing".

    <sect1>
      <heading>Mis programas ocasionalmente mueren con errores ``Signal 11''.</heading>

      <p>Esto puede ser por hardware err&oacute;neo (memoria, placa base, etc).
      Intenta ejecutar alg&uacute;n programa de test de memoria. Ten en cuenta
      que es posible que tu memoria pase el test del programa que uses,
      pero que falle en algunas condiciones de uso, como en compilaci&oacute;n
      de kernel.

      <p>La FAQ SIG11 (listada m&aacute;s abajo) apunta a problemas de 
      lentitud de memoria. Incrementa el n&uacute;mero de "wait states" en tu 
      BIOS o instala una memoria m&aacute;s r&aacute;pida.

      <p>Tambi&eacute;n puedes intentar desactivar el cach&eacute; de placa 
      base en la BIOS y comprueba si se resuelve el problema.

      <p>Hay una extensa FAQ en
      <url url="http://www.bitwizard.nl/sig11/" name="the SIG11 problem FAQ">

    <sect1>
      <heading>Cuando arranco, la pantalla queda negra!</heading>

      <p>Este es un problema conocido con las tarjetas de v&iacute;deo ATI 
      Mach 64. El problema es que esta tarjeta usa la direcci&oacute;n 
      <tt/2e8/, tambi&eacute;n usada por el puerto serie 4. Debido a un bug 
      (feature?) en el driver <htmlurl 
      url="http://www.FreeBSD.org/cgi/man.cgi?sio" name="sio.c">
      , &eacute;ste "tocar&aacute;" este puerto aunque no est&eacute; instalado
      o est&eacute; desactivado.

      <p>Hasta que el problema sea fijado, puedes hacer esto:

      <enum>
        <item>Teclea <tt/-c/ en el prompt de arranque. Esto te llevar&aacute; 
        a la secci&oacute;n de configuraci&oacute;n del kernel.

        <item>Desactiva <tt/sio0/, <tt/sio1/, <tt/sio2/ y <tt/sio3/
        (todos ellos).  De esta manera, el driver sio no se activa.

        <item>Teclea exit para seguir arrancando.
      </enum>

      <p>Si quieres ser capaz de usar tus puertos serie, tendr&aacute;s que
      compilar un nuevo kernel con la siguiente modificaci&oacute;n:
      <tt>/usr/src/sys/i386/isa/sio.c</tt>. Busca la cadena <tt/0x2e8/
      y borra esta cadena y la coma anterior (mant&eacute;n la coma siguiente).
      Ahora, compila un nuevo kernel de la manera habitual.

      <p>Despu&eacute;s de realizar estos cambios, puedes encontrarte aun que
      las X Window no funcionan correctamente. Algunas tarjetas de
      v&iacute;deo modernas ATI Mach 64 (especialmente la ATI Mach Xpression)
      no funcionan con la versi&oacute;n actual de <tt/XFree86/; la pantalla
      se queda negra cuando arrancas las X o ocurren cosas extra&ntilde;as en
      su funcionamiento. Puedes instalar una versi&oacute;n beta del nuevo
      servidor X que trabaja mejor, situada en
      <url url="http://www.xfree86.org" name="el servidor XFree86">
      y seguir los links hasta el download. Coge los siguientes ficheros:


      <p><tt>AccelCards, BetaReport, Cards, Devices, FILES, README.ati,
      README.FreeBSD, README.Mach64, RELNOTES, VGADriver.Doc,
      X312BMa64.tgz</tt>

      <p>Reemplaza los viejos ficheros por las nuevas versiones y 
      aseg&uacute;rate de ejecutar de nuevo<htmlurl
      url="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&amp;query=xf86config"
      name="xf86config">.

    <sect1>
      <heading>
        Tengo 128MB de RAM pero el sistema solo usa 64MB.
        <label id="reallybigram">
      </heading>

      <p>Debido a la forma que tiene FreeBSD de "ver" el tama&ntilde;o de
      memoria en la BIOS, solo puede detectar 16 bits
      (65535 Kbytes = 64MB) (o menos... algunas BIOS fijan el tama&ntilde;o de
      la memoria a 16MB).

      <p>Para solucionar este problema, tienes que usar la opci&oacute;n del
      kernel indicada m&aacute;s adelante. Hay una manera de ver la 
      informaci&oacute;n completa sobre memoria en la BIOS, pero no tenemos 
      espacio en los bloques de arranque (bootblocks) para hacerlo. Por ahora, 
      tenemos que trabajar con la opci&oacute;n del kernel.

      <tt>
        options "MAXMEM=&lt;n>"
      </tt>

      <p>Donde <tt/n/ es tu memoria en Kilobytes. Para 128MB,
      tendr&iacute;as que usar <tt/131072/.

    <sect1>
      <heading>FreeBSD 2.0 aborta con ``kmem_map too small!''</heading>

      <p><tt /Nota/ El mensaje deber&iacute;a ser ``mb_map too small!''

      <p>La parada indica que el sistema no tiene memoria virtual
      suficiente para los buffers de red (espec&iacute;ficamente, 
      clusters mbuf).
      Puedes incrementar la cantidad de memoria virtual disponible para
      los clusters mbuf a&ntilde;adiendo:

      <p><tt>options "NMBCLUSTERS=&lt;n>"</tt>

      <p>al fichero de configuraci&oacute;n del kernel, donde &lt;n&gt; es un
      n&uacute;mero en el rango 512-4096, dependiendo del n&uacute;mero de 
      conexiones tcp simult&aacute;neas que necesites soportar. Te recomendamos
      intentar con 2048. Puedes monitorizar el n&uacute;mero de clusters mbuf 
      en uso con la orden
      <htmlurl url="http://www.FreeBSD.org/cgi/man.cgi?netstat"
      name="netstat -m">.


    <sect1>
      <heading>``CMAP busy panic'' al arrancar con un nuevo kernel.</heading>

      <p>El programa que intenta detectar ficheros <tt>/var/db/kvm_*.db</tt>
      puede fallar y provocar el "panic" en el arranque.

      <p>Si esto ocurre, arranca en mono-usuario y haz:

      <verb>
        rm /var/db/kvm_*.db
      </verb>

    <sect1>
      <heading>ahc0: brkadrint,  Illegal Host Access at seqaddr 0x0</heading>

      <p>Esto significa un conflicto con una controladora Ultrastor SCSI. 

      <p>Durante el proceso de arranque, entra en el men&uacute; de 
      configuraci&oacute;n del kernel y desactiva el dispositivo
      <htmlurl url="http://www.FreeBSD.org/cgi/man.cgi?uha(4)" name="uha0">.

    <sect1>
      <heading>Sendmail dice ``mail loops back to myself''</heading>

      <p>Esto est&aacute; contestado en la FAQ de sendmail de la siguiente
      manera:

      <verb>
        * Tengo el error "Local configuration error" :

        553 relay.domain.net config error: mail loops back to myself
        554 <user@domain.net>... Local configuration error

        C&oacute;mo puedo solventar el problema?

        Has intentado enviar un mail al dominio domain.net y que sea
        reenviado a un host espec&iacute;fico (en este caso relay.domain.net)
        usando un registro MX, pero la m&aacute;quina que tiene que aceptar
        ese mail, no reconoce el domimio como propio. A&ntilde;ade
        domain.net al fichero /etc/sendmail.cw (si est&aacute;s usando
        FEATURE(use_cw_file) o a&ntilde;ade "Cw domain.net" al fichero
        sendmail.cf
      </verb>

      <p>La versi&oacute;n actual de la  <url
      url="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq"
      name="FAQ de sendmail"> puede ser encontrada en
      <url url="news:comp.mail.sendmail" name="comp.mail.sendmail">,
      <url url="news:comp.mail.misc" name="comp.mail.misc">,
      <url url="news:comp.mail.smail" name="comp.mail.smail">,
      <url url="news:comp.answers" name="comp.answers">, y
      <url url="news:news.answers" name="news.answers">.
      Tambien puedes recibir una copia enviando un mail a
      <url url="mailto:mail-server@rtfm.mit.edu"
      name="mail-server@rtfm.mit.edu"> con el comando "send
      usenet/news.answers/mail/sendmail-faq" en el cuerpo del mensaje.
      

    <sect1>
      <heading>No funcionan correctamente las aplicaciones a pantalla completa
      en m&aacute;quinas remotas</heading>
      <p>Quiz&aacute;s la m&aacute;quina remota tiene el tipo de terminal 
      diferente de <tt>cons25</tt> que es el usado por la c&oacute;nsola de 
      FreeBSD.
      <p>Hay diferentes maneras de solucionar este problema:
      <itemize>
      <item>Despu&eacute;s de hacer el login en la m&aacute;quina remota, 
      configura la variable SHELL como <tt>ANSI</tt> o <tt>sco</tt>.
      <item>Usa el emulador VT100 como <htmlurl
      url="http://www.FreeBSD.org/cgi/ports.cgi?screen-" name="screen">
      local. <tt>screen</tt> te permite la posibilidad de ejecutar 
      m&uacute;ltiples y concurrentes sesiones desde un terminal.
      <item>Instala la base de datos del terminal <tt>cons25</tt> en la 
      m&aacute;quina remota.
      <item>Lanza las X y haz el login en la m&aacute;quina remota desde 
      <tt>xterm</tt>.
      </itemize>

   <sect1>
     <heading>Aparece el mensaje de error "calcru: negative time..."</heading>
     <p>Esto puede ser causado por varios problemas de hardware o software
     relacionados con las interrupciones. Utilizar TCP/IP sobre el puerto
     paralelo con un MTU muy grande es una buena manera de provocar este error.
     Las tarjetas gr&aacute;ficas aceleradoras tambi&eacute;n lo pueden
     provocar, teniendo que revisar la interrupci&oacute;n utilizada
     por la tarjeta.

     <p>El efecto de este error es que los procesos mueren con el mensaje
     "SIGXCPU exceeded cpu time limit".

     <p>Para FreeBSD 3.0 y posteriores desde el 29 de Noviembre de 1998: si
     el problema no puede fijarse de otra manera, la soluci&oacute;n es
     poner la variable sysctl a:
<verb>
               sysctl -w kern.timecounter.method=1
</verb>
    <p>Esto puede significar un impacto en el rendimiento del sistema, pero
    considerando la causa del problema, probablemente no lo notar&aacute;s. Si
    el problema persiste, mant&eacute;n la variable sysctl a uno y 
    a&ntilde;ade la opci&oacute;n "NTIMECOUNTER" en tu kernel para aumentar
    su valor. Si finalmente llegas a un valor de "NTIMECOUNTER=20" el problema 
    no est&aacute; resuelto, y las interrupciones est&aacute;n demasiado
    saturadas para ofrecer un bu&eacute;n rendimiento.
  </sect>

