8 de enero de 2014

Instalando Xbian en una memoria USB

En la entrada anterior expliqué porqué había elegido la raspberry y Xbian como sistema operativo; a si que ahora toca instalarlo.


La instalación de imagen de Xbian no puede ser más sencilla:
  1. Descargar instalador de Xbian
  2. Meter la SD en el PC. Ejecutar el instalador y seleccionar la tarjeta SD y la versión a instalar
  3. Instalar la imagen 
Al finalizar, ya solo nos queda instalar la tarjeta en la raspberry, cable de red y hdmi. 
Si queréis que el sistema vaya más fluido, lo mejor es comprar un pendrive USB con buena velocidad para albergar el sistema operativo. En mi caso voy a usar una JetFlash700 USB3.0. También lo enchufamos a la raspberry.
Ahora es el momento de conectar el cable de corriente y que empiece a instalarse Xbian.

Cuando termine de instalarse, lo primero que haremos será en el menú de xbmc, ir a apariencia y configurar el idioma en "spanish"

Para poder realizar las siguientes acciones lo mejor es asignar una IP fija a nuestra raspberry. Para ello y desde el propio xbmc, en el menú "Sistema" cambio la opción de "DHCP" por "IP" e introducimos los datos de nuestra red.

Para realizar la operación de pasar el sistema a nuestro pendrive, lo más cómodo es hacerlo de forma remota mediante una conexión SSH.
Para ello, desde nuestro PC, accederemos a nuestro sistema de raspberry a través de un cliente ssh. 
Antes de nada hay que saber que por defecto, Xbian tiene la siguiente configuración:
  • Usuario: xbian
  • Contraseña: raspberry
Desde Windows, el cliente más recomendado por su sencillez es puTTY, en el que basta con poner la ip de nuestra raspberry y al acceder nos pedirá usuario y contraseña.
Si usamos Linux o Mac, podemos hacerlo también mediante un cliente o directamente desde la consola: "ssh xbian@ip", sustituyendo "ip" por la dirección de nuestra raspberry. Igual que en el caso anterior, nos pedirá el usuario o contraseña.


Al conectar se abre de forma automática el menú de configuración de Xbian.
Lo primero que recomiendo hacer es ir a "Settings/Accounts/XBian/password" y cambiar la contraseña de usuario para SSH.


Ya que estamos aquí, podemos hacer que la raspberry rinda un poco más mediante el overcloking. Hay formas de hacerlo manualmente, pero como queremos ir sobre seguro, en el menú "Settings/System/Overclocking" vienen varias configuraciones. Para no arriesgar ni tener que instalar disipadores extras a la placa, seleccionamos el "Preset" con el nombre de "XBian"
Con esto ya hemos ganado algo de rendimiento extra, que nos vendrá muy bien en el futuro.

Salimos del menú de configuración y desde la consola, vamos a configurar el grupo de trabajo o "Workgroup" de samba, para que podamos acceder a los recursos compartidos de Windows:
  1. Paramos el servicio Samba, no siempre es necesario pero por si las moscas: "sudo /etc/init.d/samba stop" al ejecutarlo con root con la orden sudo nos pedirá la contraseña de usuario.
  2. Editamos el archivo de configuración de samba: "sudo nano /etc/samba/smb.conf
  3. Localizamos la línea "workgroup = WORKGROUP"
  4. Cambiamos "WORKGROUP" por el grupo de trabajo de nuestra red de Windows.
  5. Guardamos los cambios y salimos del editor.
Después de esta pequeña configuración inicial, vamos a realizar la copia del sistema de archivos a la memoria USB. Yo he probado varios sistemas y el más efectivo es hacerlo manualmente. Para ello realizamos los siguientes pasos:
  1. Para que el proceso sea más rápido, lo  mejor es parar el xbmc con la orden: "sudo /etc/init.d/xbmc stop
  2. Como solo tenemos un disco duro (en nuestro caso un pendrive), este se montará en el punto de montaje sda1, pero para asegurarnos podemos escribir en la consola: "mount"
    Veremos que indica que tenemos un disco montado en /dev/sda1. 
  3. Procedemos a desmontar la unidad con la orden: "sudo umount /dev/sda1"
  4. Creamos un sistema de archivos btrfs en el pendrive con la orden: "sudo mkfs.btrfs -f -l xbian-usb /dev/sda1"
  5. Copiamos el sistema al pendrive: "sudo rsync -aAX /* /mnt/ --exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost+found,/home/*/.gvfs} --progress"
  6. * Cuando termine, editamos el archivo "cmdline.txt" con la orden: "sudo nano /boot/cmdline.txt".
    Aquí cambiamos "root=/dev/mmcblk0p2" por "root=/dev/sda1" y guardamos los cambios.
  7. * Editamos de igual forma que el anterior el archivo "cmdline.default": "sudo nano /boot/cmdline.default".
  8. Reiniciamos el sistema con la orden: "shutdown"
*Nota: Si no queremos correr riesgos y queremos hacer una copia de seguridad de os archivos antes de modificarlos, escribiremos: "sudo mv cmdline.txt cmdline.txt.bck" y "sudo mv cmdline.default cmdline.default.bck"

De esta forma, al iniciar el sistema, lo hará desde el pendrive, siendo este más rápido que desde la tarjeta SD. Ahora ya no nos hace falta una tarjeta de tanta capacidad, pero sí nos obliga a tener una tarjeta insertada para poder arrancar. Por lo que una tarjeta microSD vieja de algún teléfono obsoleto con su adaptador es una buena opción.

Por el momento es todo, que no es poco. Ahora toca ir mirando menús y toqueteando un poco el xbmc...

9 comentarios:

Anónimo dijo...

Hola!!

Tengo una duda. Esto es para arrancar desde un usb.
Pero hace falta tener insertada una tarjeta SD, no? Con que informacion minima?
Gracias!!

..::Balfonek::.. dijo...

Buenas tardes
Siempre hace falta terna una tarjeta SD, pero al tener toda la información en el pendrive, no te hace falta que sea tan grande. Yo reutilizo una microSD con adaptador de un teléfono viejo; 128mb si no recuerdo mal.
En la tarjeta sólo necesitar tener la partición de arranque (boot).
Un saludo

Anónimo dijo...

Hola Balfonek!!

Como le pongo una particion boot a la tarjeta SD?

Hay que indicar en esta tarjeta que busque el resto de informacion en la pendrive?
Como?

Soy totalmente nuevo en esto.

Panapunk dijo...

Yo estoy iniciando un proyecto con la RaspBerry Pi, "RaspiTV", pretendo crear un centro multimedia con "funciones añadidas" como compartición de archivos en red, una nube privada y descargas de torrents entre otras...

Tras muchas pruebas y estudio realizado... he decidido utilizar RaspBMC, por su flexibilidad y estabilidad, ya que pretendo hacer bastantes mejoras por ssh y tendrá varios servicios corriendo, (backups automáticos, visitas a webs para obtención de puntos, etc...) todo ello hasta el límite de funcionamiento estable.

El "How to" de este manual se encuentra en esta web
http://www.fluceando.com/how-to-manual-de-montaje-de-raspitv/

Panapunk dijo...

Yo estoy iniciando un proyecto con la RaspBerry Pi, "RaspiTV", pretendo crear un centro multimedia con "funciones añadidas" como compartición de archivos en red, una nube privada y descargas de torrents entre otras...

Tras muchas pruebas y estudio realizado... he decidido utilizar RaspBMC, por su flexibilidad y estabilidad, ya que pretendo hacer bastantes mejoras por ssh y tendrá varios servicios corriendo, (backups automáticos, visitas a webs para obtención de puntos, etc...) todo ello hasta el límite de funcionamiento estable.

El "How to" de este manual se encuentra en esta web
http://www.fluceando.com/how-to-manual-de-montaje-de-raspitv/

Panapunk dijo...

Perdón, creo que he duplicado el comentario...

Fue un error.

Saludos.

..::Balfonek::.. dijo...

Perdona por no contestarte.
El proyecto que comentas es interesante, a si que te sigo en tu web para ver como evoluciona.

Un saludo

Unknown dijo...

No me responde a las órdenes unmount ni a samba stop, que puede ser?

Unknown dijo...

de hecho no me reconoce ninguna de las ordenes... siempre me da mensaje command not found...
Alguna idea?