Linux en laptops y otras cosas ;)

6 08 2008

Muy bien, hace una semana que disfruto mi nueva laptop hp pavilion 2620us. En la cual el sistema por default era el Innombrable (xD). Como podran imaginarse, lo primero que hice fue sacar de mi estuche de discos el de Ubuntu Hardy, sistema que no he tenido la suerte de probar (Probe fue el Kubuntu). Booteo y de repente me ataca una duda..

Me acuerdo de haber leido en una parte algo sobre linux y problemas con discos duros de laptops… sera mejor que chequee antes de hacer nada

Y efectivamente, no tuve que hacer demasiado en Vista para llegar a este excelente articulo. Despues de hacer unas cosas ya Linux estaba instalado en mi pc. Y como me ha parecido ue seria bueno dejar una guia para revivir el blog un poco (He estado ensimismado en el IRC) y ayudar a personas a instalar linux en sus laptops. Aqui cubro tambien el tema de los problemas con discos duros. Empezamos..

Contenido:

  • Primer paso, conociendo algunas cosas
  • Segundo paso, particionar
  • Tercer paso, instalando
  • Cuarto paso, drivers NVIDIA, ATI y BROADCOM
  • Quinto paso, algunas soluciones
  • Sexto paso, agradecimientos
  • Paso 1/6, conociendo algunas cosas

    Primer paso, conocer algunas cosas :) . Vamos a empezar por lo de los discos duros. Veran, un disco duro consiste, basicamente, de una especie de disco donde se almacena la informacion y un cabezal de lectura/escritura, tambien cuenta con una rampa para cuando la pc se apaga el cabezal no quede encima del disco. Para formarse una mejor idea de esto, podemos figurarnoslo como los tocadiscos antiguos. Ahora, en una pc de escritorio, el cabezal siempre esta sobre el disco y solo va a la rampa cuando se apaga la pc. En la mayoria de las laptops nuevas (2004+ creo..) este cabezal pasa entre el disco y la rampa continuamente, a esto lo llamamos ciclos de carga/descarga. Esto, en teoria, ahorra energia, prolonga la duracion del disco duro y lo protege contra golpes. Por supuesto, todas estas son verdades, pero en linux tiende a no ser tanta la segunda. Primero porque por default el valor conocido como APM o Advanced Power Managament esta en 1 de 254. Este valor es utilizado por el sistema operativo para saber cuando decirle al disco que pase de leer/escribir a la rampa. Segundo, por la naturaleza misma de linux, que requiere continuamente acceso al disco. Todo esto, reunido, hace que estos ciclos se produzcan rapidamente. Cual es el problema? Pueden preguntarse ahora mismo. Bueno, el problema reside en que estos ciclos de carga/descarga no son infinitos, cada disco tiene un limite, el cual debe decir el fabricante (Aunque yo todavia no encuentro cual es el del mio). En general, los discos duros suelen tener un tiempo de vida de entre 300k y 600k, donde cada k es igual a 1000 ciclos. Para comprobar cuantos ha dado el tuyo, si es que ya tienes linux, puedes instalar las herramientas smartmontools con:

    $ sudo aptitude install smartmontools

    Y correr esto

    $ sudo smartctl -a /dev/sdx | egrep -i "id|load"

    Reemplazando sdx por el dispositivo que sea su disco (Generalmente sda). Ahora posiblemente despues de chequearlo te asustes un poco y seguramente estes pensando si hay forma de parar esto.... si la hay :P . Pero antes de decir como, tengo que nombrar las desventajas que trae:

    • Gasta mas energia
    • Produce un pelo mas de calor
    • Si mueves tu laptop mientras el APM esta en un valor alto, y el disco duro sufre danos.... olvidate de el

    La utilidad para configurar este valor, es hdparm. Todavia busco por una manera elegante de controlarlo, pero de momento, podemos hacer lo siguiente. Si estamos con el cable de corriente pegado, quiere decir que no se espera mucho movimiento de la laptop, asi que es seguro poner el valor de APM en 254:

    $ sudo hdparm -B 254 /dev/sdx

    Substituyendo la x por el dispositivo que corresponda a nuestro disco (sda generalmente). Cuando la tengamos sin bateria tenemos dos opciones, poner el valor APM en 128 o en 180 (preferiblemente el segundo):

    $ sudo hdparm -B 180 /dev/sdx

    Ahora. Un modo tambien un poco mas elegante es anadir un script de inicio en /etc/init.d con lo siguiente

    #!/bin/bash
    #Script para que Ubuntu elija con que valor de hdparm debe iniciar
    cargador=$(acpi -V | grep -o  -i "on")
    if [ "$cargador" = "on" ]
    then
    hdparm -B 254
    else
    hdparm -B 180
    fi
    

    Actualizacion 9/6/2008: El script ya esta arreglado
    Pero este script necesita ser arreglado, asi que no lo pongan en init.d antes de que se arregle, justo ahora me da un error sobre on-line, aunque funciona bien.

    Bien, alli esta la leccion sobre los discos duros :D . Ahora pasemos a el paso 2.

    Paso 2/6, particionando el disco

    Si no quieres conservar Vista, puedes saltarte este paso :D .
    Para los que no quieran destruirlo, descarguen la ultima version del livecd de Gparted en la pagina oficial localizada en sourceforge. Una vez descargado, quemenlo con infrarecorder, roxio o cualquier software que tengan para quemar imagenes a cds. Dejenlo introducido en el dispositivo cdrom y booteen. Al arrancar denle en safe-graphics mode cuando les pida como quieren iniciar Gparted. Si se les pega mientras carga, aprieten el boton de apagado que tiene su laptop, ojo, no lo dejen apretado, un simple toque basta para dejarlo de nuevo. En el proceso de arranque se les pide que teclado usar, y otras. Seleccionen las opciones correctas y dejen que termine de cargar. Cuando cargue mostrara un escritorio fluxbox. Lanzen gparted desde el icono y esperen a que analice los discos. Una vez analizados, seleccionen la particion de Vista (La mas grande) y denle click-derecho, seleccionen resize o redimenzionar. Denle el espacio libre que quieran a Ubuntu ( tiene que ser > de 3GB ) y denle ok, despues denle a aplicar o apply y esperen mientras hace los cambios. No vayan a cancerlarlo en este punto pues es sumamente peligroso y puede dejar inservible a Vista y quizas causar danos en el disco duro. Cuando termine, cierren la aplicacion y booteen de nuevo. Cuando este a punto de reiniciar, os pedira que le quiten el cd de gparted. Quitenlo e introduzcan el de Hardy, denle a enter y esperen un momento.

    Paso 3/6, la diversion empieza, instalemos Ubuntu!

    Esperemos a que cargue el cd y seleccionemos el idioma. Despues demosle a que inicie y esperemos a que cargue. SI despues de que se complete la barra naranja (La cual por cierto se tarda su tiempo) si os muestra un mensaje de error, ignorenlo y esperen a que cargue la interfaz. Cuando cargue vayan inmediatamente a la terminal y denle la siguiente orden:

    $ sudo hdparm -B 254 /dev/sda

    Desde ahora no podemos mover la laptop, durante la instalacion debe permanecer completamente estable. Ahora lanzamos el instalador y recorremos el paso de seleccionar idioma, teclado, zon horaria... Ahora toca el particionado. Si hemos decidido que Vista no nos sirve demosle a que use todo el disco. SI en cambio, seguimos el paso anterior y queremos dejarlo, vamos a poner manual. Cuando nos cargue el particionador, seleccionamos el espacio libre que creamos anteriormente y le damos a nueva particion o new partition. Le damos como tipo swap y le asignamos 4GB o 2GB, presionamos ok, y cuando aplique todo seleccionamos el espacio libre restante despues de la creacion de swap y le decimos que va a ser ext3, el punto de montaje va a ser '/' (sin comillas) y le asignamos el espacio restante. Esperamos a que aplique y seguimos con la instalacion. Despues de eso nada es dificil o puede dar problemas. Cuando terminen de configurar todos sus datos dejen al instalador comenzar su trabajo y hagan otra cosa mientras tanto, pues hdparm sube un poco la temperatura del disco y el instalador lo esta usando bastante... y no se si sean cosas mias, pero creo que es mejor no hacer nada mientras instala. Si quieren, ponganse a oir musica en youtube (Os recomiendo esta: $ la danza del fuego - mago de oz $ la cancion de los deseos - mago de oz $ la ciudad de los arboles - mago de oz $ yendo a la casa de damian - el cuarteto de nos $ asi soy yo - el cuarteto de nos $ sleeping awake - P.O.D $ el invierno del 92 - mago de oz $ etc... ) o leer, etc. Cuando termine (aproximadamente 15-20 minutos), rebooteen inmediatamente.... ya esta listo, Ubuntu esta instalado :D

    Paso 4/6, opcional de drivers

    Si tenemos una laptop lo primero que ansiaremos sera conectarnos por nuestra flamante tarjeta web o disfutar de los graficos de compiz. En esta seccion cubrire la instalacion de nvidia y de la configuracion del driver b43 para tarjetas broadcom. Para esto necesitaremos una conexion a internet, ya sea en nuestra laptop o en otra pc.

    Primero el wireless. Si nuestra tarjeta no es de broadcom, podemos checar esta excelente pagina que es la que he usado para resolver mis problemas y muchos mas en #ubuntu: http://linuxwireless.org/en/users/Drivers/

    Si nuestra tarjeta es broadcom y tenemos la suerte de tener conexion a internet por ethernet. Solo ejecutemos estos comandos:

    $ sudo aptitude install b43-fwcutter

    Y cuando nos pide si tiene que descargar y extraer el firmware o fetch and extract firmware le decimos que ok. Si le dijimos que no, siempre podemos remediarlo usando

    $ sudo dpkg-reconfigure b43-fwcutter

    Y seleccionando ok.

    Si no tenemos conexion a internet, entonces hay que hacer un poco de trabajo. Primero, descarguemos el paquete b43-fwcutter desde la pagina de paquetes de Ubuntu ( Buscar por Ubuntu packages en google), pasemosla al home de la laptop por cualquier medio de almacenamiento extraibe, abramos una terminal y ejecutemos:

    $ sudo dpkg -i paquete_que_descargamos.deb

    Despues visitemos este link pues hay muchas diferencias y opciones respecto al firmware que hay que usar.

    Ahora, la nvidia. Para eso tenemos que tener conexion a internet. Vamos a System->Administration->Hardware drivers y habilitamos su uso, o a Sistema->administracion->Administrador de hardware. Despues reiniciamos y ya tenemos los drivers activados. Ahora vamos a instalar el configurador de compiz para poder habilitar los demas efectos

    $ sudo aptitude install compizconfig-settings-manager

    Listo, paso 4.

    Paso 5/6, algunas soluciones

    1. Mi ubuntu iva normal, pero ahora cuando booteo me salta una pantalla negra (consola) y no puedo iniciar la grafica
    Bueno, que paso? Actualizaste el kernel o tocaste algo. Solucion? Este problema puede causarse por diversos factores, haz lo siguiente. Primero, escribe tu nombre de login en esa pantalla negra, enter, luego tu contrasena. Luego, enter. Despues lo siguiente

    Primero, vamos a ver si es que se cancelo la instalacion de algun componente basico de X mientras se actualizaba, y arreglemos el problema:

    $ sudo dpkg --configure -a

    Ahora vamos a cersiorarnos de que el sistema este actualizado

    $ sudo aptitude update
    $ sudo aptitude safe-upgrade

    Muy bien, ahora veamos si es que le pasa algo feo a X

    $ sudo apt-get --reinstall install xserver-xorg

    Ya por entonces debemos tratar de ejecutar $ startx y ver si empieza. Si sigue rebelde, pasa algo con los drivers propietarios u otra cosa desconocida, aqui trato solamente lo de los drivers. Tenemos dos opciones, si usamos ati o nvidia y sabemos el nombre de nuetro driver, hagamos un:

    $ sudo sed '1,$ s/nombre_driver/vesa/g' /etc/X11/xorg.conf

    O

    $ sudo nano /etc/X11/xorg.conf

    Y buscamos la seccion Device en la parte que dice Driver "nvidia_o_ati_o_x" y cambiamos lo que va entre comillas por vesa. Salvamos (ctrl+o) y salimos (ctrl+x). Ahora las X deberian funcionar bien.

    2.El driver wireless de Windows parece funcionar mejor que el de Linux, con el de Windows tengo conexion desde X distancia pero en Linux no, tengo algun problema
    No, efectivamente el driver b43 funciona mejor en Windows (No es porque los de linux seamos tontos, es porque la empresa broadcom lleva muchisimo tiempo desarrollando drivers para Windows y dando especificaciones para ellos y por eso no funciona exactamente como queremos). No hay solucion, en todo caso trata de hacer una mini-antena wifi, puedes encontrar mas info en Google.

    3.Compiz no inicia o inicia y no se ven los frames (bordes) de las ventanas, que hago?

    La solucion mas rapida es intentar hacer primero un

    $ compiz --replace

    Y ver que errores da, despues pedir soporte en #ubuntu (ingles pero os ayudaran mas rapido y yo me la paso alli como debCarlos). Si inicia correctamente y no muestra bordes, lo mas facil es prguntar en #ubuntu o instalar emerald

    $ sudo aptitude install emerald

    4.Ubuntu sufre cuelgues constantemente o no inicia
    Si no inicia trata iniciando en single mode desde el grub y se haran las comprobaciones necesarias con fcsk. Si se cuelga, chequea el output de

    $ dmesg | tail

    Buscando por cualquier advertencia del kernel y busca comoo solucionar en google. Tambien trata de actualizar tu sistema.

    5.Como manejo RAID u otros?
    La wiki y la comunidad de Ubuntu actualmente tiene gran cantidad de informacion sobre eso.

    6.GCC, G++, u otro no compila nada!?
    Instala el paquete build-essential:

    $ sudo aptitude install build-essential

    7. APT me muestra errores, una actualizacion/instalacion fue cancelada previamente por mi, que hago?
    Haz en terminal lo siguiente:

    $ sudo dpkg --configure -a

    8. Donde encuentro el compilador de Assembly !?
    Instala NASM :

    $ sudo aptitude install nasm

    Nota, el assembler de Linux es diferente en sintaxis al de DOS u otros.

    9. Quiero u dock como el de MAC, que hago!?
    Necesitas AWN:

    $ sudo aptitude installa awn

    Nota, debes tener activado compiz para correrlo

    10. Gracias por el excelente post, me ha ayudado
    De nada, es todo un placer escribir estos post :D

    Paso 6/6, final


    Espero que os haya servido toda esta informacion que he ido cuidadosamente recopilado por mas de cinco dias. Muchas gracias tengo que dar a la gente de #ubuntu que me ha ayudado mucho, tambien a la de #debian y #hardware. Igualmente, a las siguientes personas/nicks

    De IRC
    roobzilla: Primero en ayudarme, haciendo algunas pruebas en su laptop
    Flannel: Contestando mil y un preguntas que hacia
    Bogus8: Tambien contestando
    TiredWolf: Informacion adicional
    soundray: Informacion adicional
    PanzerMKS: Muchisima ayuda

    De esDebian
    Minaya: Mucha informacion :D

    Tambien a ustedes que esperaron pacientemente una nueva entrada, desde ahora prometo que seran mas regulares. Es que estaba de vacaciones admirando mi laptop xDD.

    Cualquier duda, pongan un comentario :)

    Enlaces de interes

    Entrada original de Vicente Navarro, alias Super Coco
    Informacion sobre la tecnologia load/unload

    Pagina de wireless muy buena sobre Linux

    Pagina principal de Ubuntu
    Pagina principal de gparted
    Pagina principal de NASM


Acciones

Información

4 respuestas

15 10 2008
Jhon F. Ortiz O.

¡Qué bien que hayas dedicado parte de tu tiempo a crear una guía que sirve para las personas que apenas se están iniciando en el mundo de GNU/Linux! Hasta pronto.

17 10 2008
debianusr

Gracias :)

13 02 2009
jorge

Hola soy un usuario de ubuntu, pero compre mi maquina hp pavilion 1022la y no logro ingresar a la instalacion.. vi 2 respuestas dadas por aca de agregarle : – noapic noloapic y otros dicen que coloque: vga=771 noacpi noapic
y ninguna de las dos me sirve. el dvd esta bueno he podido instalar con el en varias maquina de escritorio.. por favor necesito que me ayuden con eso.. que dificil es vender una maquina casi nueva y venderla por ese inconveniente. la compre fue por la buena configuracion de hardware que tiene . osea es potente.. ayudenme por favor mi correo es yampier80@cantv.net

14 02 2009
debianusr

Tendrias que leer la ayuda que trae el cd de ubuntu sobre las opciones de arranque, a mi me paso algo “similar” (La laptop no arrancaba debian a menos de que presionara el boton de apagar) y lo que hice fue ir probando con las diferentes opciones de acpi, creo que son estas:

acpi=off noapic nolapic

Creo que al final arranco con noapic y nolapic + pnpbios=off (No me acuerdo bien), como te digo, tienes que ir tratando con las opciones de acpi. De todos modos seria bueno si pusieras cualquier mensaje de error que te de.

Deja un comentario