How to pause a running aria download

For this to work your aria2 should support option pause. Search for --pause[=true|false] in man aria2c. It works in aria2_1.12.0-1_i386 [oneric] (and later).

First start RPC server: aria2c --enable-rpc=true (For older ver. aria2c --enable-xml-rpc=true)
Then use RPC using http://localhost:6800/jsonrpc
The following example adds http://example.org/file to aria2: In a python console type the following

JSON RPC

import urllib2, json
jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
    'method':'aria2.addUri',
    'params':[['http://example.org/file']]})
c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
c.read()
'{"id":"qwer","jsonrpc":"2.0","result":"2089b05ecca3d829"}'

The following example pause download whose GID is "3":

XML RPC

import xmlrpclib
s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
s.aria2.pause('3')

If you get somethin like below your version of aria2 doesn't support it.

xmlrpclib.Fault: <Fault 1: 'No such method: aria2.pause'

In version that use aria2c --enable-xml-rpc=true, other options can be used such as adiing files, etc. (using XML RPC).


Simplest you can use Ctrl + C shortcut in terminal/konsole to pause the download. Internally it makes a temporary file in the same directory of extension .aria2, and when you try to redownload the file, it starts from the position it was made to pause. And don't use Ctrl + Z.