qBittorrent is a free, open-source BitTorrent client that combines a lightweight interface with advanced features like integrated search, RSS feed support, sequential downloading, and IP filtering. Unlike proprietary alternatives, it has no subscription fees or tracking. Common use cases include downloading Linux ISOs, subscribing to private tracker RSS feeds that automatically add torrents, and running qBittorrent-nox on headless servers for around-the-clock seeding with remote web interface management.
This guide covers installing qBittorrent on Ubuntu using the “qBittorrent Team” Personal Package Archive (PPA, Ubuntu’s community-run software repository) for the latest stable or development builds. You’ll install either the desktop client for graphical user interface (GUI, similar to Windows desktop apps) environments or qBittorrent-nox, the headless server version controlled through a web interface. The setup includes systemd (Ubuntu’s service manager comparable to Windows Services) configuration, password management, and firewall rules for remote access.
Choose Your qBittorrent Installation Method
Ubuntu users typically choose between stable or unstable PPAs and between the desktop client or the qBittorrent-nox Web UI service. Review the options below so you install the build that matches your needs before adding repositories or services.
| Method | Version/Channel | Stability | Best For |
|---|---|---|---|
| Desktop client via stable PPA | qbittorrent-team/qbittorrent-stable | Fully tested releases with security updates | Daily desktop use and long-term torrent seeding |
| Desktop client via unstable PPA | qbittorrent-team/qbittorrent-unstable | Development snapshots with rapid fixes | Users testing the newest UI features or bug fixes |
| qBittorrent-nox service via stable PPA | qbittorrent-team/qbittorrent-stable | Predictable builds for remote servers | Headless Ubuntu servers or NAS appliances |
| qBittorrent-nox service via unstable PPA | qbittorrent-team/qbittorrent-unstable | Unverified builds that may break between updates | Lab environments validating new Web UI features |
Most readers should stick with the stable PPA for both the desktop and qBittorrent-nox service, switching to unstable only when you are troubleshooting a recent bug or evaluating a specific new capability.
Import qBittorrent PPA (Stable or Development Builds)
Update Ubuntu Before qBittorrent Installation
Before proceeding, update your Ubuntu system to ensure all packages are current, which helps avoid conflicts during installation.
Open a terminal window with Ctrl+Alt+T, or search for “Terminal” from the desktop overview so you can run the following commands.
First, update the package list:
sudo apt update
Then upgrade any outdated packages:
sudo apt upgrade
If you need a refresher on every way to refresh or upgrade packages, review the Ubuntu package update guide before proceeding.
Install PPA Repository Dependencies
After updating your system, install the necessary dependencies for qBittorrent. These packages enable your Ubuntu system to securely access and import the qBittorrent PPA:
sudo apt install dirmngr ca-certificates software-properties-common apt-transport-https
This command will either install the necessary packages or confirm they’re already present on your system.
Import qBittorrent PPA
Next, import the “qBittorrent Team” PPA containing the latest software version. You can choose between the stable PPA and the unstable PPA. The stable PPA contains well-tested versions, while the unstable PPA contains the latest features that may not be thoroughly tested.
However, keep in mind that unstable builds can introduce bugs or breaking changes since they skip the extended testing cycle of stable releases.
Run the following command to import the PPA of your choice:
Option 1: Import qBittorrent stable PPA:
sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-stable -y
Option 2: Import qBittorrent unstable PPA:
sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-unstable -y
Choose the stable PPA for production environments or systems where reliability matters most. The unstable PPA delivers cutting-edge features and fixes faster but may introduce bugs or breaking changes since builds skip the extended testing cycle. Most users should start with the stable PPA and switch to unstable only when testing specific features or troubleshooting issues.
Update Package Index After PPA Import
After importing the qBittorrent PPA, refresh the package index to include the newly added repository. This ensures your system recognizes the qBittorrent packages during installation. Run the following command:
sudo apt update
Install qBittorrent Desktop Client
Install the qBittorrent desktop client on your Ubuntu system and prepare to launch it for the first time. If you plan to run only the Web Interface version on a server, skip ahead to the qBittorrent-nox section.
Install qBittorrent Desktop Client via APT Command
Now that your system has the necessary dependencies and the qBittorrent PPA, install the qBittorrent desktop client. Furthermore, use the updated package list by executing the following command:
sudo apt install qbittorrent
Once executed, this command will fetch the appropriate qBittorrent package from the PPA and install it on your system.
Launch qBittorrent Desktop Client
With qBittorrent installed, launch and start using the application. To launch the qBittorrent desktop client (either stable or unstable, depending on which PPA you imported), use the following command in your terminal session:
qbittorrent
This command opens the qBittorrent client and allows you to begin managing torrents.
Alternatively, if you prefer to launch qBittorrent using an application icon instead of the terminal, you can access it through your system’s application menu. To do this, follow the path:
Activities > Show Applications > qBittorrent

Upon first launch, qBittorrent displays a legal notice pop-up window. This notice protects qBittorrent from legal liabilities, as torrents play a substantial role in unauthorized downloads today.
After accepting the legal notice, the main qBittorrent window appears and is ready for use.

Install qBittorrent-nox Web-UI For Headless Environments (Ubuntu Server)
For server environments, qBittorrent-nox provides a headless alternative that runs on Ubuntu servers without a graphical desktop. The web interface lets you manage torrents remotely through any browser.
Install qBittorrent-nox via APT Command
To install qBittorrent-nox, run the following command:
sudo apt install qbittorrent-nox
Once installed, qBittorrent-nox runs as a headless service accessible through a web interface at http://localhost:8080. The Web UI keeps admin as the default username but now generates a temporary password on each launch until you save your own credentials.
Choose the Account that Runs qBittorrent-nox
The Ubuntu package ships a templated systemd unit (qbittorrent-nox@.service) under /usr/lib/systemd/system/ that runs under whatever user name you supply after the @ symbol. Decide whether to run the daemon as your regular login or a dedicated service account so downloaded files stay isolated.
If you prefer a dedicated account, create one with a system user that owns its own home directory:
sudo adduser --system --group --home /var/lib/qbittorrent qbittorrent
The --system flag creates a locked-down user that cannot log in interactively, which keeps the torrent service separate from your daily desktop profile. The explicit --home /var/lib/qbittorrent argument is important: without it, adduser defaults to /nonexistent for system accounts, and the qbittorrent-nox service will fail because it has nowhere to store its configuration. Skip this step entirely if you plan to run the service as your regular username.
Enable the Packaged Systemd Service
With your chosen account ready, enable the built-in systemd service. Beginners can run whoami to confirm their username and then replace your-user manually, while power users can let the shell insert the current username automatically.
Beginner-friendly command (replace the placeholder yourself):
sudo systemctl enable --now qbittorrent-nox@your-user
Power-user shortcut (auto-detects your username):
sudo systemctl enable --now qbittorrent-nox@$(whoami)
For example, if you created the qbittorrent service user, run:
sudo systemctl enable --now qbittorrent-nox@qbittorrent
Verify the daemon is running and review its logs with the standard systemd tools (use either the manual placeholder or the $(whoami) shortcut just shown):
systemctl status qbittorrent-nox@your-user
systemctl status qbittorrent-nox@$(whoami)
The templated unit is maintained by the qBittorrent package itself, so you only need a custom override file if you plan to change advanced options such as ExecStart flags or custom environment variables.
Access qBittorrent Web UI
With the service running, access qBittorrent through your browser’s Web UI. Type the server’s internal IP address followed by the port number (8080), for example, 192.168.55.156:8080. If hosted locally, use the localhost address 127.0.0.1:8080.
If accessing the Web UI from a remote machine, ensure your firewall allows traffic on port 8080. Additionally, Ubuntu users running UFW (Uncomplicated Firewall, Ubuntu’s front end to iptables and comparable to Windows Firewall) can open the port with the following command:
sudo ufw allow 8080/tcp
The Web UI username defaults to admin, but qBittorrent 4.6.1 and newer no longer ship with a fixed password.
Upstream developers removed the legacy admin/admin WebUI credentials starting with qBittorrent 4.6.1. The daemon now generates a random temporary password each time it starts without saved credentials and prints it to stdout once. See the upstream issue #19984, which also documents why you must read this message from the systemd journal in headless deployments.
Check the qBittorrent service logs to capture the temporary password before your first login. Choose whichever command style matches your comfort level:
Beginner-friendly command (replace the placeholder manually):
sudo journalctl -u qbittorrent-nox@your-user -n 50 | grep -i "temporary password"
Power-user shortcut (auto-fills your username with $(whoami)):
sudo journalctl -u qbittorrent-nox@$(whoami) -n 50 | grep -i "temporary password"
If you don’t see the line, restart the service while following the log stream so you can copy the password immediately. Again, use whichever variant you prefer:
Beginner-friendly restart and tail:
sudo systemctl restart qbittorrent-nox@your-user
sudo journalctl -fu qbittorrent-nox@your-user
Power-user restart and tail:
sudo systemctl restart qbittorrent-nox@$(whoami)
sudo journalctl -fu qbittorrent-nox@$(whoami)
Expect output similar to the following:
******** Information ******** The WebUI administrator username is: admin The WebUI administrator password was not set. A temporary password is provided for this session: VBGK9pUeT You should set your own password in program preferences.
Sign in with username admin and the temporary password that appears in your log. Each restart generates a new temporary password until you store permanent credentials.
Immediately set your own username and password from the Web UI:
Tools > Options > Web UI > Authentication
After saving the change, restart the daemon so the hashed credentials reload cleanly. Use the same command style you chose earlier:
Beginner-friendly restart:
sudo systemctl restart qbittorrent-nox@your-user
Power-user restart:
sudo systemctl restart qbittorrent-nox@$(whoami)
Reopen the Web UI and confirm the new username/password combination works before disabling your log tail session.
Managing qBittorrent: Updates and Removal
Update qBittorrent or qBittorrent-nox
The PPA automatically provides updates through Ubuntu’s standard package management. Subsequently, to check for and install qBittorrent updates, run the following command:
sudo apt update
If an update is available, install it with:
sudo apt upgrade
Remove qBittorrent or qBittorrent-nox
To uninstall qBittorrent completely, first remove the PPA you imported earlier. If you need a refresher on purging repositories, the remove a PPA on Ubuntu guide walks through every cleanup method.
Remove the PPA with the appropriate command:
Remove qBittorrent stable PPA:
sudo add-apt-repository --remove ppa:qbittorrent-team/qbittorrent-stable -y
Remove qBittorrent unstable PPA:
sudo add-apt-repository --remove ppa:qbittorrent-team/qbittorrent-unstable -y
After removing the PPA, uninstall qBittorrent:
sudo apt remove qbittorrent
Alternatively, for qBittorrent-nox installations:
sudo apt remove qbittorrent-nox
Conclusion
The qBittorrent Team PPA delivers access to the latest stable or development builds with ongoing security updates and feature enhancements. Furthermore, desktop users gain a feature-rich torrent client with integrated search and RSS support, while server administrators benefit from qBittorrent-nox’s lightweight web interface for remote torrent management. Regular PPA updates ensure your installation remains secure and current with the latest improvements.
Essential qBittorrent Resources
Here are some useful links related to using qBittorrent:
- qBittorrent Official Website: Visit the official qBittorrent website for information about the application, its features, and download options.
- qBittorrent GitHub Repository: Access the qBittorrent GitHub repository to view the source code, report issues, and contribute to the development.
- qBittorrent Wiki: Explore the qBittorrent wiki for detailed documentation, tutorials, and guides on using qBittorrent.
- qBittorrent Forum: Join the qBittorrent forum to discuss issues, share solutions, and get support from the community.
From what I can tell adduser won’t create a home home directory for a system user, which seems logical. Not sure if a bug or intended, but needless to say the service couldn’t start without it.
This was the output I got from “sudo adduser –system –group qbittorrent-nox”:
sudo adduser –system –group qbittorrent-nox
info: Selecting UID from range 100 to 999 …
info: Selecting GID from range 100 to 999 …
info: Adding system user `qbittorrent-nox’ (UID 111) …
info: Adding new group `qbittorrent-nox’ (GID 111) …
info: Adding new user `qbittorrent-nox’ (UID 111) with group `qbittorrent-nox’ …
info: Not creating `/nonexistent’.
After adding the environment for HOME and the path the service started without issues.
Thanks for sharing this, Necro. You’re right that a pure system user created with a non-existent home directory will break the default
qbittorrent-noxsetup, because the service expects to write its config under that user’s home.In the guide I use
sudo adduser --system --group --home /var/lib/qbittorrent qbittorrent, which forces a real home directory at/var/lib/qbittorrentso systemd can start the service cleanly without extra environment tweaks. Your example with/nonexistentmatches what happens if--homeis omitted, so your workaround by settingHOMEfor the unit makes sense in that case.I’ll add a short note to the article to clarify why the explicit
--home /var/lib/qbittorrentpath is important and to avoid commands that create a system user with no usable home directory. Appreciate you flagging the behavior so others don’t run into the same startup issue.The PPA is outdated: qbittorrent-nox v4.5.5 is not supported.
Apparently, AppImage is the new way:
https://www.fosshub.com/qBittorrent.html
Seems the PPA now only supports the qBittorrent desktop app not qBittorrent-nox. Basically, you are installing the version directly from Ubuntu has in its repository.
Thanks for the comment, I will make a note of it in the guide, however qBittorrent desktop latest builds are still supported and would work for anyone else that is curious with this PPA.
The admin/adminadmin credentials do not work.
Thanks for reporting this, Mark. The old
admin/adminadminlogin was removed starting with qBittorrent 4.6.1. The service now generates a random temporary password on each start and prints it to the system logs instead.To find your temporary password, run:
Replace
your-userwith the account running the service (or use$(whoami)if it’s your current user).If nothing shows up, restart the service and follow the log stream:
Look for the line that shows the WebUI administrator username and a one-time password. Sign in with username
adminand that temporary password, then immediately set your own credentials under Tools > Options > Web UI > Authentication. After saving, restart the service again so the new login takes effect.great guide, was able to set up an remote web-ui qBittorrent server with this. Thanks! 🙂