Instalar Debian en Asus ZenBook UX31E
No me gusta el MacBook Air. Es un producto típico de Apple:
- No tiene puerto VGA, solo un puerto thunderbolt, y se incluye adaptador DVI. Tal y como viene de la caja no me sirve para nada, necesito al menos el cablecito thunderbolt-VGA.
- No puede reemplazarse la batería. Utiliza tornillos tork de seguridad.
- No tiene soporte de USB 3.0. Todo al formato propietario de Apple, thunderbolt.
- Aparte de ser sensiblemente más caro, como mínimo para ser útil necesita: displayport-VGA (30€), displayport-HDMI (40€). Un simple cable thunderbolt son 40€. Un disco thunderbolt de 1TB 430€. ¿Y si quieres poner un disco USB3?
- Es un producto Apple, con todo lo que eso conlleva. Su ejército de abogados se encargarán de que nunca haya libre competencia.
- USB 2.0, USB 3.0, HDMI y VGA. Todo estándar, pero con los conectores más pequeños posible (mini-VGA y mini-HDMI).
- Incluye lo necesario: Dongle USB Ethernet y cable mini-VGA.
- Usan tornillos tork, pero no de seguridad, para que puedas abrirlo con normalidad. ¿Cómo si no vas a cambiar el disco SSD o la batería?
- El sonido 5.1 a través de HDMI es excelente. Puedo usarlo con mi tele sin tener que comprar otro cacharro a Apple.
- Tiene una pantalla mucho mejor 1600x900, en lugar del extraño 1400x900 de Apple. Nótese que el Asus respeta el factor de forma de HDTV.
Preparación
Antes de instalar Debian lee bien toda la receta. Si no realizas los pasos previos puedes acabar teniendo que abrir el ordenador para sacar la batería. Eso es un fastidio por dos razones: primero porque necesitas un destornillador tork pequeñito, que seguro que no tienes a mano. Segundo porque me temo que si lo abres pierdes la garantía.Actualizar la BIOS
Bajate de Asus la última actualización de la BIOS. Se puede instalar desde el propio menú de la BIOS. Yo la descargué de aquí. Elige OS Others y de ahí descarga la última BIOS (yo descargué la 211). Grábala en una memoria USB. Arranca el portátil pulsando F2 (o Esc) y una vez en la BIOS ve a las opciones avanzadas y de ahí a Enter Setup. La opción Easy Flash te permite elegir el archivo con la última BIOS para actualizar. Asegurate de que está enchufado a la corriente durante todo el proceso. Te aseguro que no te gustaría que se quedara sin batería en medio de la actuaización.Baja la Businesscard de Debian testing amd64
Yo bajé mi copia de aquí y la grabé en una memoria USB utilizando unetbootin en otro ordenador con Debian GNU/Linux. ¡Importante! No uses la netinstall de momento, porque actualmente tiene un bug que impide progresar la instalación más allá del sistema base.Configuración de la BIOS
Desactiva en la BIOS la opción VT-d. Parece que esto evita algún problema, aunque tengo que decir que a mi nunca me pasó nada teniendo activa esa opción. En el menu de salida de la BIOS puedes elegir la memoria USB como dispositivo de arranque temporal.Instalar Debian
Instalar Debian no es inmediato porque actualmente el kernel del Debian Installer no soporta el dongle USB Ethernet que se incluye con el Asus. Si te puedes apañar con la WiFi (es una Atheros) no habrá problemas. Si no te puedes apañar te sugiero que pidas prestado durante un rato otro dongle más antiguo. En la instalación elige lo mínimo (Laptop), ya te ocuparás luego de seguir instalando cuando tengas un kernel más nuevo. Cuando la instalación termine arrancará con un kernel más decente (3.2). Edita /etc/default/grub y cambia GRUB_CMDLINE_LINUX para que contenga i915.i915_enable_rc6=1 i915.semaphores=1. Actualiza el archivo grub.cfg ejecutando update-grub. Edita un nievo archivo en /etc/pm/sleep.d/20_zenbook con lo siguiente.EHCI_BUSES="0000:00:1a.0 0000:00:1d.0" case "${1}" in hibernate|suspend) # Switch USB buses off for bus in $EHCI_BUSES; do echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/unbind done ;; resume|thaw) # Switch USB buses back on for bus in $EHCI_BUSES; do echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/bind done ;; esacEdita un nuevo archivo en /etc/pm/power.d/zenbook.sh con lo siguiente. Está sacado de la primera referencia pero algunas rutas están cambiadas para reflejar las que tiene un Zenbook UX31e de ahora.
case $1 in true) echo 1500 > /proc/sys/vm/dirty_writeback_centisecs echo auto > /sys/bus/usb/devices/3-1.7/power/level echo auto > /sys/bus/usb/devices/3-1.8/power/level echo auto > /sys/bus/pci/devices/0000:02:00.0/power/control echo auto > /sys/bus/pci/devices/0000:00:1f.2/power/control echo auto > /sys/bus/pci/devices/0000:00:1d.0/power/control echo auto > /sys/bus/pci/devices/0000:00:00.0/power/control echo auto > /sys/bus/pci/devices/0000:00:16.0/power/control echo auto > /sys/bus/pci/devices/0000:00:1b.0/power/control echo auto > /sys/bus/pci/devices/0000:00:1c.0/power/control echo auto > /sys/bus/pci/devices/0000:00:1c.1/power/control echo auto > /sys/bus/pci/devices/0000:00:1c.3/power/control echo auto > /sys/bus/pci/devices/0000:00:02.0/power/control echo min_power > /sys/class/scsi_host/host0/link_power_management_policy echo 5 > /sys/bus/pci/devices/0000:00:02.0/backlight/acpi_video0/brightness for i in 0 1 2 3; do echo powersave > /sys/devices/system/cpu/cpu${i}/cpufreq/scaling_governor done ;; false) echo 9 > /sys/bus/pci/devices/0000:00:02.0/backlight/acpi_video0/brightness for i in 0 1 2 3; do echo ondemand > /sys/devices/system/cpu/cpu${i}/cpufreq/scaling_governor done ;; esac exit 0Dale permisos de ejecución a este último. Ahora puedes ejecutar tasksel como superusuario para completar la instalación.
Recompilar el kernel
¡Actualización! Ya no es necesario recompilar el kernel. Actualmente, con la versión 3.2.0-3-amd64 y la BIOS 212 me funciona todo y no se apaga. De todas formas dejo la sección para los que utilicen distribuciones más antiguas. Mi BIOS sigue teniendo errores de DSDT, pero no parece que afecten al buen funcionamiento. Hasta hace poco teníamos que recompilar el kernel para arreglar la DSDT (para que se suspenda correctamente), activar el Bluetooth, y activar el lector de SD. Nada de esto se podía hacer con el kernel por defecto. Si te aburre todo esto y te fias de mí puedes descargar los paquetes ya compilados desde aquí.Descargar el kernel
Para descargar y compilar seguí los mismos pasos que en esta página salvo por dos añadidos: la modificación del driver de Bluetooth y la activación del driver del lector SD. Todo eso lo explico a continuación pero debe hacerse justo antes de compilar el kernel.Arreglar la DSDT
La DSDT de la BIOS 211 (y la 212) tiene los mismos errores que la DSDT de la BIOS 210. Así que seguí exactamente los mismos pasos que en esta página.Arreglar el módulo para Bluetooth
Cambié los archivos drivers/bluetooth/btusb.c y drivers/bluetooth/ath3k.c según se describe en este página. Increiblemente todavía en el 3.2.9 no lo han añadido. Si añades este módulo y suspendes el ordenador verás que deja de funcionar. Se recupera fácilmente haciendo un /etc/init.d/bluetooth restart pero es muy molesto si tienes ratón o teclado Bluetooth (por ejemplo cuando lo usas como mediacenter). De momento lo que yo hago es ejecutar eso precisamente en el /etc/pm/sleep.d/20_zenbook que queda finalmente así:EHCI_BUSES="0000:00:1a.0 0000:00:1d.0" case "${1}" in hibernate|suspend) /etc/init.d/bluetooth stop # Switch USB buses off for bus in $EHCI_BUSES; do echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/unbind done ;; resume|thaw) # Switch USB buses back on for bus in $EHCI_BUSES; do echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/bind done /etc/init.d/bluetooth start ;; esacSi encuentras una solución mejor dímelo.
Activar el módulo del lector de SD
Hay que añadir el módulo Staging drivers/Realtek RTS5139 que por defecto no se incluye. Puedes añadir al archivo .config la opción siguiente:CONFIG_RTS5139=m
Referencias
- Foro de Ubuntu: https://help.ubuntu.com/community/AsusZenbook
- Wiki de ArchLinux: https://wiki.archlinux.org/index.php/Asus_Zenbook_UX31E
- Wiki de Debian: http://wiki.debian.org/OverridingDSDT
- Página de Asus: http://zenbook.asus.com/
[ show comments ]
blog comments powered by Disqus