<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.5-Based Extension//EN" "../../../share/xml/freebsd45.dtd"> <article lang="es"> <articleinfo> <title>FreeBSD en ordenadores portátiles</title> <abstract> <para>FreeBSD funciona perfectamente en la mayoría de portátiles aunque siempre haya excepciones. En éste artículo trataremos de las diferencias existentes en el hardware de portátiles y sistemas de escritorio y de cómo afecta esto al uso de FreeBSD.</para> &trans.es.bazcar; </abstract> <pubdate>$FreeBSD$</pubdate> <releaseinfo>$FreeBSD$</releaseinfo> </articleinfo> <para>Es frecuente que se piense en FreeBSD como un sistema operativo para servidores pero funciona muy bien como sistema de escritorio y si quiere usarlo en su portátil dispondrá de todo su potencial: facilidad de administración y actualización, el sistema de <quote>ports</quote> y <quote>packages</quote> para añadir software, etc. Otras de sus características más interesantes, como la estabilidad, el rendimiento en red y bajo grandes cargas de trabajo pueden, por razones obvias, no ser tan evidentes en un sistema portátil. La instalación en portátiles puede, sin embargo, acarrear problemas que no encontraríamos en sistemas de escritorio y cuyas soluciones no podemos encontrar por doquier a lo largo y ancho de Internet; los equipos portátiles suelen estar diseñados para Microsoft Windows, aún con más frecuencia que en sistemas de escritorio. Éste artículo tratará de aclarar alguno de estos problemas. Hay quien ha documentado sus experiencias con &os; en modelos concretos de portátiles y las ha incluído en páginas web que no forman parte de la documentación oficial de &os;. Es muy posible que encuentre información si introduce la marca y modelo de su portátil y la palabra <quote>&os;</quote> en un buscador.</para> <sect1> <title>XFree86</title> <para>Las versiones recientes de <application>XFree86</application> funcionarán con la mayoría de tarjetas gráficas disponibles actualmente en portátiles. La aceleración gráfica tal vez no esté soportada pero una configuración SVGA genérica debería funcionar.</para> <para>Consulte la documentación de su portátil. Ahí deberí encontrar todos los detalles de su tarjeta, tras lo cual debería recurrir a la documentación de <application>XFree86</application> (o el programa de configuración) para saber si está soportada o no. Si no lo está utilice un dispositivo genérico pero <emphasis>NO</emphasis> use uno cuyo nombre simplemente le resulte parecido. En la versión 4 de <application>XFree86</application> puede probar suerte tecleando <userinput>XFree86 -configure</userinput>, que ejecuta un proceso de autodetección y le puede facilitar una gran cantidad de información muy útil.</para> <para>Con frecuencia el problema es la configuración del monitor. La información sobre <application>XFree86</application> se centra en monitores CRT, por lo que disponer de una configuración para una pantalla LCD puede ser peliagudo. Quizás esté de suerte y no tenga que especificar rangos de <literal>HorizSync</literal> y <literal>VertRefresh</literal>. Si esto no funciona la mejor opción es recurrir a la web en busca de páginas dedicadas a la configuración de X en portátiles; suelen estar orientadas a Linux pero no importa dado que ambos sistemas operativos usan <application>XFree86</application>, por lo que puede usar la configuración que alguien haya usado sobre un hardware similar.</para> <para>La mayoría de portátiles incluyen dos botones para las funciones de botón primario y secundario del ratón (mouse), lo que puede resultar problemático en X ya que el botón central se usa para pegar texto; puede <quote>mapear</quote> una pulsación simultánea de ambos botones en la configuración de X que realice la función del botón central con la línea</para> <programlisting> Option "Emulate3Buttons" </programlisting> <para>en el fichero <filename>XF86Config</filename> en la sección <literal>InputDevice</literal> de <application>XFree86</application> versión 4; para la versión 3 simplemente añada la línea <literal>Emulate3Buttons</literal>, sin comillas, en la sección <literal>Pointer</literal> .</para> </sect1> <sect1> <title>Modems</title> <para> Los equipos portátiles suelen incluír modems internos. Desgraciadamente eso casi siempre significa que son <quote>winmodems</quote> cuyo funcionamiento depende de software y para los cuales sólo hay disponibles controladores para windows. A pesar de ello están empezando a aparecer controladores para otros sistemas operativos; por ejemplo, si su modem tiene un chipset Lucent LT es muy posible que esté soportado por el port <filename role="package">comms/ltmdm</filename>. Si ese no es su caso tendrá que buscar un modem externo: la solución más compacta probablemente sea un modem PC Card (PCMCIA), de los que hablaremos más adelante, pero los modem serie o USB serán seguramente más baratos. Normalmente los modems normales (es decir, los que no son winmodems), deberían funcionar sin problemas.</para> </sect1> <sect1> <title>Dispositivos PCMCIA (PC Card)</title> <para> Muchos portátiles incluyen bahías PCMCIA, también conocidas como PC Card, que suelen estar soportadas perfectamente por FreeBSD. Consulte el mensaje de arranque de su sistema (mediante &man.dmesg.8;) para saber si fueron detectadas correctamente; deberían figurar como <devicename>pccard0</devicename>, <devicename>pccard1</devicename> etc. en dispositivos como <devicename>pcic0</devicename>).</para> <para>&os; 4.X soporta tarjetas PCMCIA de 16 bits y &os; 5.X soporta tanto éstas tarjetas de 16 bits como tarjetas de 32 bits <quote>CardBus</quote>. Hay una lista de tarjetas soportadas en el fichero <filename>/etc/defaults/pccard.conf</filename>. Léalo cuidadosamente y siempre que sea posible compre tarjetas que aparezcan en ese fichero. Las que no aparecen es posible que funcionen como dispositivos <quote>genéricos</quote>; en concreto la mayoría de los modem de 16 bits deberían funcionar correctamente siempre y cuando no sean winmodems (existen también como PC Cards, así que tenga cuidado). Si su sistema reconoce su tarjeta como un modem genérico tenga en cuenta que el fichero <filename>pccard.conf</filename> especifica por defecto un retardo de 10 segundos para evitar bloqueos en algunos modelos; eso puede ser una precaución excesiva para su modem así que es posible que quiera cambiar ese valor, reducirlo o incluso eliminarlo.</para> <para>Algunas partes de <filename>pccard.conf</filename> pueden necesitar un poco de edición. Busque la línea donde figura la irq y asegúrese de eliminar cualquier número que esté en uso; si tiene una tarjeta de sonido integrada borre irq 5, si no puede sufrir bloqueos del sistema al insertar la tarjeta. Consulte también la memoria disponible para las bahías; si su tarjeta sigue sin ser detectada pruebe a cambiar alguno de los valores posibles que aparecen en la página man de &man.pccardc.8;. </para> <para>Si aún no funciona puede lanzar el daemon &man.pccardd.8;. Para activarlo en el arranque añada <programlisting>pccard_enable="YES"</programlisting> en el fichero <filename>/etc/rc.conf</filename>. Tras ese paso sus tarjetas deberían ser detectadas cuando las inserte y cuando las extraiga; deberían asímismo aparecer entradas en ficheros <quote>log</quote> reflejando el momento en el que los nuevos dispositivos son activados.</para> <para>Ha habido cambios de gran calado en el código de pccard, como la inclusión de enrutado de interrupciones ISA, muy útil en máquinas en las que hasta la irrupción de FreeBSD 4.4 no era posible usar la BIOS PCI. Si tiene problemas con esto pruebe a actualizar su sistema.</para> </sect1> <sect1> <title>Administración de energía</title> <para>Desgraciadamente no existe un soporte demasiado bueno en FreeBSD. Si tiene suerte algunas características pueden ser funcionales mientras que otras no lo serán en absoluto.</para> <para>Para complicar un poco más las cosas hay dos estándares de administración de energía, APM y ACPI. El segundo se hizo para sustituír el primero e incluye nuevas características pero también más problemas.</para> <para>Algunos portátiles soportan tanto APM como ACPI (hasta cierto punto) mientras que otros sólo soportan uno de ellos así que no tendrá más remedio que experimentar con ambos para saber si dispone de administración de energía y hasta qué punto.</para> <note> <para>No puede tener APM y ACPI activados simultáneamente, aunque su portátil soporte ambos.</para> </note> <sect2> <title>APM</title> <para>Una BIOS con APM (Advanced Power Management, Administración Avanzada de Energía) provée de soporte para diversas características de administración de energía tales como <quote>standby</quote>, suspensión, hibernación, reducción de la velocidad del reloj de la CPU, etc. y existe tanto en &os; 4.X como en &os; 5.X.</para> <para>Para activar el soporte de APM deberá compilar su kernel: añada <literal>device apm0</literal> en &os; 4.X y <literal>device apm</literal> en &os; 5.X. El soporte APM como módulo existe en &os; 5.X; para cargarlo en el arranque añada la línea <literal>apm_load="YES"</literal> al fichero <filename>/boot/loader.conf</filename>.</para> <para>En &os; 5.X tendrá que asignar <literal>hint.apm.0.disabled="0"</literal> en el fichero <filename>/boot/device.hints</filename>.</para> <para>APM puede activarse en el arranque añadiendo <literal>apm_enable="YES"</literal> en el fichero <filename>/etc/rc.conf</filename>. El daemon &man.apmd.8; se puede lanzar añadiendo <literal>apmd_enable="YES"</literal> al fichero <filename>/etc/rc.conf</filename>, que se encarga de transmitir ciertos eventos a la BIOS, de manera que sea posible suspender/reanudar presionando alguna tecla concreta o al abrir y al cerrar la pantalla.</para> <para>Los comandos APM figuran en la página man de &man.apm.8;. Por ejemplo <command>apm -b</command> suministra el estado de la batería (o 255 si no está soportado), <command>apm -Z</command> pone el portátil en <quote>standby</quote>, <command>apm -z</command> (o <command>zzz</command>) lo suspende. Para apagar el sistema use <command>shutdown -p</command>. Le recordamos una vez más que alguna o incluso todas éstas funciones pueden no funcionar del todo bien o incluso no hacerlo en absoluto.</para> <para>Es posible que la suspensión o el modo <quote>standby</quote> funcione en consola pero no en X (esto es, la pantalla no se recupera). Si usa &os; 5.X una posible solución es añadir <literal>options SC_NO_SUSPEND_VTYSWITCH</literal> al fichero de configuración de su kernel y que lo recompile. Otra forma de solucionarlo es cambiar a otra consola virtual (mediante <keycombo action="simul"><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap></keycombo> u otra tecla de función) y ejecutar &man.apm.8;. Si está usando &man.apmd.8; puede automatizar esto con &man.vidcontrol.1;: edite <filename>/etc/apmd.conf</filename> y cámbielo del siguiente modo:</para> <programlisting>apm_event SUSPENDREQ { exec "vidcontrol -s 1 < /dev/console"; exec "/etc/rc.suspend"; } apm_event USERSUSPENDREQ { exec "vidcontrol -s 1 < /dev/console"; exec "sync && sync && sync"; exec "sleep 1"; exec "apm -z"; } apm_event NORMRESUME, STANDBYRESUME { exec "/etc/rc.resume"; exec "vidcontrol -s 9 < /dev/console"; }</programlisting> </sect2> <sect2> <title>ACPI</title> <para>ACPI (Advanced Configuration and Power Management Interface, Interfaz para la Administración de Energía y Configuración Avanzada) facilita no solo la administración de energía sino también la detección de hardware (sustituyendo la detección PnP y PCI). ACPI sólo está disponible en &os; 5.X y está activado por defecto, así que no tiene que hacer nada especial para que funcione. Puede controlar el comportamiento de ACPI con &man.acpiconf.8;.</para> <para>Desgraciadamente los fabricantes ponen a la venta sus portátiles con implementaciones ACPI defectuosas, haciendo que habilitar ACPI algunas veces genere más problemas que ventajas, hasta el punto de no poder siquiera arrancar &os; en algunas máquinas con ACPI habilitado.</para> <para>Si ACPI le está causando problemas debería comprobar si el fabricante de su portátil ha liberado una nueva versión de la BIOS que solucione alguno de esos problemas. Dado que la implementación de ACPI en &os; está en constante evolución debería también actualizar su sistema; tal vez así sus problemas se solucionen.</para> <para>Si desea deshabilitar ACPI añada <literal>hint.acpi.0.disabled="1"</literal> al fichero <filename>/boot/device.hints</filename>. ACPI puede deshabilitarse temporalmente en el <quote>prompt</quote> del arranque tecleando <literal>unset acpi_load</literal> en caso de tener problemas para arrancar una máquina con ACPI habilitado. &os; 5.1-RELEASE y posteriores disponen de un menú en el arranque que controla cómo &os; arranca. Una de las opciones que se suministran es la de dehabilitar ACPI. Para hacerlo simplemente seleccione <guimenuitem>2. Boot &os; with ACPI disabled</guimenuitem> (Arrancar &os; con ACPI deshabilitado) en el menú.</para> </sect2> <sect2> <title>Administración de Energía de la Pantalla</title> <para>El sistema X window (<application>XFree86</application>) incluye administración de energía de la pantalla (consulte la página man de &man.xset.1; y busque en ella <quote>dpms</quote>). Tendrá que investigar. Sin embargo tenga en cuenta que también esto funciona de manera muy poco fiable en portátiles: con frecuencia apaga la pantalla pero no apaga la retroiluminación.</para> </sect2> </sect1> </article>