簡體   English   中英

獲取Aria2(aria2c)以繼續下載通過RPC添加的文件

[英]Getting Aria2 (aria2c) to resume download of files added via RPC

我目前正在以守護程序模式運行aria2,以便通過xml-rpc命令對其進行控制。 通過xml-rpc添加文件效果很好。 我要解決的問題是,如果aria2突然而不是正常停止,如何使aria2恢復“會話”。

我正在使用此處手冊中描述的設置“ save-session-interval”,以嘗試使aria間隔保存到會話文件中。 如果我通過ctrl-c中斷來中斷aria,它將正常地將待處理的下載保存到會話文件中。 之后,如果我通過相同的命令重新啟動aria,它將正確地恢復下載。

aria2每20秒寫入一次控制台,說它已序列化會話。 Notepad ++甚至檢測到文件已更改,但是文件仍然為空。

07/11 22:49:54 [NOTICE] Serialized session to 'C:\temp\aria\session.txt' successfully.

我用來啟動aria的命令:

aria2c.exe --conf-path=C:\temp\aria\aria.conf --daemon

conf文件的內容為:

dir=C:\temp\aria
input-file=C:\temp\aria\session.txt
save-session=C:\temp\aria\session.txt
enable-rpc=true
save-session-interval=20

我正在使用的xml-rpc命令是從python調用的,如下所示:

import xmlrpclib
fileurl = "http://example.com/sample_file.txt"
s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
val = s.aria2.addUri([fileurl], {'http-user':'user', 'http-passwd':'pass'})

我嘗試過的另一件事是,優雅地停止aria后清空會話文件(允許將未完成的下載寫入會話文件)。 然后,它將使用下載覆蓋會話文件。 此行為使我相信aria不會將通過xml-rpc添加的下載保存到“會話”列表中,以保存到會話文件中。

我也嘗試將“ save-session-interval”添加到初始命令而不是conf文件中,但是行為是相同的。

Aria版本詳細信息:

aria2 version 1.17.1

我正在使用下面的conf文件,aria作為守護進程運行,並且運行良好:

dir=/media/ExternalHd/aria
file-allocation=falloc
continue
log-level=error
max-connection-per-server=4
summary-interval=120
daemon=true
enable-rpc=true
rpc-listen-port=6800
rpc-listen-all=true
max-concurrent-downloads=2
save-session=/home/pi/Desktop/aria.txt
input-file=/home/pi/Desktop/aria.txt
log=/home/pi/Desktop/aria.log
disable-ipv6=true
disk-cache=25M
timeout=600
retry-wait=30
max-tries=50
save-session-interval=10

嘗試使用上述配置並將aria2c作為守護進程運行,您還可以使用各種方法從台式機和移動設備訪問aria2c RPC接口,如此處所述 我正在使用移動應用程序和Web界面,它使用aria2c v 1.16.5保存會話

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM