pyLoad Download Manager through Optware-NG

Installing pyLoad through optware-ng it's easy, Allexx done a nice installer for this, just follow next steps:

1 - Install Optware-NG from here

2 - Install pyLoad and required dependencies

ipkg install pyload nano

3 - Create ssl keys, input desired values or just press ENTER every time

Generating ssl Key...
Generating RSA private key, 4096 bit long modulus
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
Country Name (2 letter code) [AU]: ENTER
State or Province Name (full name) [Some-State]: ENTER
Locality Name (eg, city) []: ENTER
Organization Name (eg, company) [Internet Widgits Pty Ltd]: ENTER
Organizational Unit Name (eg, section) []: ENTER
Common Name (e.g. server FQDN or YOUR name) []: ENTER
Email Address []: ENTERPlease enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: ENTER
An optional company name []: ENTER

4 - Continue to configure pyLoad:

Proceeding to configure pyLoad
Choose your Language / Wähle deine Sprache ([en], de, fr, it, es, nl, sv, ru, pl, cs, sr, pt_BR): ENTERWelcome to the pyLoad Configuration Assistent.
It will check your system and make a basic setup in order to run pyLoad.The value in brackets [] always is the default value,
in case you don't want to change it or you are unsure what to choose, just hit enter.
Don't forget: You can always rerun this assistent with --setup or -s parameter, when you start pyLoadCore.
If you have any problems with this assistent hit STRG-C,
to abort and don't let him start with pyLoadCore automatically anymore.When you are ready for system check, hit enter. ENTER## System Check ##
Python Version: OK
pycurl: OK
sqlite3: OKpycrypto: OK
py-OpenSSL: OKpy-imaging: OK
tesseract: OKPyQt4: missingjinja2: OK
beaker: OK
JS engine: OKSystem check finished, hit enter to see your status report. ENTER## Status ##Features available: container decrypting, ssl connection, automatic captcha decryption, Webinterface, extended Click'N'LoadContinue with setup? ([y]/n): ENTER

Do you want to change the config path? Current is /tmp/mnt/sda1/optware-ng/etc/pyload
If you use pyLoad on a server or the home partition lives on an iternal flash it may be a good idea to change it.
Change config path? (y/[n]): ENTER

Do you want to configure login data and basic settings?
This is recommend for first run.
Make basic setup? ([y]/n): ENTER

## Basic Setup ##

The following logindata is valid for CLI, GUI and webinterface.
Username [User]: desired_username ENTER
Password: desired_password ENTER
Password (again): same_password_again ENTER

External clients (GUI, CLI or other) need remote access to work over the network.
However, if you only want to use the webinterface you may disable it to save ram.
Enable remote access ([y]/n): ENTER

Language ([en], de, fr, it, es, nl, sv, ru, pl, cs, sr, pt_BR):
Downloadfolder [Downloads]: ENTER
Max parallel downloads [3]: ENTER
Use Reconnect? (y/[n]): ENTER

Do you want to configure ssl?
Configure ssl? (y/[n]): y ENTER

## SSL Setup ##

Execute these commands from pyLoad config folder to make ssl certificates:

openssl genrsa -out ssl.key 1024
openssl req -new -key ssl.key -out ssl.csr
openssl req -days 36500 -x509 -key ssl.key -in ssl.csr > ssl.crt

If you're done and everything went fine, you can activate ssl now.
Activate SSL? ([y]/n): y ENTER

Do you want to configure webinterface?
Configure webinterface? ([y]/n): ENTER

## Webinterface Setup ##

Activate webinterface? ([y]/n): ENTER

Listen address, if you use or localhost, the webinterface will only accessible locally.
Address []: ENTER
Port [8000]: ENTER

pyLoad offers several server backends, now following a short explanation.
builtin: Default server, best choice if you dont know which one to choose.
threaded: This server offers SSL and is a good alternative to builtin.
fastcgi: Can be used by apache, lighttpd, requires you to configure them, which is not too easy job.
lightweight: Very fast alternative written in C, requires libev and linux knowlegde.
Get it from here:, compile it
and copy to module/lib

Attention: In some rare cases the builtin server is not working, if you notice problems with the webinterface
come back here and change the builtin server to the threaded one here.
Server ([builtin], threaded, fastcgi, lightweight): ENTER

Setup finished successfully.
Hit enter to exit and restart pyLoad ENTER

Use /opt/etc/init.d/S98Pyload to start/stop pyLoad
Usage: /opt/etc/init.d/S98Pyload (start|stop|restart|status)

Starting PyLoad
Daemon PID 26653
Configuring python27
Configuring readline
Configuring sqlite
Configuring tesseract-ocr
Configuring unrar
Configuring unzip
update-alternatives: Linking //opt/bin/unzip to /opt/bin/unzip-unzip
Configuring xz-utils
Configuring zlib
Successfully terminated.

5 - Go to your router ip address and port 8000 or and happy downloading...



nano /jffs/scripts/firewall-start

Paste this lines

iptables -I INPUT -p tcp --destination-port 8000 -j ACCEPT

Save with CTRL-O / Enter / and exit with CTRL-X

chmod a+rx /jffs/scripts/firewall-start
sh /jffs/scripts/firewall-start

Now you should have access from wanipaddress:8000


In pyLoad user interface go to Config / Menu / Web Interface

Choose Server as threaded

Use HTTPS on

Press Submit


Go to Config / MenuSSL

SSL Certificate: /opt/share/pyload/ssl.crt

SSL Key: /opt/share/pyload/ssl.key

Press Submit



Restart pyLoad

/opt/etc/init.d/S98Pyload restart

Now access pyLoad through secured connection or https://www.router_wan_ip_address:8000

  • matteo

    Is it possible to set download folder to a samba share?
    for example smb://NETWORK_LOCATION/

    • You can mount a samba share directly on router
      Create /jffs/scripts/nat-start with the following content
      mkdir -p /mnt/samba
      mount -t cifs \\\sambasharedfolder /mnt/samba -o "username=share_username,password=share_password"
      Set permission
      chmod 755 /jffs/scripts/nat-start
      But don't forget to change share ip address, username and password
      Reboot router
      Now check if is mounted with
      ls -l /mnt/samba

    • matteo

      You can mount a samba share directly on router
      Create /jffs/scripts/nat-start with the following content

      mkdir -p /mnt/samba
      mount -t cifs \\\sambasharedfolder /mnt/samba -o "username=share_username,password=share_password"

      Set permission

      chmod 755 /jffs/scripts/nat-start

      But don't forget to change share ip address, username and password
      Reboot router


      Now check if is mounted with

      ls -l /mnt/samba


      And what if I have anonymous connection to samba service? Do I have to leave username and password unset? like

      -o "username=,password="

  • Thrasher881

    Hi. Is there any Chance to get Jdownloader 2 on ARM Devices with Optware NG an Debian? In Headless Mode with Myjdownloader?

  • RyanAir


    I think, there are errors in the installation skript...

    >> Do you want to change the config path? Current is /tmp/mnt/sda1/optware-ng/etc/pyload

    shall be /tmp/mnt/sda1/optware-ng.arm/etc/pyload ? or /opt/etc/pyload ?

    On my RT-AC87U with Merlins 380.57 pyLoad crashes shortly after the start. The swap file is enabled:

    admin@WLANROUTER:/tmp/mnt/Volume/optware-ng.arm/share/pyload# free
    total used free shared buffers
    Mem: 255708 64136 191572 0 2108
    -/+ buffers: 62028 193680
    Swap: 1048572 4 1048568

    Any idea?

    I gues, for starting the pyload configuration again I still have to change to /opt/share/pyload and to call python -s ?

    Thank yo in advance?

    • RyanAir

      TeHashX, no idiea? :-(

      • Try debian version, search on this site

      • RyanAir

        May I install Debian and Optware-NG in parallel? All other installed packages from Optware-NG seem to work eine.

      • RyanAir

        OK, I've installed the debian version, it's working! I've proposed some URL change to your debian tutorial, because has moved. Thanks!

  • Jm

    Same here with Merlin 380.57 and AC68U, I can't connect to web interface. Pyload is launched and after two seconds disappears from running processes (swap is configured and on).
    And another question. How can I install Asus Download and pyload together?. Seems that if Asus Download is installed first then Optware-ng stops working.

  • Adrian Nowakowski

    When we can Connect to get this work on arm?

  • Adrian Nowakowski

    I have instaled the new generation optware and pyload, but in older version it's works but no I can not enter o webinterference? I instaled this 5 times, it is in optware-ng folder, bur why does not work?

    • Do you have swap enabled?

      • Adrian Nowakowski

        It is done by automat, and it shows in settings of router

      • Adrian Nowakowski

        I wanted now enable manualy and something goes wrong, how I ca reset , optware, or nano text editor? now says it is busy

      • Adrian Nowakowski

        can't enter on webinterference

      • Adrian Nowakowski


      • Adrian Nowakowski


      • Adrian Nowakowski


      • Adrian Nowakowski

        i have reset router,done new instalation,but can not active swap manualy becouse text is busy, but swap is active i think,but no succes on pyload

      • Adrian Nowakowski

        I think port are not open

      • I don't have an arm device to test just mipsel, maybe some day you will grant me access through team viewer and will solve issue.
        It's not a port issue for sure...

      • Adrian Nowakowski

        Ok,give me day and we can do this,becouse I search resolving this but no go

      • Huberer

        Have the same issue with latest RMerlins Firmware 380.57. I've installed pyload like described only the port is different. I did this procedure several times before with John's fork and pyload is running perfect. With the latest RMerlin's releases pyload is started (it's written in the terminal) but no access to the webinterface. Have no clue why it is like that. This problem I had with Asus RT-AC68U and Netgear R7000 (with RMerlin's 380.57).

      • Reboot router and install optware-ng again

  • Chitenavi

    Hello, i have asus rt-ac87u and the same problem describes below. Run pyload and after few seconds the process dissapear, cant access web interface. I have swap file created from optware-ng installation.
    Any suggestion, need help


    • Reboot router then post output from free command:

      • Chitenavi

        Here you have. Like another user, transmission are working fine...

  • fff@%%%$.$)$)

    Ouuu. I forgot for swap
    No I dont have swap /faceplam
    I try it when I came back home (2-3days)

  • Aaaaa

    I am using asusWRT-meriliv on linksys ea6400/xvorteX/

    I have installed pyload,pyload service is running, but I cant conncet to port) other servers like DLNA, tranmission are working fine

SoftEther VPN Running on AsusWRT Routers
Minidlna UPnP Media Server through Debian Jessie Arm
How to Mount Samba Shares inside Chrooted Debian
Nginx Web Server with PHP Support through Optware-NG
Minidlna UPnP Media Server through Debian Jessie Arm
How to Mount Samba Shares inside Chrooted Debian
Spreed WebRTC server and web client
Asterisk VoIP Server running on AsusWRT Routers
SoftEther VPN Running on AsusWRT Routers
NZBGet through Entware
Minidlna UPnP Media Server through Debian Jessie Arm
NetData System Monitor Entware


To be notified by email when a new tutorial is posted :)

Thanks for Subscribing! I'll keeping you up-to-date with latest tutorials!

Something went wrong, try again...