porque el kernel es tu amigo
Muy buenos días, hoy por fin puedo anunciar que el Super Poder de Cliente Torrent esta 100% operativo. Como seguro que ya sabíais, las primeras versiones de los sistemas operativos que sacaban para RaspberryPi, petaban cuando ponías en marcha algunos clientes torrent. Yo por mi parte probé casi todo lo que estaba disponible para el RaspberryPi, compilé versiones beta de clientes, tuneé configuraciones ... para nada.El otro día, volví con el tema de los torrents y entre los parámetros del kernel, me topé con uno que me dio un escalofrío en la artería geek. Busqué información y ... llevo 4 días descargando torrents al 100% del ancho de banda de mi ADSL. Así que lo comparto con vosotros.
En el archivo /boot/cmdline.conf y el parámetro a cambiar/añadir es:
smsc95xx.turbo_mode=N
lo ponemos al principio de la única línea que tiene que tener el archivo, la mía queda así:
smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 console=ttyAMA0,9600 kgdboc=ttyAMA0,9600 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
Hacemos un reboot y ya podemos tener nuestro transmission-daemon en marcha sin preocuparnos :)
ACTUALIZACIÓN:
en el archivo setings.json:
"script-torrent-done-enabled": true, "script-torrent-done-filename": "/usr/local/bin/aviso_torrent.sh",y el script en cuestión:
#!/bin/bash # programado por Juanmol para http://rsppi.blogspot.com /bin/bash /usr/local/bin/encola_whatsapp.sh 666777888 "$TR_TORRENT_NAME bajado"
Si esa configuración hace la diferencia, antes de usarla tenia algunos cuelgues con transmission.
ResponderEliminarUsando Respbian y siguiendo los pasos al final de esta guía:
http://www.megaleecher.net/Transmission_Torrent_Client_On_Raspberry_Pi
En mi caso lo que hice fue:
sudo nano /boot/cmdline.txt
al final agregar:
smsc95xx.turbo_mode=N
sudo nano /etc/sysctl.conf
modificar, dejando asi:
vm.min_free_kbytes =16384
Espero te sirva
Salu2
Jerome
Funciona pero con límites.
ResponderEliminarAl superar los 11Mg de descarga el Transmission se bloquea y se cierra.
Sigue siendo muy buena velocidad pero no puedo aprovechar la totalidad del ancho de banda.
pues yo no tengo problemas y no he cambiado nada de esto, uso en concreto transmission-daemon sobre una partición con ext4
ResponderEliminar¿Qué velocidad tienes en tu Adsl?
Eliminarpuede que sea también porque tenga otra versión de algún componente del RaspberryPi, el mio es de los primeros.
EliminarUna pregunta compañeros, ¿a que dispositivo de almacenamiento descargáis? Por que yo estoy intentándolo con un USB 2,% autoalimentado y no hay forma.
ResponderEliminaryo lo hago a un NAS por red y protocolo SMB.
EliminarAunque parezca obvio... Me seria muy util saber como has configurado para montar el NAS por red y el protocolo SMB
EliminarOk ya me auto-respondo. Se que era abvio pero no lo sabia:
Eliminarmount -t cifs -o username=,password='' //IP_EQUIPO/tmptorrents /mnt/tmptorrents (Por ejemplo)
Pues sigo teniendo problemas.
EliminarTengo /mnt/tmptorrents con permisos chmod 777.
//IP_EQUIPO/tmptorrents tambien tiene permisos 777.
De hecho en ambos, si hago un ls -l obtengo lo siguiente:
drwxrwxrwx 2 root root 4096 ene 3 00:49 tmptorrents
PERO AL MONTARSE POR CIFS cambia los permisos!!
drwxr-xr-x 1 root root 0 ene 3 00:49 tmptorrents
Esto hace que me cancele las descargas por no tener permisos al iniciar la descarga:
Error: Permission denied (/mnt/tmptorrents/The_Avengers_720p.mkv)
¿¿Que puede ser?? Si pongo este disco Iomega ScreenPlay Director por USB no hay problema, pero no quiero tener 2 equipos junto al televisor. De hecho me gustaria tener a mi Raspi cerca del Router escondidita.
Si va mejor por USB lo hare sin mas remedio, pero he leido que JuanMol lo tienes asi por red y estoy intrigado...
Igual es un poco tarde pero yo probaria a añadir en las opciones:
Eliminar-o username=tuusuario,password=tupassword,file_mode=0777,dir_mode=0777
las dos ultimas opciones me salvaron la vida personalmente...
1 saludo.
Hola Miguel;
Eliminar¿Donde pones esas opciones
?
El Raspi no tiene energía suficiente para alimentar un disco de 2.5" externo.
ResponderEliminarNecesitarás un Hub autoalimentado o similar.
Creo que deberías añadir un enlace a esta entrada al final del tutorial del torrent, para los que sigan el tutorial no se queden con el fallo sin solucionar =(
ResponderEliminarMuchas gracias, me sirvió de mucho este post. De momento lleva descargando todo el día y sin quedarse pillao. Solo hacer un apunte, y es que en tu post pones que se debe editar el fichero /boot/cmdline.conf , y este fichero no existe, el que hay que editar es el /boot/cmdline.txt , tal y como pone en el comentario del Anónimo anterior.
ResponderEliminarEl problema que tengo es que demasiado a menudo(casi siempre) se me quedan los torrent a un 99.8% de descarga, y siempre con el mismo problema: Please verify local Data! Piece #n is corrupt
Como almacenamiento uso un usb autoalimentado (pero no conectado directamente al Pi, si no a través de un hub con alimentación), formateado en ntfs y con el driver ntfs-3g. Al final creo que probaré rtorrent a ver que resultados me da y si no me vuelve a salir este error.
En el almacenamiento quería decir un disco duro usb autoalimentado, creo que se entiende, pero por si acaso.
ResponderEliminar/bin/bash /usr/local/bin/encola_whatsapp.sh 666777888 "$TR_TORRENT_NAME bajado"
ResponderEliminarporq en esta linea se vuelve a usar ??? /bin/bash al principio no esta arriba????
Armageddon2.0, vistes la respuesta que te hice sobre mi script del Whatsapp? Te funciona?
EliminarAqui esta el comentario que te puse:
http://rsppi.blogspot.com.es/2012/12/asegura-tu-raspberrypi-del-ataque-de.html?showComment=1356736010186#c5631489181234059286
no lo avia visto lo voy a provar gracias :)
EliminarRumoku, sobre tu comentario de montar una carpeta remota en mnt, me estuve peleando con esto hace unos días, soy novato en Raspberry y Linux, pero un colega me supo dar la clave. Los permisos se mantienen si añades el "gid" y "uid" del usuario que quieras. Si no lo pones, es cierto que al montar la unidad, los permisos cambian.
ResponderEliminarmount -t cifs -o username=xxxx,password='',uid=xxxx,gid=xxxx //IP_EQUIPO/tmptorrents /mnt/tmptorrents
haz un "id (usuario)" para averiguarlo.
Hombre!! Gracias Fernando... Eso lo vi, pero no se como encontrar el uid y el gid, por eso lo omitia. Sabes como hacerlo? Con eso tendria resuelto el tema. Por cierto, también vi como montar el disco en /etc/fstab. Me va mejor asi.
EliminarSaque la información de aqui:
http://www.guia-ubuntu.com/index.php?title=Montar_comparticiones_remotas_usando_smbfs_y_cifs
Si claro, te lo puse. En consola escribe "id (usuario)", donde obviamente, (usuario) corresponde al que estás usando. Generalmente los valores gid y uid serán 1000, pero mejor asegurarse. También puedes abrir el archivo /etc/passwd y verlo ahí directamente.
ResponderEliminarMil gracias! Esta tarde/noche lo pruebo... Que buena es esta comunidad.
EliminarLo logré! al final monté las unidades para el usuario debian-transmission y ya va de lujo!
EliminarPuse id debian-transmission me devolvio uid=108 gid=111 Y con esto y un bizcocho tengo permisos de escritura del transmission. No tengo permisos 777 como quería inicialmente, pero ahora tampoco los necesito ;)
GRACIAS FERNANDO!
juanmol como modifico el script que has hecho para que en vez de mandar un whatsapp me mande un mail.
ResponderEliminarSe que desde la linea de comando es asi:
echo "texto a teclear" | mail -s "Asunto" usuraio@gmail.com
pero no se como meterlo en el script
el comando lo puedes completar un poco mas:
Eliminarecho "se ha descargado $TR_TORRENT_NAME" | mail -s "torrent descargado" usuario@gmail.com
solo tienes que sustituir la linea del whatsapp por esa, básicamente el script se limita esa línea.
¡¡OJO!! tu Raspberry tiene que ser capaz de enviar emails, en breve pondré un post sobre esto.
La tengo cnofigurada con ssmtp y mailutil
EliminarHe hecho esto en el script pero no me manda nada y en el terminal si van los mails:
Eliminar#!/bin/bash
echo "se ha descargado el torrent" | mail -s "$TR_TORRENT_NAME descargado" usuario@gmail.com
en la configuracion del transmission:
Eliminar"script-torrent-done-filename": "/usr/local/bin/aviso_torrent.sh",
ahí estas poniendo bien la ruta verdad?
si lo tengo bien. Pero intento ejecutar el script solo desde el terminal y me dice permiso denegado. Le di permisos de ejecucion. No se
EliminarHa y me crea un archivo igual .save
o_O .save ?? ni idea. A ver si me pongo con este tema y completo el post.
Eliminaraviso_torrent.sh.save me crea en la misma ubicacion
EliminarYo estoy en las mismas con lo del email de notificación. Me crea el .save y no me lo envía desde el transmission, pero si lo lanzo directamente funciona perfectamente
EliminarA mi me pasaba lo mismo... el problema era que cuando lo lanzaba directamente (el script) lo hacia como root... pero el transmission lo envia usando el usuario transmission-daemon
EliminarYo lo solucione ejecutando el transmission como root (hay que cambiar el usuario en el fichero /etc/init.d/transmission-daemon). Supongo que no es muy recomendable por seguridad pero es muy efectivo... espero que alguien me pueda explicar el inconveniente de hacerlo de este modo...
1 saludo.
solo es peligroso si el servicio esta publicado en internet (nat en el ruter) y tiene una vulnerabilidad. Normalmente los paquetes Debian son los mas seguros.
EliminarComo soluciono el problema este?
ResponderEliminarError: Permission denied (/mnt/media/pelis/Roadkill (HDRip) (Elitetorrent.net).avi)
Hola Rusty,
EliminarA mi me daba este error y me funcionó modificando el fstab con el uid y el gid del usuario debian-transmission.
asi asignas los permisos adecuados a la hora de automontar y le asignas como propietario el del usuario que arranca el transmission. Buena observacion David, es usted un crá.
Eliminarjuan mol,
ResponderEliminar¿que sistema operativo usas? ¿raspbian? ¿debian wheezy?
raspbian
EliminarYo tengo dos problemas...
ResponderEliminar1. Si pongo un torrent muy pesado (5Gb o así) se me cuelga por completo
2. Cuando pongo mas de un torrente a la vez, también se me cuelga.
sabéis porque puede ser?
Saludos!
... a partir de ahora le llamaré ... Meneillos xD
Eliminarsi tienes la última versión de Raspbian con los ajustes que pongo en la primera parte del post, tiene que funcionar si o si. Si te sigue fallando, es más probable que sea problema del formato de la partición donde va a grabarlo. Comprueba estas cosas antes de nada.
Alguien podría comentarme como modificar el archivo init.d para que arranque con el usuario root?
ResponderEliminarGracias!
Hola, tengo un problema al ejecutar el aviso_torrent.sh, he modificado el fichero settings.json en el que he puesto la ruta correctamente. Si lo ejecuto desde la consola con usuario root se envia correctamente el mensaje mediante gtalk, pero desde el transmission nunca se envía.
ResponderEliminarPor lo que he leído otra persona ha tenido el mismo problema y lo ha solucionado cambian el usuario con el que se arranca el servicio, hay alguna otra forma, no me gusta arrancar el servicio con root.
Gracias
Puede ser que si se descargan torrents en la targeta sd (16gb clase 10) no bajen a mas de 1,5Mb's? Tengo una linea de 100Mb
ResponderEliminarIra más rápido si se almacenan en un hdd exteno?