Debian squeeze en Samsung N210

La semana pasada me compré una netbook Samsung N210 con la cual estoy muy contento. Le instalé Debian squeeze (testing) y logré configurarle todas las teclas especiales, incluyendo las usadas para regular el brillo de la pantalla. Me basé en varias guías como esta y esta otra, aunque no las seguí exactamente y es por eso el motivo del post.

Antes de comenzar la guía (y suponiendo que como yo, estás leyendo esto antes de comprar la máquina) te cuento mi experiencia con este aparatito. Algo que me hacía dudar en comprarme o no una netbook era el teclado que traían: demasiado chicos o sin espacio entre teclas. La N210 tiene casi la misma distancia entre la A y la Ñ que los teclados de escritorio y además tiene las teclas separadas como para que los dedos reconozcan mejor dónde están ubicados. Lo encuentro bastante cómodo y agradable de usar y salvo por un par de teclas que complican un poco (la < se encuentra sobre la derecha y el shift derecho es chico) me siento a gusto con él. Por otro lado la batería dura aprox. 7 hs (con el brillo casi a tope) contra las 11 que declara Samsung. Dudo que llegue a eso incluso desconectando la wifi, bluetooth y poniendo el brillo al mínimo, pero aun así destaca su autonomía. Otra característica que me gusta es que es silenciosa y calienta muy poco.

Una última cosa antes de comenzar: El microprocesador Atom N450 tiene tecnología Hyperthreading que paraleliza el procesador físico en dos procesadores virtuales. Es por eso que la salida de/proc/cpuinfomuestra dos cpus.

Ahora sí, vamos a la guía.

Preparando el instalador

El boot del instalador lo hice a través de la red, mediante un servidor PXE que armé en otra máquina. En realidad PXE no es un único servicio sino varios que en conjunto crean el entorno para que el boot remoto sea posible. Los servicios que lo componen son DHCP, TFTP e inetd (o xinetd). Hay muchas guías por ahí para hacer esto: 1, 2, 3. Aquí va la receta que yo usé:

# apt-get install tftpd tftp dhcp3-server

En el archivo/etc/dhcp3/dhcpd.confagregar lo siguiente:

group {
  allow bootp;
  next-server 192.168.1.2;
    filename "pxelinux.0";
    host samsung-n210 {
        hardware ethernet 00:24:54:76:EC:08;
        fixed-address 192.168.1.10;
    }
}

Donde192.168.1.2es la IP del servidor que tiene el servidor TFTP.00:24:54:76:EC:08es la MAC address de la netbook y192.168.1.10es la IP fija que se le asignará a la netbook.

El instalador de Debian agrega la siguiente línea a/etc/inetd.confal momento de la instalación de tftpd así que ni hay que tocarlo:

tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp/

Notar que el directorio/srv/tftp/es el raíz del servidor TFTP y es el lugar donde se debe descomprimir el instalador de Debian.

# tar xvf netboot.tar.gz -C /srv/tftp
# chown -R nobody:nogroup /srv/tftp
# chmod -R 777 /srv/tftp

El funcionamiento del servidor TFTP se puede comprobar ingresando y pidiendo un archivo:

$ tftp localhost
tftp> get version.info
Received 65 bytes in 0.1 seconds

Finalmente hay que reinciar inetd, dhcp y setear la bios de la netbook para que haga el boot por la placa de red. Para no perder tiempo y poder ver cualquier error que se produzca es conveniente dejar sólo la placa de red en la secuencia de booteo.

Instalación

Bueno, no tengo mucho que decir acá. Yo preferí (por ansiedad) instalar el sistema base (pelado, sin X), instalar grub y finalizar; Reiniciar, cambiar la secuencia de boot y comprobar que Linux levantara correctamente.

Lo segundo entonces fue instalargnome-desktop-environmentyfirmware-linux-nonfreeynetwork-manager-gnomepara la wifi.

El entorno gráfico levantó sin problemas y sin que tuviera que tocar nada. Out-of-the-box como le dicen.

Ajuste de brillo y otras teclas rebeldes

Antes de comprarme la máquina sabía que las teclas de ajuste de brillo no funcionaban pero ni bien instalé Gnome descubrí con sorpresa que sí andaban. Fue luego de un tiempo y de varios apt-get install que dejaron de funcionar. Además tampoco andaban las teclas activar/desactivar wifi, bluetooth y pantalla.

En la segunda guía que mencioné al principio del post cuentan que existe un proyecto llamado Linux on my Samsung que lidera un tano copado llamado Fortunato Ventre y que escribiósamsung-tools(en Python) y que sirve para darle vida a esas teclas que tanto nos angustian cuano no hacen lo que dicen hacer. El programa usa un módulo, escrito por otra gente, llamadosamsung_backlightque se distribuye bajo el paquete easy-slow-down-manager y que según palabras de sus creadores hace lo siguiente:

Easy slow down manager provides Linux users with functionality similar to “Samsung Easy Speed Up Manager”. It also allows to turn WiFi on and off.

Entonces hay que instalar primero este módulo, para lo cual necesitamos descargar el .deb y compilarlo con los headers correspondientes al kernel que estemos usando.

# apt-get install linux-headers-`uname -r`
# dpkg -i easy-slow-down-manager-dkms_0.13.1_all.deb

Luego de instalar el módulo, bajamos el paquete samsung-tools y lo compilamos también, no sin antes instalar sus dependencias.

# apt-get install xbindkeys dbus-python rfkill gettext
# tar xzf samsung-tools-1.1.1.tar.gz
# cd  samsung-tools-1.1.1
# make
# make install

Las teclas de brillo deberían funcionar tras reiniciar el sistema. Si no, puede que no esté cargado el módulo. Acá dejo la salida de algunos comandos de mi sistema funcionando:

# modprobe -l | grep -i samsung-backlight
updates/samsung-backlight/samsung-backlight.ko
# lsmod | grep samsung
samsung_backlight       2740  0
# dmesg | grep Samsung
[    4.009833] Samsung-backlight: checking for SABI support.
[    4.010082] Samsung-backlight: SABI is supported (f5191)

El TouchPad

Sólo nos resta ocuparnos de este, que de movida funciona pero tiene algunas opciones ocultas que pueden ser interesantes, como el scolling circular. El TouchPad puede setearse directamente desde la consola mediante el comandosynclientpasándole como parámetro la propiedad a modificar y su nuevo valor. Las siguientes dos líneas habilitan el scrolling horizontal:

$ synclient HorizEdgeScroll=1
$ synclient TouchpadOff=0

Se puede obtener un listado completo de todas las propiedades con sus valores actuales ejecutando

$ synclient -l

Lindo, pero es un poco engorroso manejarlo así (y yo quiero habilitar y setear el scrolling circular). Por suerte existe gpointing-device-settings que permite configurar el TouchPad en forma gráfica.

Lamentablemente la versión actual (1.5.1-2) tiene un bug conocido que no persiste los cambios al salir de la sesión. Seguramente lo arreglarán pronto. Mientras tanto se me ocurrió lo siguiente: setear todas las propiedades con gpointing-device-settings, recolectar el estado completo con synclient -l y generar un .sh que se ejecute al inicio de la sesión:

$ synclient -l | awk '{if(NR==1)print "#!/bin/bash";else print "synclient " $1 $2 $3}' > touchpad-settings.sh && chmod u+x touchpad-settings.sh

Sólo queda añadirtouchpad-settings.shal listado de aplicaciones que se ejecutan al iniciar la sesión de Gnome.

Tags: , ,

One Response to “Debian squeeze en Samsung N210”

  1. Patricio  on October 20th, 2010

    hola. yo tengo el mismo equipo que tu y le instale debian squeze, sin embargo, de otra forma configure las teclas Fn, mi pregunta es:
    encuentro que no corre muy rapido debian en mi maquina, y un detalle, es que en el monitor del sistema aparece un uso importante de la cpu (30%) v/s un uso minimo de ram (105Mb), tengo 2 gigas en el equipo…..a diferencia de un C2D de mi pc de escritorio que tambien tiene debian, que es todo lo contrario el uso de cpu y ram,…..entiendo la diferencia de potencial de las maquinas, pero mi pregunta va, a que si existe algun kernel modificado para el netbook samsung N210 o algo que agregar al kernel actual para que la configuracion sea mas optima..
    gracias y saludos…


Leave a Reply