Publicado en Raspberry Pi

Raspberry Pi: Montar centro multimedia completo

Introducción

Ya he explicado muy detalladamente cada paso necesario para montar un centro multimedia con la . Lo que pretendo con este artículo es juntarlo todo, y hacer un resumen rápido tanto para los que ya son usuarios avanzados, como para los que ya han seguido los pasos alguna vez y no necesitan tanta palabrería para poner en marcha una nueva RasPi. Por supuesto, todos los pasos a seguir desde el PC son en Linux.

Paso 1: Instalar

Descargar la última versión de Raspbian y descomprimir el .zip para obtener un fichero .img:

http://www.raspberrypi.org/downloads/

Insertar la tarjeta microSD en el PC y detectar donde está montada:

df -h

Desmontar todas las particiones de la tarjeta microSD (si hubiera más de una):

umount /dev/sdc1
umount /dev/sdc2

Instalar la imagen descargada en la microSD:

dd if=/ruta/descarga/zip/2015-01-31-wheezy-raspbian.img of=/dev/sdc bs=1M

Explicación extendida: Raspberry Pi. Paso 1: Instalar Raspbian

Paso 2: Primer arranque (raspi-config)

Inserta la microSD en la Raspberry Pi y conecta un teclado para poder moverte por las opciones, las más importantes son:

  1. Expand Filesystem: extiende el espacio utilizable por el sistema a toda la capacidad de la microSD.
  2. Change User Password: si no lo cambias, el usuario es pi y la contraseña es raspberry.
  3. Advanced Options > Memory Split: es la memoria que le asignamos a la GPU (procesador de gráficos), para que () funcione perfectamente es aconsejable darle la mitad de la RAM, en la Raspberry Pi 2 tenemos 1 GB y en las demás 512 MB, así que pon 256 MB si tienes una RPi antigua o 512 MB si tienes la RasPi 2.
  4. Advanced Options > SSH: es fundamental activarlo para poder acceder a la RPi por red sin necesidad de teclado ni ratón.

El resto de opciones no son importantes para el funcionamiento o son cambios muy personales.

Lo que sí es importante es configurar una IP estática en la Raspberry Pi para poder acceder a ella siempre de la misma manera, así que edita el siguiente fichero:

sudo nano /etc/network/interfaces

Sustituye esta línea:

iface eth0 inet dhcp

Por todas estas:

auto eth0
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1

Donde address es la IP estática que quieres que tenga tu Raspberry Pi y gateway la IP de tu router. Cierra y guarda el fichero con Ctrl+X, Y, Intro. Carga la nueva configuración y reinicia el servicio de red:

sudo ifup eth0
sudo service networking restart

Explicación extendida: Raspberry Pi. Paso 2: Primer arranque (raspi-config)

Paso 3: Instalar Kodi

Ya puedes acceder a la RPi por consola con un teclado USB o por SSH, la segunda opción es la más cómoda. En ambos casos edita el fichero de repositorios:

sudo nano /etc/apt/sources.list

Agrega la siguiente línea al final:

deb http://archive.mene.za.net/raspbian wheezy contrib

Cierra y guarda el fichero con Ctrl+X, Y, Intro. Agrega la firma para el nuevo repositorio:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 5243CDED

Actualiza la lista de paquetes e instala Kodi:

sudo apt-get update
sudo apt-get install kodi

Edita la configuración básica de Kodi:

sudo nano /etc/default/kodi

Pon ENABLED=1, USER=pi y NICE=-10 para que Kodi se inicie automáticamente en cada arranque.

Explicación extendida: Raspberry Pi. Paso 3: Instalar Kodi o XBMC

Paso 4: Montar disco duro USB

Saber la ruta del disco duro en nuestra Raspberry Pi:

sudo fdisk -l

Si el disco duro no está formateado como ext3 o ext4 (al gusto), hazlo con:

sudo mkfs.ext3 /dev/sda1

Crea un directorio donde montar el disco duro:

sudo mkdir /media/discousb

Haz que tu usuario sea el propietario del nuevo directorio:

sudo chown pi /media/discousb

Edita el siguiente fichero para que el disco duro se monte en ese directorio cada vez que arranca el sistema:

sudo nano /etc/fstab

Agrega al final la siguiente línea:

/dev/sda1      /media/discousb      ext3      defaults      0      0

Cierra y guarda el fichero con Ctrl+X, Y, Intro. Monta el disco duro sin necesidad de reiniciar con:

sudo mount -a

Explicación extendida: Raspberry Pi. Paso 4: Montar disco duro USB

Paso 5: Instalar y configurar Transmission (descarga de torrents)

Instala Transmission:

sudo apt-get install transmission-daemon

Detén el servicio para poder modificar la configuración:

sudo service transmission-daemon stop

Crea un directorio para almacenar las descargas y otro para los torrents en proceso de descarga:

sudo mkdir /media/discousb/torrents
sudo mkdir /media/discousb/torrents/tmp

Modifica los permisos de las carpetas:

sudo chown -R pi:debian-transmission /media/discousb/torrents
sudo chmod -R 777 /media/discousb/torrents

Edita el fichero de configuración de Transmission:

sudo nano /etc/transmission-daemon/settings.json

Son muchas cosas, casi todas muy intuitivas así que voy a poner aquí lo básico:

"download-dir": "/media/discousb/torrents",

“incomplete-dir”: “/media/discousb/torrents/tmp”,

“rpc-authentication-required”: true,
“rpc-bind-address”: “0.0.0.0”,
“rpc-enabled”: true,
“rpc-password”: “j72x6kxx1fnpjkz9difeu1harx0v0oudwxsfzwuo8j0r8”,
“rpc-port”: 9091,
“rpc-url”: “/transmission/”,
“rpc-username”: “pi”,
“rpc-whitelist”: “0.0.0.0”,
“rpc-whitelist-enabled”: false,

Si no cambias el rpc-password por defecto es transmission. El resto está pensado para que puedas acceder a la interfaz del Transmission desde cualquier lugar del mundo por el puerto 9091, y desde ahí poder cambiar el resto de parámetros gráficamente.

Inicia el servicio de nuevo:

sudo service transmission-daemon start

Explicación extendida: Raspberry Pi. Paso 5: Descargar torrents con Transmission

A partir de aquí, el resto de pasos son para facilitarnos la vida, la funcionalidades básicas ya están instaladas.

Paso 6: Acceso remoto con y

Regístrate en DNSdynamic:

https://www.dnsdynamic.org/signup.php

Haz login con tu email y tu contraseña y ve a “Add a new domain”. Escribe tu subdominio y elige un dominio, todo junto será tu DNS dinámico. Ahora vamos a la Raspberry Pi a instalar el cliente:

sudo apt-get install ddclient

El asistente que aparece te lo puedes saltar entero porque no sirve para nada. Cuando termines edita el fichero de configuración del ddclient:

sudo nano /etc/ddclient.conf

Elimina todo lo que haya y pon esto:

daemon=300
protocol=dyndns2
use=web, web=myip.dnsdynamic.com
server=www.dnsdynamic.org
login=TU@EMAIL.COM
password='TUCONTRASEÑA'
server=www.dnsdynamic.org, \
protocol=dyndns2 \
TUURL

Cambiando únicamente login poniendo tu email, password poniendo tu contraseña y TUURL poniendo el DNS dinámico que elegiste en la web. Cierra y guarda el fichero con Ctrl+X, Y, Intro.

Explicación extendida: Raspberry Pi. Paso 6: Acceso remoto con ddclient y DNSdynamic

Paso 8: Compartir ficheros con 

Vamos a convertir la Raspberry Pi en un servidor de ficheros tipo . Instala samba escribiendo:

sudo apt-get install samba samba-common-bin

Edita el fichero de configuración:

sudo nano /etc/samba/smb.conf

Hay muchos parámetros, muy bien explicados, vamos a tocar lo básico para que funcione:

workgroup = WORKGROUP

wins support = yes

El parámetro wins support viene comentado, simplemente elimina la almohadilla (#) del principio de la línea. Además vamos a compartir una carpeta poniendo las siguientes líneas al final del fichero:

[DiscoUSB]
comment=Disco USB en la RPi
path=/media/discousb
browseable=yes
writeable=yes
create mask=0775
directory mask=0775
only guest=no

Ponle una contraseña al usuario de samba, no necesariamente la misma que la del sistema:

sudo smbpasswd -a pi

Reinicia el servicio para que coja la nueva configuración:

sudo service samba restart

Explicación extendida: Raspberry Pi. Paso 8: Compartir ficheros con samba

Paso final: Abrir puertos en el router

Tienes que redireccionar todos los puertos del router que estés utilizando en la Raspberry Pi para que apunten a la IP estática de la misma, para así poder acceder a los servicios desde fuera de tu red local. Los puertos típicos son:

  • 22 para el SSH y el SFTP
  • 9091 para el Transmission

Otros pasos

Aquí iré agregando el resto de pasos que voy explicando que no son fundamentales para crear un centro multimedia:

27 comentarios sobre “Raspberry Pi: Montar centro multimedia completo

  1. Hola, ya tengo samba y estoy intentando pasar archivos desde mi portatil a la rpi. Resulta que durante la copia va a unos 3mb estables, pero muy a menudo desciende a 100kb y se para medio minuto y sigue. La rpi la tengo por ethernet y el portatil desde el que paso las pelis por wifi.

    1. Hola Alex, no parece un problema de samba ni de la Raspberry Pi, apostaría más a una saturación del router WiFi, a mi me pasaba mucho cuando utilizar el router que te regala la compañía telefónica. Sin embargo, ahora con un router decente hago transferencias de varios gigas por WiFi sin ningún tipo de corte o variación en la velocidad. Sólo se me ocurre que sea eso.

  2. Una vez están los torrent descargándose en Transmission, ¿tengo que dejar el ordenador con la página abierta para que se sigan descargando? ¿o simplemente con la raspberry encendida ya funciona? En caso de que la última sea afirmativa, ¿cuando enciendo la raspberry continúan las descargas de Transmission que había o tengo que meterme desde el ordenador a la página y dejarla abierta? Gracias.

  3. Tengo otra duda :P Tengo creado un sistema de carpetas en /media/discousb donde tengo carpetas estilo series, películas etc. Lo que bajo con Transmission en /media/discousb/torrents lo pongo en su respectiva carpeta con Samba. Pero a veces los torrent que me bajo vienen dentro de una carpeta y lo que hay dentro de esa carpeta no me deja moverlo porque dice que no tengo permisos. ¿Hay alguna manera de que todas las subcarpetas de /media/discousb/torrents tengan los mismos permisos que tengo con los archivos de la carpeta torrents? No sé si me he explicado bien. Muchas gracias por los tutoriales.

  4. Hola de nuevo, no estás contestando a las preguntas que envío pero bueno supongo que andarás ocupado… aún así te envío más preguntas que me salen por si puedes contestarlas o quieres hacer un recopilatorio de FAQs jaja… El caso es que me bajé una película en calidad Blu Ray y tras mucho esperar porque pesaba mucho, resulta que estaba como dividida en 10 archivos comprimidos… probé con Samba desde mi Windows a darle a descomprimir esos archivos pero me ponía que iba a tardar 40 horas! ¿Hay alguna solución o simplemente este tipo de archivos divididos en otros comprimidos no se pueden usar en la Raspberry?

  5. A partir de este tutorial, me he atrevido a comprarme la raspberry. Hecho de menos todo el tema de las addons, y como añadir spotify a kodi. Bueno igualmente enhorabuena por el blog.

  6. Perdón por tardar tanto en responder. Vamos con ManuLoL:
    1. No necesitas tener la web abierta del Transmission, con que la RasPi esté encendida es suficiente.
    2. El Transmission por defecto se inicia al arrancar la RPi.
    3. No debería darte error al acceder a los ficheros descargados con Transmission, sin embargo, el propietario de esos ficheros es debian-transmission, así que si intentas modfiicar los ficheros (moverlos por ejemplo) con otro usuario (pi será el tuyo) no te deja. La primera solución sería realizar esa tarea desde la consola de la RPi (por SSH). La otra sería cambiar los permisos para que cualquiera pueda modificar los ficheros (incluso el usuario de samba). Esto sería también por SSH en la RPi: sudo chmod -R 777 /media/discousb/torrents/carpeta
    4. Veo que tienes la costumbre de utilizar Windows para todo. Sería maravilloso que cambiaras ese hábito por la consola SSH. Para las 4 cosas básicas es mejor aprender a usarla, tendrás menos problemas. Por ejemplo, para descomprimir un fichero comprimido en 10 partes, sólo podrás hacerlo por consola porque el usuario de Samba no tiene permiso para hacerlo. Dependiendo de la extensión de la compresión el comando es diferente, si me la dices te explico cómo hacerlo.

  7. Hola estuve 1 semana entera toqueteando la raspberry pi2 con noobs y puse openelec y raspbian

    Gracias a tus tutoriales hice todo lo que pone y funciona, MUCHAS GRACIAS.

    tengo ahora 3 preguntas de fallos q me surgen

    1-. Las descagas se me cortan a cada rato y estoy con el movil dando a resume all siempre para que continuen.

    2-. Tengo reinicios constantes, que tengo que quitar corriente y volverle a enchufar

    3-. He oido y visto que va mucho mas fluido OPENELEC en su version 5.0.8 pero queriendo usar tus manuales para con openelec no funciona ningun comando. Seria posible un manual con openelec de todo esto mismo? seria genial tener openelec y transmission.

    IGUALMENTE ES EL MEJOR MANUAL QUE HE ENCONTRADO MUUUUCHAS GRACIAS.

  8. me respondo al mensaje anterior

    1-. Ya no se me cortan desde que puse 1 sitema operativo solo en la SD

    2-. Usaba noobs con 2 sistemas operativos y se me apagaba la raspberry de vez en cuando, ahora usando solo raspbian ya no se apaga.

    3-. A la espera de que algun dia quieras hacer un tuto igual para openelec

    de nuevo muchas gracias por estos tutos, me encanta.

  9. Hola. Muchas gracias por los tutoriales. Aún no tengo la Raspberry pero estoy a punto de comprarla. Mi intención es usarla, justamente, como centro multimedia, con Kodi… y ahí viene mi duda, es mejor instalar Raspbian + Kodi. O sencillamente OSMC?? (que supuestamente es un linux con kodi ya incluido y supongo con algunos retoques)? Vos qué pensás??

    saludos y gracias!

  10. Agradecido de verdad por estos explendidos tutoriales.

    Que hagas uno del Pyload serian ya la leche… ;)

    Un saludo y mil gracias, de verdad!!

  11. Continuamos con las batallitas, aunque ahora la cosa ya esta de mi lado, gracias a ti.

    Por algun extraño motivo la Rasp no me monta el disco cuando arranca (fstab editado, claro). Supongo que será cosa del hub usb (Dlink DUB-H4). Unas veces si y otras no.

    Otro tema que deberis abordar (ya puestos a pedir) para que realmente sea un centro multimedia completo es el tema de los sintonizadores TDT-usb.

    Un saludo.

    1. Gracias a ti Josecho. Y sí, PyLoad es un tutorial que tengo pendiente de publicar. Me faltan un par de flecos que quiero comprobar antes para mostrar todos los problemas que tiene.

      Respecto al disco duro USB, supongo que te pasa con la RPi2, ya hemos comentado alguna vez por el blog que eso ocurre a veces porque arranca tan rápido que no le da tiempo a montar adecuadamente los discos USB. Una solución es modificar el fichero /boot/cmdline.txt, éste debería tener una única línea, pues al final agregas un espacio y rootdelay=5, puedes ponerle 10 para darle más tiempo a montar el disco, pero con 5 no suele haber problema.

      Suerte.

  12. Gracias por el tutorial, llevo dos años trasteando con la raspberry 1, ahora me he comprado la 2 y cuando me llegue me voy a meter de lleno con tu tutorial, hasta ahora solo la utilizaba como mediacenter con kodi. La idea es poner la 2 a funcionar con raspbian, kodi y transmision y jubilar miviejo htpc
    Un saludo

  13. Pues no McLarenX, tengo la Primera, La Raspberry 1, y si no lanzo a mano el mount -a na de na. Tengo editado fstab con
    /dev/sda1 /media/discousb ntfs defaults 0 0
    y por mucho restart que haga no lo carga…
    La faena es lanzar un ssh desde el Android… tedioso, pero lo hago…

  14. He seguido al pie de la letra el manual y me encuentro con un problema, las descargas de transmission en vez de guardarlas en el usb las guarda en la sd. No se porque motivo a la hora de crear el directorio /media/discousb lo crea en la sd.

  15. Me autorespondo, supongo que al ser una raspberry2 no le dará tiempo a montar el usb en el directorio /media/… lo que me parece raro es que si no lo puede hacer con el usb, lo haga por defecto con la sd. ¿una vez creado un directorio siempre se monta una unidad en el, sea cual sea?

  16. Buen tuto jefe !
    No suelo comentar ni agradecer por pereza pero realmente has conseguido condensar bastante info de manera (a mi gusto) concreta estructurada y digerible, sin florituras.

    Sigue asi !
    Saludos

  17. Buenas tardes, grande el tutorial muy grande, mis felicitaciones porque a los novatos como yo es vital. Quería comentaros un problemilla que he tenido he estado buscando pero no he encontrado ninguna solución clara y es que al pulsar el boton de apagado dentro de Kodi solo me sale la opción Salir y no apagar, ni suspender,etc, por lo que la raspberry se me queda encendida y tengo que entrar en un pc y utilizar el comando sudo poweroff. No se si ya le ha pasado a alguien y ha encontrado la solución.

    Un saludo.

  18. Muy bueno el tutorial, a mie gustaría conectar la raspberry a un pequeño servidor con windows server por cable y en vez de poner un disco duro USB utilizar una carpeta del servidor donde tengo mis archivos multimedia. Lo puedo conectar por samba o como podria hacerlo?? O en vez del workgroup le pongo mi dominio?

  19. Pingback: csa2k5.biz
  20. Muy buneas, solo un instante para darte las gracias por este manual.
    He adquirido recientemente una raspi2, y este es el manual que estoy siguiendo. Voy despacito y ahora me toca meterme con transmision.
    Voy aprendiendo comandos de linux, a usar ssh, filezilla, etc.
    Uno de los manuales mejor explicados y claros, animo y sigue en esta linea, porque somos muchos (en la sombra) que te seguimos, un saludo.

  21. Hola, Primero que todo muchas gracias por el tutorial, sin embargo seguí todos los pasos, que dicho sea de paso, han sido los únicos que me habían mostrado avances, pero al momento de arrancar de nuevo el sistema para que supuestamente arranque Kodi como primera instancia. vuelvo a la etapa en que me pide la contraseña y se queda en pi@raspberry ~$ y nada mas….

    Podrías explicarme que hice mal? o que me falto por hacer?, lo he reinstalado (solo los pasos de Kodi) como 5 veces y quedo donde mismo.

    Atentissssimo a tus comentarios.

    Muchas gracias.

  22. He seguido el tutorial y perfecto, muchas gracias. Has probado a instalar retropie para jugar a emuladores? Habría alguna manera de integrarlo en Kodi para tener ya el media center perfecto?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *