[DEPRECATED] Linuxserver.io - Rutorrent


Recommended Posts

1 hour ago, andreidelait said:

Updated mine today and now doesn't work anymore.

 

No connection to rTorrent. Check if it is really running. Check $scgi_port and $scgi_host settings in config.php and scgi_port in rTorrent configuration file.

 

I've tried last backup of appdata config but with no success.

 

 

Just added note to the first post on how to resolve this.

 

  • Like 3
Link to comment

I have notice that when something new is downloaded by Rtorrent some other programs, sonarr, plex, etc. have issues to modify or delete the information, and it only works well when I run the "New Permissions" utility in Unraid.

Is there a way to avoid this? maybe Rtorrent is writing the files with some special permissions? 

 

Thanks in advance.

Edited by L0rdRaiden
Link to comment
On 8/25/2018 at 8:35 PM, sparklyballs said:

 

Hi Sparky

Thx for your lmgtfy but unfortunately my settings are already..compliant. 

Up until latest update of the docker it's been running perfectly. Now not so much. 

I am not able to find any logs on these processes. I see I need to add something that logs the execute command.. but honestly it's giving me the shivers reading the documentation. It's there.. but not.. 

 

do you know how to log the execute part of the rtorrent.rc file

 

My execite command bits are:

 

method.insert = d.get_finished_dir,simple,"cat=/downloads/,$d.get_custom1=" 
method.set_key = event.download.finished,move_complete,"d.set_directory=$d.get_finished_dir=;execute2=mkdir,-p,$d.get_finished_dir=;execute=mv,-u,$d.get_base_path=,$d.get_finished_dir=" 
 

 

 

 

Link to comment

Yeah, I am also having more issues even after changing rtorrent.rc. Namely, AutoTorrent timeouts:

root@root:/boot/extra# autotorrent -t

Connected to torrent client successfully!
  result: cwd:'/run/s6/services/rutorrent', pid:263
root@root:/boot/extra# autotorrent -a /mnt/user/General/Torrs/*.torrent
Found 335 torrent(s)
 [Exists]    '13 Reasons Why S02' The folder exist, but is not seeded by torrentclient
 [Exists]    '13 Reasons Why S02' The folder exist, but is not seeded by torrentclient
 [Exists]    '13.Reasons.Why.S02' The folder exist, but is not seeded by torrentclient
 [Missing]   "Ain't Them Bodies Saints 2013" Missing files, only 0.00% found (19.5 GB missing)
 [Missing]   "Ain't Them Bodies Saints 2013" Missing files, only 0.00% found (19.5 GB missing)
 [Exists]    'Arrow S06' The folder exist, but is not seeded by torrentclient
Traceback (most recent call last):
  File "/usr/bin/autotorrent", line 11, in <module>
    load_entry_point('autotorrent==1.6.3', 'console_scripts', 'autotorrent')()
  File "/usr/lib64/python3.6/site-packages/autotorrent/cmd.py", line 210, in commandline_handler
    result = at.handle_torrentfile(os.path.join(current_path, torrent), dry_run)
  File "/usr/lib64/python3.6/site-packages/autotorrent/at.py", line 465, in handle_torrentfile
    if self.client.add_torrent(torrent, destination_path, files['files'], fast_resume):
  File "/usr/lib64/python3.6/site-packages/autotorrent/clients/rtorrent.py", line 179, in add_torrent
    self.proxy.load_start(*cmd)
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1112, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1452, in __request
    verbose=self.__verbose
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1154, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib64/python3.6/site-packages/autotorrent/scgitransport.py", line 67, in single_request
    return self.parse_response(response_body)
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1342, in parse_response
    return u.close()
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 656, in close
    raise Fault(**self._stack[0])
xmlrpc.client.Fault: <Fault -506: "Method 'load_start' not defined">

Using SCGI port: scgi_port = 0.0.0.0:49160

Edited by d2dyno
Link to comment
2 hours ago, d2dyno said:

Yeah, I am also having more issues even after changing rtorrent.rc. Namely, AutoTorrent timeouts:


root@root:/boot/extra# autotorrent -t

Connected to torrent client successfully!
  result: cwd:'/run/s6/services/rutorrent', pid:263
root@root:/boot/extra# autotorrent -a /mnt/user/General/Torrs/*.torrent
Found 335 torrent(s)
 [Exists]    '13 Reasons Why S02' The folder exist, but is not seeded by torrentclient
 [Exists]    '13 Reasons Why S02' The folder exist, but is not seeded by torrentclient
 [Exists]    '13.Reasons.Why.S02' The folder exist, but is not seeded by torrentclient
 [Missing]   "Ain't Them Bodies Saints 2013" Missing files, only 0.00% found (19.5 GB missing)
 [Missing]   "Ain't Them Bodies Saints 2013" Missing files, only 0.00% found (19.5 GB missing)
 [Exists]    'Arrow S06' The folder exist, but is not seeded by torrentclient
Traceback (most recent call last):
  File "/usr/bin/autotorrent", line 11, in <module>
    load_entry_point('autotorrent==1.6.3', 'console_scripts', 'autotorrent')()
  File "/usr/lib64/python3.6/site-packages/autotorrent/cmd.py", line 210, in commandline_handler
    result = at.handle_torrentfile(os.path.join(current_path, torrent), dry_run)
  File "/usr/lib64/python3.6/site-packages/autotorrent/at.py", line 465, in handle_torrentfile
    if self.client.add_torrent(torrent, destination_path, files['files'], fast_resume):
  File "/usr/lib64/python3.6/site-packages/autotorrent/clients/rtorrent.py", line 179, in add_torrent
    self.proxy.load_start(*cmd)
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1112, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1452, in __request
    verbose=self.__verbose
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1154, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib64/python3.6/site-packages/autotorrent/scgitransport.py", line 67, in single_request
    return self.parse_response(response_body)
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 1342, in parse_response
    return u.close()
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 656, in close
    raise Fault(**self._stack[0])
xmlrpc.client.Fault: <Fault -506: "Method 'load_start' not defined">

Using SCGI port: scgi_port = 0.0.0.0:49160

 

https://github.com/rakshasa/rtorrent/wiki/rTorrent-0.9-Comprehensive-Command-list-(WIP)#comprehensive-list-of-rtorrent-09-commands

Link to comment

SO I am trying to change the rtorrent.rc file with the patch required as of latest version, but I can read BUT NOT WRITE to my appdata share. 

 

I've tried AFP, I've tried SMB, A mac and a PC, all of which cannot write to appdata share, even though they have read/write permissions. 

 

HOW am I supposed to do the edit if I can't write to my share?! I KNOW NO OTHER WAY THAN TO PULL IT TO MY MAC/PC, DO THE CHANGES THERE, THEN WRITE THE MODIFIED FILE TO THE APPDATA SHARE!

 

PLEASE HELP ME!!!!!

 

urbanracer34

Link to comment
12 hours ago, urbanracer34 said:

SO I am trying to change the rtorrent.rc file with the patch required as of latest version, but I can read BUT NOT WRITE to my appdata share. 

 

I've tried AFP, I've tried SMB, A mac and a PC, all of which cannot write to appdata share, even though they have read/write permissions. 

 

HOW am I supposed to do the edit if I can't write to my share?! I KNOW NO OTHER WAY THAN TO PULL IT TO MY MAC/PC, DO THE CHANGES THERE, THEN WRITE THE MODIFIED FILE TO THE APPDATA SHARE!

 

PLEASE HELP ME!!!!!

 

urbanracer34

 

if you can't write to the appdata share, you either have local drive issues or permissions are wrong.

Link to comment
16 hours ago, urbanracer34 said:

SO I am trying to change the rtorrent.rc file with the patch required as of latest version, but I can read BUT NOT WRITE to my appdata share. 

 

I've tried AFP, I've tried SMB, A mac and a PC, all of which cannot write to appdata share, even though they have read/write permissions. 

 

HOW am I supposed to do the edit if I can't write to my share?! I KNOW NO OTHER WAY THAN TO PULL IT TO MY MAC/PC, DO THE CHANGES THERE, THEN WRITE THE MODIFIED FILE TO THE APPDATA SHARE!

 

PLEASE HELP ME!!!!!

 

urbanracer34

 

https://lime-technology.com/forums/topic/56382-plugin-ca-config-editor/

 

Link to comment

My RSS feeds seem to be very unreliable without the WEBUI open. I am missing downloads or they are only starting once the WEBUI has been opened(although they do seem to be working correctly occasionally).

 

As far as I can see the RSS plugin should be loading with rtorrent due to this line in rtorrent.rc:

 

execute = {sh,-c,/usr/bin/php7 /usr/share/webapps/rutorrent/php/initplugins.php abc &}

 

Is there anything that I am missing or that I can do to improve this?

Link to comment
  • 4 weeks later...

New unRaid user here, I've few questions and I hope to find some answers.

 

Q1: Torrents downloaded by rTorrent creates folders/files with read permission only! Any idea how to fix it?

The profileMask is already set to 0777 .. Running the "New Permissions" tool have fixed the files permission, but would like to know if there is a permanent solution.

 

Q2: Anyway to stop ruTorrent from creating the completed/incoming/watched folders?

I made the Host Path: /mnt/user/ so the docker has created new shares in my unRaid.

 

Q3: Changes done in ruTorrent don't get saved. Every time I restart the docker I get the default settings. Any idea what's wrong?

 

Q4: I've installed 2 different ruTorrent dockers which have created 2 folders in the appdata with the same name, but one of them with capital T (ruTorrent and rutorrent). I've removed the other docker but the appdata folder was not deleted. Since Windows treat both folders the same, how can delete the extra one?

 

Thanks.

 

On 6/2/2018 at 5:49 PM, Sin said:

hello, 
i can not modify the following folder: Save path on the webUI: /downloads/incoming
(right click, save to.. and nothing happens, i think the correct webui save path should be: /incoming/ )

unraid container settings:
Container path:
/Torrent/

host path:
/mnt/user/DataArray/
 

the second issue is, (transmisson worked fine on the same port settings) 51413 (default) "port is closed" appears and download progress (and seed, the seed shouldnt be working on the "wrong" path settings..) does not work. 
 

it was working fine in the last week.. but (since the last update?) it has been broken somewhere.. 


(is it possilbe to revert "manually" from unraid CA  ? )

thank you!

 

Had the same issue, fixed it by 1) removing the ruTorrent docker, 2) reboot unRaid, 3) installed ruTorrent again.

Edited by HAMANY
Link to comment
  • 3 weeks later...

I haven't been able to get into the webui for rutorrent since rebooting unraid recently. Does anyone have ideas? (Already tried removing docker for rutorrent with image, force updating, changing port 9080 to other port, removing docker+template and re-installing docker, changing appdata config to a fresh test folder, etc):

Nov 7 06:19:41 nginx: 2018/11/07 06:19:41 [error] 31429#31429: *12439 connect() to unix:/var/tmp/rutorrent.sock failed (111: Connection refused) while connecting to upstream, client: 10.0.0.23, server: , request: "GET /dockerterminal/rutorrent/ws HTTP/1.1", upstream: "http://unix:/var/tmp/rutorrent.sock:/ws", host: "7d.unraid.net:444"

 

Edited by d2dyno
Link to comment
  • 3 weeks later...

Is it possible to reduce the number of plugins?

I think I've figured out what's causing my issue - the webui hangs for me for quite some time most days, and eventually does start after several refresh attempts. But when it does time out the error is Bad response from server: (504 [error, getplugins])

Loading /php/getplugins.php manually takes several seconds, sometimes more than a minute, and the resulting document is over 10,000 lines.

In attempts to fix this I have:

Fixed docker permissions using the tool
Deleted the Appdata folder for rutorrent and reinstalled the docker.


My server is quite beefy and shouldn't be struggling with this:

2x Intel Xeon 2658v3
64gb ddr4-2133

Downloads folder set to /mnt/user.

Docker log including a restart:
 


[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 20-config: executing...
[cont-init.d] 20-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.

-
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] syncing disks.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...
usermod: no changes

-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 20-config: executing...
[cont-init.d] 20-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.

-

 


Any other ideas?

 

 

Edit:
I had a crushed patch cable. I've replaced it and things seem to be better. Odd that balance-rr didn't failover for this condition. Will keep you posted if the performance goes back down again. It did resolve after reboots for a while but would eventually get worse.

EDIT2:

even with the replaced patch cable and a good cable test on both cables to the switch, and from the switch to the router, I'm still experiencing this specific timeout:
[28.11.2018 22:38:16] Bad response from server: (504 [error,getplugins]) Gateway Time-out

Edited by Xaero
Link to comment
  • 2 weeks later...

Since the latest update I'm back to square one on the abysmal performance front. Everything was fine. 90+mb/s download speeds on healthy torrents, sustainable throughput all the time.
Now I'm back to waiting for getplugins.php for timeouts, and generally unresponsive webui. The rtorrent client itself is also somewhat unresponsive, and the actual throughput is abysmal:
image.png.34fe07dc7e5a368c1507b47c0d7e91d6.png

As you can see there's basically no read or write operations occuring (rtorrent is the ONLY process on the ENTIRE BOX trying to read/write data) and it's sitting at 90+% IOWAIT with 0% SWAPIN. I don't even know how to approach this anymore. I've tried tweaking rtorrents settings, php's settings, but to no avail. I should also mention none of my other applications or dockers are suffering performance impact of any kind. (I have MineOS running a modded minecraft server, Plex, and gitlab - none of which are seeing any performance problems.)

For hardware I have:

24x8TB WD Red
2x256gb Samsung 850 pro sata III ssd (cache)
64gb DDR4-2133 ECC Fully Buffered
2xIntel Xeon E5-2658v3
Dual gigabit lan in Balance-RR, with a compatible switch configured correctly.
The drives are connected to a HP 487738-001 24-bay expander card with dual backhaul to an LSI SAS9220-8i. 
Copying to the share shows full gigabit saturation nice and stable:
image.png.04b561952cbd724edc3ae8d36345e84e.png

Edited by Xaero
Link to comment

I've been looking into this a bit.
First; to the author of this docker:

Are you aware that rtorrent is overwriting the log each startup? If it crashes and is respawned, the log file from the previous run is lost. I've tried using an exec near the beginning of the config file to move the log:

execute = {sh,-c,mv /config/log/rtorrent/rtorrent.log /config/log/rtorrent/rtorrent.log.`ls /config/log/rtorrent/rtorrent.log* | wc -l`}

This does successfully move the "old" log file prior to starting rtorrent. I'm finding that if I restart the container, rtorrent becomes deadlocked at 99.99% IOWAIT and is almost completely unresponsive (the UI does load and does update when I resize the window, so it's running still) If I then leave it idle it restarts 3 times, and then works more or less "fine" for several hours, before becoming stuck in IOWAIT again and then never respawning. The log files are very clean though:

1545632842 W Ignoring rtorrent.rc.
1545632842 N rtorrent main: Starting thread.
1545632842 N rtorrent scgi: Starting thread.

 


So that tells us basically nothing.

From there, I dug into what handles rtorrent has open. We know it's not waiting for disk resources since the disks are all responsive and the array is able to saturate gigabit readily. The queue depth also indicates that the disk itself isn't unresponsive or being thrashed.
Here's where it gets interesting: 

https://paste.ubuntu.com/p/hKC4p4rCnN/

As you can see, it's opening an impressive number of sockets. I'm not sure if them being TCPv6 vs TCP is of any consequence, but most of my functional services are using IPv4 TCP connections. You can also see that none of the open sockets have functional endpoints, or size descriptors. I've tried with a fresh config, as well with the same behavior. Monitoring "lsof -a -p `pidof rtorrent` | wc -l" shows anywhere from ~1200 to more than 4000(!) open handles. This is clearly the problem, but I don't understand why this behavior is occurring. I don't think this docker is inherently at fault, though.



EDIT:

The fix was to enable ipv6 Prefix Delegation on my router. Most consumer routers should have this enabled by default. After enabling prefix delegation the issue has been resolved and the handles open correctly with actual endpoints. Good to know.

Edited by Xaero
Link to comment
  • linuxserver.io changed the title to [DEPRECATED] Linuxserver.io - Rutorrent

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.