Downloading torrents directly to a smartphone without a computer is a task that TorrServedoes an excellent job of. This is a lightweight torrent client with a web interface that turns your Androiddevice into a full-fledged seedbox. But unlike classic applications like uTorrent or FrostWire, TorrServe works as a server: you manage downloads through the browser, and the files are saved directly to your phone or external drive.
The main advantage of this approach is the ability to download torrents in the background even when the application is closedwhich is critical for owners of devices with aggressive battery optimization (for example Xiaomi, Huawei or Samsung with energy saving mode). However, setting up TorrServe on Android has nuances: from choosing the right version torrserve to configuring ports and access rights. In this guide, we will analyze the process from installation to solving typical problems - taking into account the features of modern versions of Android (13+).
What is TorrServe and why is it better than regular torrent clients
TorrServe is torrent server with a web interfacewritten in Go. Unlike mobile applications, it does not require a constantly open window and does not โeat upโ phone resources when minimized. Main advantages:
- ๐ Background work: downloads continue even after closing the browser (if configured correctly).
- ๐ฑ Remote access: you can manage torrents from any device on the local network (or via the Internet, if you configure forwarding ports).
- โก Minimalistic interface: no advertising, unnecessary buttons or restrictions on the number of tasks.
- ๐ ๏ธ Flexible configuration: support for DHT, PEX, speed limits, file prioritization.
But there are also disadvantages. For example, TorrServe cannot automatically add torrents via RSS (unlike qBittorrent) and requires manual port configuration. In addition, on Android you have to launch it through Termux a terminal for mobile devices, which can scare away beginners. However, the result is worth the effort: you get a stable torrent server that works 24/7 without connecting to a PC.
Device requirements and preliminary preparation
Before installing TorrServe, make sure that your phone meets the minimum requirements:
| Parameter | Minimum requirement | Recommended |
|---|---|---|
| Android version | 7.0 Nougat | 10+ (full support for Termux) |
| RAM | 2 GB | 4 GB+ (for simultaneous downloads) |
| Free space | 500 MB (for Termux + TorrServe) | 2+ GB (if you plan to download files) |
| Processor architecture | arm64 or armv7 | arm64 (best compatibility) |
In addition to hardware requirements, you will need:
- ๐ฒ Termux application (download only from F-Droid โ version from Google Play is outdated and does not support packages).
- ๐ Stable Internet connection (Wi-Fi or mobile data with an unlimited tariff).
- ๐ Disabled "Power Saving Mode" for Termux (otherwise the process will be killed by the system).
โ ๏ธ Attention: On some firmware (for example, MIUI or ColorOS) Termux may be blocked even when power saving is disabled. In this case, add the application to the โBattery optimization exceptionsโ in the phone settings.
Installing Termux and preparing the environment
Step 1: Download and install Termux from F-Droid. Once launched, update the packages by running the commands:
pkg update && pkg upgrade -y
termux-setup-storage
Command termux-setup-storage will ask for storage access - allow it so that TorrServe can save files to the memory card or internal memory.
Step 2: Install the necessary dependencies:
pkg install wget tar -y
Step 3 (optional): If you have Android 10+install proot-distro to isolate TorrServe in a separate environment (recommended for stability):
pkg install proot-distro -yproot-distro install ubuntu
proot-distro login ubuntu
Update packages (pkg update)|Allow access to storage (termux-setup-storage)|Install wget and tar|Create an isolated environment (optional)-->
Downloading and setting up TorrServe
Step 1: Download the latest version of TorrServe for Android (architecture arm64 or armv7). You can find out the architecture of your processor with the command:
uname -m
If the output contains aarch64 โdownload the version for arm64; if armv7l โ for armv7.
Step 2: Download and unpack TorrServe (replace [VERSION] and [ARCHITECTURE] with the current ones):
wget https://github.com/yourok/torrserve/releases/download/v[VERSION]/torrserve-[VERSION]-linux-[ARCHITECTURE].tar.gztar -xvf torrserve-*.tar.gz
cd torrserve-*/
Step 3: Create a configuration file torrserve.conf:
cp torrserve.example.conf torrserve.conf
nano torrserve.conf
In the file, change the following parameters (use keys Ctrl+O to save, Ctrl+X to exit):
# Port for the web interface (default 8080)HttpPort = 8080
Directory for downloads (for example, the Downloads folder on a memory card)
DownloadDir = /sdcard/Download/Torrents
Port for incoming connections (forward it in the router if you need remote access)
ListenPort = 50000
โ ๏ธ Attention: If you use Termux withoutproot-distro, the path to the memory card will be/storage/emulated/0/Download. Make sure that the folder exists and is writable.
Starting TorrServe and managing via the web interface
Step 1: Start the server with the command:
./torrserve -c torrserve.conf
If everything is configured correctly, you will see the message:
Starting TorrServe on http://[::]:8080
Step 2: Open the browser on your phone and go to:
http://localhost:8080
If you need to control from another device on the same network, use the local IP of the phone (you can find it out with the command ifconfig in Termux):
http://[LOCAL_IP]:8080
The TorrServe interface is minimalistic:
- ๐ค Button ยซAdd Torrentยป โ downloading a .torrent file or magnet link.
- ๐ฅ Tab ยซDownloadsยป โ list of active downloads with a speed and progress indicator.
- โ๏ธ ยซSettingsยป โ setting speed, ports and protocols (DHT, PEX).
For TorrServe to start automatically when you reboot the phone, add a launch command to the file ~/.termux/boot/start-torrserve and make it executable: chmod +x ~/.termux/boot/start-torrserve.
Optimization and solving common problems
Problem 1: TorrServe does not start
- ๐น Check the rights to the download folder:
chmod 777 /sdcard/Download/Torrents. - ๐น Make sure that the port
8080is not busy (check with the commandnetstat -tuln). - ๐น If you use MIUI or EMUI, add Termux to "Startup" and "Protected applications".
Problem 2: Slow download speed
- ๐น Open the port
50000(or another one specified inListenPort) in the settings router. - ๐น Enable DHT and PEX in the config (
EnableDHT = true,EnablePEX = true). - ๐น Limit the upload speed (
UploadRateLimit) if the provider slows down under high load.
Problem 3: You cannot download files to the card memory
On Android 11+ Google has tightened the rules for accessing storage. Solutions:
- ๐น Use internal memory (
/storage/emulated/0/Download). - ๐น Connect your phone to the PC and manually create a folder on the memory card via MTP.
- ๐น Install Termux:Tasker to bypass restrictions (requires root access).
How to check if the port is open on the router?
Open the command line on your PC and run:
telnet [LOCAL_IP_PHONE] 50000
If the connection is established, the port is open. If not, check the firewall settings of the router and provider (possibly blocking P2P traffic).
Security and anonymity when using TorrServe
TorrServe itself does not provide anonymity - your IP address is visible in the swam. To hide it:
- ๐ก๏ธ Use VPN: Install ProtonVPN or Windscribe and connect before starting TorrServe. In the TorrServe settings, specify the binding to the VPN interface:
BindAddress = tun0(you can find out the interface name with the command
ifconfigafter connecting to the VPN). - ๐ Configure port forwarding in VPN: Some services (for example, AirVPN or Mullvad) support port forwarding for torrents.
- ๐ Change DHT nodes:
torrserve.confadd public DHT servers to speed up:DHTBootstrapNodes = router.utorrent.com:6881,dht.transmissionbt.com:6881
โ ๏ธ Important: Free VPNs often limit P2P traffic or keep logs. For torrents, choose paid services with policies no-logs (for example, NordVPN or Surfshark).
Using TorrServe without a VPN on public trackers may result in warnings from your provider. Always check your country's laws regarding torrents.
FAQ: Frequently asked questions about TorrServe on Android
Is it possible to run TorrServe on Android without Termux?
Technically yes, but this requires root access and manual compilation of the binary. Termux remains the easiest way, since it provides a full-fledged one. Linux environment without having to root the device.
How to make TorrServe work after rebooting the phone?
In Termux, do:
mkdir -p ~/.termux/bootecho './torrserve -c torrserve.conf' > ~/.termux/boot/start-torrserve
chmod +x ~/.termux/boot/start-torrserve
Then in Android settings, disable battery optimization for Termux.
Why TorrServe is not visible from another network (via the Internet)?
For remote access you need to:
- Forward the port
8080(or another oneHttpPort) on the router. - Find out your external IP (for example, via ifconfig.me).
- Use a DDNS service (for example, No-IP) if you have a dynamic IP.
โ ๏ธ Opening access from the Internet increases the risk of hacking. Always use a complex password for the web interface (HttpAuth = user:password in the config).
How to limit download/upload speed?
In the file torrserve.conf add the lines:
DownloadRateLimit = 1048576 # 1 MB/s (in bytes)
UploadRateLimit = 262144 # 256 KB/s
After the change, restart TorrServe.
Can TorrServe be used with an external hard drive (OTG)?
Yes, but:
- The drive must be formatted in
ext4,FAT32orexFAT(NTFS is not supported without root-right). - In
DownloadDirspecify the path like/mnt/usb/folder(check the exact path with the commandls /mntafter connecting the disk). - On some phones (for example Samsung), you will need to allow access to USB drives in the Termux settings.