qBittorrent 是一款开源种子和磁力链接下载工具,支持 Windows, Mac 和 Linux 等主流操作系统和 ARM, x86 和 amd64 等主流架构,功能非常强大。他不仅支持从种子文件和磁力链接下载,还支持做种、编辑 Tracker、设置下载优先级、RSS 订阅等功能。Web UI 功能更是为其如虎添翼——我们可以将 qBittorrent 安装在存储空间较大的服务器(俗称“大盘鸡”)上,并通过强大而易用的 Web UI 操作 qBittorrent,既减轻了本地设备的压力,也将服务器的高在线率和网络优良的特性充分地利用了起来。
本文旨在介绍 qBittorrent 在 Linux 下的编译安装。利用腾讯云轻量应用服务器存储版的大容量磁盘空间加上 qBittorrent 可以将机器变身为一台多功能的实用下载机。
准备工作
qcloud-Lighthouse-qBittorrent-preSystem qcloud-Lighthouse-qBittorrent-preSystem
apt install -y build-essential pkg-config automake libtool git libgeoip-dev python3 python3-dev apt install -y libboost-dev libboost-system-dev libboost-chrono-dev libboost-random-dev libssl-dev apt install -y qtbase5-dev qttools5-dev-tools libqt5svg5-dev zlib1g-dev qcloud-Lighthouse-qBittorrent-perl qcloud-Lighthouse-qBittorrent-perl
wget https://github.com/arvidn/libtorrent/releases/download/v1.2.11/libtorrent-rasterbar-1.2.11.tar.gz tar xf libtorrent-rasterbar-1.2.11.tar.gz Libittorrent 是 qBittorrent 的后端主程序,在大流量、长时间和大量的种子的场景下,Libittorrent 的性能直接决定着 qBittorrent 的稳定性和性能。Libtorrent 1.1.14 版本是广受好评的一个版本,但是现在看来过于陈旧,也不支持新版的 qBittorrent,故本文演示编译 Libtorrent 1.2.11.
下载并解压 qBittorrent 源码包:(qBittorrent 4.3.1 版本,发布于 2020 年 11 月 25 日)
wget https://github.com/qbittorrent/qBittorrent/archive/release-4.3.1.tar.gz tar xf release-4.3.1.tar.gz 需要说明的是,Libttorrent 的版本与 qBittorrent 的版本需要按照如上所述对应,否则可能导致 qBittorrent 编译失败。
qcloud-Lighthouse-qBittorrent-download qcloud-Lighthouse-qBittorrent-download
如果下载缓慢,请将 https://github.com/arvidn/libtorrent/releases/download/v1.2.11/libtorrent-rasterbar-1.2.11.tar.gz 替换为 https://static.gmx0.cn/files/libtorrent/libtorrent-rasterbar-1.2.11.tar.gz ,将 https://github.com/qbittorrent/qBittorrent/archive/release-4.3.1.tar.gz 替换为 https://static.gmx0.cn/files/qBittorrent/release-4.3.1.tar.gz 。
进行编译 4. 编译 Libttorrent 依次执行以下命令:
cd libtorrent-rasterbar-1.2.11 ./configure –disable-debug –enable-encryption –with-libgeoip=system CXXFLAGS=-std=c++14 make -j$(nproc) make install ldconfig 其中,参数 -j$(nproc) 为变量 CPU 核心数。编译需等待数分钟至数小时(这取决于机器性能)。
cd qBittorrent-release-4.3.1 ./configure –disable-gui –disable-debug make -j$(nproc) make install 同样的,编译需等待数分钟至数小时(这取决于机器性能)。
收尾工作 6. 写入 systemd 文件 复制以下代码块的全部内容并一次性粘贴至 SSH 窗口:
cat << EOF > /etc/systemd/system/qbittorrent.service [Unit] Description=qBittorrent Daemon Service After=network.target
[Service] LimitNOFILE=512000 User=root ExecStart=/usr/local/bin/qbittorrent-nox ExecStop=/usr/bin/killall -w qbittorrent-nox
[Install] WantedBy=multi-user.target
EOF qcloud-Lighthouse-qBittorrent-systemd qcloud-Lighthouse-qBittorrent-systemd
停止 qBittorrent 进程: systemctl stop qbittorrent; 取消 qBittorrent 开机启动: systemctl disable qbittorrent。
qcloud-Lighthouse-qBittorrent-end qcloud-Lighthouse-qBittorrent-end
至此,qBittorrent 已经完全安装完成,关于 Web UI 的内容请阅读下方的“进阶用法”部分。
进阶用法 8. 访问 Web UI 并进行基础设置 访问腾讯云后台,为你的那台轻量应用服务器添加一条防火墙规则:
设置项 值 协议 TCP 端口 8080 策略 允许 访问 http://服务器公网IP地址:8080/ ,输入 Web UI 的初始用户名 admin 和初始密码 adminadmin。
qcloud-Lighthouse-qBittorrent-WebUI-Initialization qcloud-Lighthouse-qBittorrent-WebUI-Initialization
为了保障您的数据安全和服务器安全,请修改 Web UI 的初始用户名和初始密码。
9.1. 使用宝塔面板 登录宝塔面板后台,添加一个站点。域名自定义;PHP 版本选择“静态”,单击确定。
qcloud-Lighthouse-qBittorrent-WebUI-bt-addsite qcloud-Lighthouse-qBittorrent-WebUI-bt-addsite
修改网站配置(可以先行设置 SSL 证书等),选择“反向代理”选项卡,代理名称自定义,目标URL填写 http://127.0.0.1:8080,单击提交。
qcloud-Lighthouse-qBittorrent-WebUI-bt-Reverse-proxy qcloud-Lighthouse-qBittorrent-WebUI-bt-Reverse-proxy
将域名解析到服务器并访问域名,效果如图:
qcloud-Lighthouse-qBittorrent-WebUI-bt-effect qcloud-Lighthouse-qBittorrent-WebUI-bt-effect
9.2. 使用 LNMP.org 一键包 使用 lnmp vhost add 命令添加一个站点,不用设置伪静态,按需设置 SSL 证书。完成后,修改 /usr/local/nginx/conf/vhost/对应的域名.conf,在 server 块内添加以下字段:
location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; }
qcloud-Lighthouse-qBittorrent-WebUI-lnmp-config qcloud-Lighthouse-qBittorrent-WebUI-lnmp-config
执行 nginx -s reload 以应用更改。
原文链接:https://blog.51cto.com/feyncode/5293479