martes, 24 de mayo de 2011

Cambiar de Debian Squeeze (Estable) a Debian Wheezy (Testing) + 2 bonus del día

Hola mis ardillas, ¿que cuentan? Nada, ya sé ¬¬
Les cuento que hace un tiempo decidí cambiar Debian Squeeze por la versión Testing. La razón fue simple curiosidad, ya que Squeeze venía funcionando bastante bien mas allá de los "pequeños" problemas que cada tanto aparecen entre el plugin de flash y el navegador, que de todas formas parece ser algo mas de flash con Linux que de Debian en particular.
Bueno, como les decía decidí pasar a Testing por curiosidad y también atraído por eso de "tener versiones mas nuevas del software" (aunque no tan atraído como para pasar a la versión experimental) a riesgo de mandarme un cagada.

Antes que nada y a modo de introducción, vamos a ver que es eso de Estable, Testing y Experimental.
El tema es así, Debian tiene una versión llamada "Estable" (en este caso la última lleva el nombre de Squeeze) que se trata de una versión probada y recontra-probada que apunta mas que nada a instalarlo en computadoras que no pueden fallar... como por ejemplo un servidor. La ventaja obviamente es la estabilidad del sistema, que ya de por si tiene la fama de ser "solido como una roca", si a esto le sumamos que las pocas actualizaciones han sido testeadas hasta el cansancio podriamos decir que es un sistema que no parece presentar ningún riesgo de falla (aunque todos sabemos que puede fallar, mas si los que actualizamos somos nosotros ¬¬). La desventaja es que en el afán de probar tanto, se actualiza muy lentamente con lo cual el software suele ser bastante viejo.

La versión "Testing" es donde van a parar todos los programas "a ser probados" para formar parte de la versión estable. La última versión de Testing se llama Wheezy y si bien los programas están "a prueba" para la versión estable realmente es dificil toparse con errores "graves", por lo general combina paquetes probados que funcionan bien con paquetes que aun no fueron aceptados por la rama estable. Se recomienda para el uso doméstico.

La versión "Unestable" (llamada simplemente "SID") como bien lo indica el nombre es una versión inestable en la que todo puede fallar (lo que no significa necesariamente que falle). En ella tenemos a nuestra disposición las últimas versiones de cada software que utilicemos.

Aclarado lo de las versiones les cuento que si bien mi idea era "moverme" de versión había algo que no pensaba hacer (a riesgo de tener que hacerlo) reinstalar. Entonces googleando pude ver que se puede cambiar de versión solo cambiando de repositorios, aunque obviamente ésto desde la teoría.

El primer paso fue editar el archivo /etc/apt/sources.list. Para ello abrí la terminal y escribí:

sudo gedit /etc/apt/sources.list

En mi caso apareció algo así:

    #Repositorios oficiales
    deb http://ftp.fr.debian.org/debian/ squeeze main
    deb-src http://ftp.fr.debian.org/debian/ squeeze main
    #Repositorios de seguridad
     deb http://security.debian.org/ squeeze/updates main
     deb-src http://security.debian.org/ squeeze/updates main
    #Repositorios multimedia
    deb http://www.debian-multimedia.org/ squeeze main
    deb-src http://www.debian-multimedia.org/ squeeze main

Éstos vienen a ser los repositorios de mi versión Estable de Debian. Lo que hay que hacer es reemplazar donde dice "Squeeze" por "Testing" quedando algo así:

# OFICIALES
deb http://ftp.fr.debian.org/debian/ testing main
deb-src http://ftp.fr.debian.org/debian/ testing main contrib non-free
# SEGURIDAD
deb http://security.debian.org/ testing/updates main
deb-src http://security.debian.org/ testing/updates main contrib
# Repositorios multimedia
deb http://www.debian-multimedia.org/ testing main non-free
deb-src http://www.debian-multimedia.org/ testing main non-free

Con algunos cambios agregados que pueden observar, así es como quedaron mis repositorios actuales.
Luego de modificar el archivo, lo guardamos y procedemos a la actualizacion propiamente dicha. Para ello ejecutamos en una terminal lo siguiente:

sudo aptitude update

En éste paso puede aparecer algún error si es que tienen algún repositorio oficial de algún programa específico. En ese caso deberían volver a cambiar el "Testing" por "Squeeze" o "Stable" pero SOLO de ese repositorio particular (el que da error).

Una vez que hacemos el update sin errores realizamos una actualización segura:

sudo aptitude safe-upgrade

Y por último hacemos una actualización total:

sudo aptitude full-upgrade

Hecho ésto debería suceder que al reiniciar la computadora tengamos nuestro flamante Testing funcionando.

En mi caso no pasó, lo único que conseguí al reiniciar fue una pantalla negra para colocar mi usuario y contraseña... los ingresé correctamente y pensando que era solo ésto escribí, aún ilusionado, el "startx" que me iniciara gnome, pero nada... Error fatal, No screen found.
Estuve varios días buscando la solución y no encontraba nada, o lo que encontraba veía que estaba bien. La mayoría de las posibles soluciones eran para editar el /etc/X11/xorg.conf pero lo que yo veía aparentemente era correcto. Decidí, después de días de búsqueda, probar algo que no parecía tener mucho sentido pero ya había perdido toda esperanza. En terminal escribí:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Lógicamente se actualizaron algunos paquetes mas. Reinicié, me logueé, escribí "startx" sin esperanza... y para mi sorpresa inició el entorno gráfico, pero en lugar de GNOME me inició con LXDE.

Reinstalé Gnome:

sudo apt-get install gnome-core

Reinicié y todo volvió a la normalidad con una diferencia, al escribir en terminal cat /etc/issue ahora aparece:

Debian GNU/Linux wheezy/sid \n \l



Aunque aún no noté diferencias destacables...
Por último, hay 2 cosas que me gustaría comentar a modo de "Bonus" porque casualmente sucedieron hoy:

Bonus 1

La primera tiene que ver con que hoy, al igual que Google Chrome, se actualizó Chromium a la versión 11.0.696.71. Por lo tanto, si usan cualquiera de los 2 navegadores es día de actualización.
Si tienen Chromium y quieren que aparezcan las actualizaciones solitas constantemente vean esta entrada en la que explico como hacerlo para Debian.

Bonus 2

No quería pasarlo por alto, ya que si bien es una distro que no estoy utilizando, alguna vez tuve la oportunidad de hacerlo y me cayó simpática. Hoy fue lanzada Fedora 15 Lovelock que trae Kernel 2.6.38GNOME 3, soporte para sistema de archivos Btrfs, gestión de energía mejorada, LibreOffice, Firefox 4, entre otras novedades. Pueden pasarse por Linux Atelier en donde hay mas detalle de éste lanzamiento y además tiene los links de descarga.

Esto fue todo por hoy, nos vemos la próxima ;)

Referencias: Kantra y Un bruto con Debian

jueves, 19 de mayo de 2011

Instalar ultima versión de Chromium en Debian Stable y Testing

Hola mis ardillas en la red (?). Les cuento que aun sigo probando Debian y cada día me gusta mas. La única salvedad para hacer es que pase de la versión estable (Squeeze) a la testing (Wheezy) por eso de "tener versiones mas actualizadas del software". En otra entrada les contaré mas en detalle como hice dicha actualización.
Volviendo al tema del título les cuento que había algo que me estaba molestando soberanamente y era haber pasado a testing y tener una version de mi navegador de cabecera (Chromium) ultra-archirecontra-vieja. Claro, no se que me hizo pensar que pasar a Testing "me actualizaba todos los programas solos", pero no, en el caso de Chromium hay que añadir los repositorios. Esto fue algo que me hizo esperar a actualizar por un tiempo mas... con esto me refiero a tener que buscar un repositorio que funcionara y su llave. Bueno, lo encontré, me anduvo y ya tengo a mi Chromium 11.0.696.68 (última versión a la fecha) funcionando y actualizándose.

Para añadir el repositorio editan el sources.list:

sudo nano /etc/apt/sources.list

Y agregan las siguientes líneas:

deb http://ppa.launchpad.net/chromium-daily/stable/ubuntu lucid main 
deb-src http://ppa.launchpad.net/chromium-daily/stable/ubuntu lucid main 


Esas "lineas" no son ni mas ni menos que el repositorio de Chromium para Ubuntu Lucid (que también funciona para Debian).

Luego de añadir el repositorio pasamos a agregar la llave del mismo. Escribimos en una terminal:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 4E5E17B5

Y finalmente actualizamos la base de datos de apt:

sudo apt-get update

Luego de ésto si no lo tienen instalado lo instalan asi:

sudo apt-get install chromium-browser

Ésto les instalará la ultima versión del navegador directamente.
En mi caso ya tenía instalada la versión 6 y al abrir el "Gestor de actualizaciones" ("Sistema">> "Administracion") me aparecieron para actualizar todos los paquetes correspondientes a la ultima version de Chromium. Instalé las actualizaciones y listo, ya tengo la ultima version de mi navegador actualizandose constantemente y en version estable =)

Antes de actualizar
Luego de actualizar
Espero que les haya servido ;)

viernes, 13 de mayo de 2011

Activar o desactivar servicios al inicio de Ubuntu o Debian

Hola mis ardillas, tanto tiempo... les cuento que estoy bedshaped recuperándome de una operación de vesícula y no estoy mucho tiempo con la compu. Así que se agradecen comentarios del tipo "que te mejores cuanto antes" o que levanten el ánimo.
Ahora vamos a lo nuestro... Si hay algo que a mi me gusta (ademas de comer, gastar plata y firmar fotologs (?)) es que mi Sistema Operativo sea lo mas rápido posible. Sinceramente no me interesa mucho que se vea "bonito", prefiero que sea rápido. Una de las formas de lograr un poco mas de velocidad es deshabilitando aquellos servicios que no usamos para ahorrarnos recursos, y si bien en general los cambios no suelen notarse mucho a la larga no es lo mismo una máquina con muchos servicios que no utiliza corriendo que una que usa solo lo justo.
Y siguiendo el tema hace poco vi en Paraiso Linux una herramienta que nos permite activar y desactivar servicios de manera gráfica, sencilla y rápida.
La herramienta en cuestión se llama sysv-rc-conf y se instala escribiendo en una terminal lo siguiente:

sudo apt-get install sysv-rc-conf

Para ejecutarla escribimos:

sudo sysv-rc-conf

Esto nos abrirá algo mas o menos así:


- Cada línea representa un servicio que puede estar activado o desactivado.
- Cada columna representa un runlevel (iniciado, en uso, detenido, reiniciado).
- El runlevel por defecto en Ubuntu o Debian es 2.
- CTRL+N sirve para pasar a la siguiente página de servicios y CTRL+P para ir a la página anterior.
- Con las flechas podemos desplazarnos.
- Con la barra espaciadora podemos marcar o desmarcar una casilla.
- Con la tecla "-" detenemos un servicio.
- Con la tecla "+" iniciamos un servicio.
- Con la tecla Q salimos.
- Para deshabilitar un servicio al inicio, generalmente hay que desmarcar las casillas de las columnas 2 y 5 correspondientes al servicio. Para volver a habilitarlo, marca nuevamente estas casillas.
- Para una descripción de cada servicio pueden ver el siguiente enlace (en inglés que podemos traducir perfectamente a través de Chrome o Chromium): https://wiki.ubuntu.com/InitScriptHumanDescriptions

No está demas decir que también funciona para Debian.

Si no te conforma ésto y queres seguir quitando cosas que se cargan al inicio (en este caso programas) y consumen recursos podes ir a "Sistema" >> "Preferencias" >> "Aplicaciones al inicio".
Allí se nos abrirá algo así:


Aquí podemos desmarcar aquellos programas que no necesitamos que se carguen al inicio ni automáticamente. Por ejemplo, en mi caso desmarqué el Gestor de Bluetooth porque no uso Bluetooth, la Miniaplicación de cola de impresión tampoco me sirve porque no tengo ninguna impresora instalada, Ubuntu One no lo uso, etc...
El hecho de que no se carguen al inicio no significa que despues uno no lo pueda abrir manualmente. Del mismo modo, si hay algún programa que abren cada vez que inician la máquina podrían agregarlo con el botón de "Añadir" y el mismo se abrirá automáticamente apenas iniciemos el sistema operativo.

Otra interesante forma de evitar el inicio de servicios que mencionan en Paraiso Linux es "yendo directamente a las fuentes", es decir, vamos directamente a la carpeta en la que están todos los servicios. La misma es /etc/init.d. Entonces en una terminal escribimos:

cd /etc/init.d

Una vez posicionados allí escribimos el comando "ls" que nos devolverá un listado de todos los archivos contenidos en esa carpeta que no son mas ni menos que los servicios de nuestro sistema operativo. Vale aclarar que los mismos pueden estar o no activados. El listado será algo así:


Para denegar el permiso de ejecución y evitar que se ejecute el servicio escribimos en la terminal:

sudo chmod -x nombre_del_servicio

Por ejemplo, si no usamos ssh escribimos:

sudo chmod -x ssh

Para volver a activar el servicio escribimos:

sudo chmod +x ssh

Antes de desactivar un servicio les conviene buscar bien que hace este servicio y verificar que realmente esté activado, ya que como dije antes hay servicios que ni siquiera se activan al iniciar con lo cual terminariamos por "desactivar" algo desactivado.

Por último, tenemos una tercer opción para desactivar servicios que se llama bum. La verdad no la iba a poner ya que es mas de lo mismo, pero la instalé y me gustó. Para instalarla:

sudo apt-get install bum

Para ejecutarla:

sudo bum

Nos aparecerá algo mas o menos así:


Desde allí podremos frenar, iniciar, activar y desactivar servicios. Lo malo es que algunos servicios no aparecen...

Entonces a modo de resumen, las 3 formas de desactivar servicios que mostramos son:

1. sysv-rc-conf, podemos gestionar los servicios gráficamente.
2. Manualmente y por consola: ingresando a /etc/init.d y quitandole los permisos de ejecución a los servicios innecesarios.
3. bum, al igual que sysv-rc-conf podemos gestionar los servicios a traves de una GUI.

Hubo un cuarto tip mencionado, pero para activar o desactivar programas al inicio desde "Sistema" >> "Preferencias" >> "Aplicaciones al inicio".

Espero que les sirva ;)