全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworksBGVM服务器IP归属甄别会员请立即修改密码
查看: 665|回复: 20

使用腾讯云轻量编译安装 qBittorrent 搭建下载环境

[复制链接]
发表于 2021-7-10 19:35:58 | 显示全部楼层 |阅读模式
原载于 https://www.idc.moe/qcloud-Lighthouse-qBittorrent.html
作者:iks

  qBittorrent 是一款开源种子和磁力链接下载工具,支持 Windows, Mac 和 Linux 等主流操作系统和 ARM, x86 和 amd64 等主流架构,功能非常强大。他不仅支持从种子文件和磁力链接下载,还支持做种、编辑 Tracker、设置下载优先级、RSS 订阅等功能。Web UI 功能更是为其如虎添翼——我们可以将 qBittorrent 安装在存储空间较大的服务器(俗称“大盘鸡”)上,并通过强大而易用的 Web UI 操作 qBittorrent,既减轻了本地设备的压力,也将服务器的高在线率和网络优良的特性充分地利用了起来。

  本文旨在介绍 qBittorrent 在 Linux 下的编译安装。利用腾讯云轻量应用服务器存储版的大容量磁盘空间加上 qBittorrent 可以将机器变身为一台多功能的实用下载机。

准备工作
1. 系统选用
  服务器系统推荐选用 Debian 10,因其软件包较新,而 Debian 9 和 CentOS 系列因 Libtorrent 编译阶段重要的依赖缺失或版本过于陈旧等导致编译失败。



2. 环境配置

  SSH 登录服务器后,首先执行 apt update && apt upgrade -y 获得最新软件包列表并更新系统版本号和基础软件包。
等待命令执行完毕后,按顺序输入以下命令安装必要的依赖:


  1. apt install -y build-essential pkg-config automake libtool git libgeoip-dev python3 python3-dev
  2. apt install -y libboost-dev libboost-system-dev libboost-chrono-dev libboost-random-dev libssl-dev
  3. apt install -y qtbase5-dev qttools5-dev-tools libqt5svg5-dev zlib1g-dev
复制代码




3. 源码下载

  下载并解压 Libtorrent 源码包:(libtorrent-rasterbar 1.2.11 版本较为稳定且支持 qBittorrent 4.3 以上的新版本)

  1. wget https://github.com/arvidn/libtorrent/releases/download/v1.2.11/libtorrent-rasterbar-1.2.11.tar.gz
  2. 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 日)

  1. wget https://github.com/qbittorrent/qBittorrent/archive/release-4.3.1.tar.gz
  2. tar xf release-4.3.1.tar.gz
复制代码


  需要说明的是,Libttorrent 的版本与 qBittorrent 的版本需要按照如上所述对应,否则可能导致 qBittorrent 编译失败。



进行编译
4. 编译 Libttorrent
  依次执行以下命令:

  1. cd libtorrent-rasterbar-1.2.11
  2. ./configure --disable-debug --enable-encryption --with-libgeoip=system CXXFLAGS=-std=c++14
  3. make -j$(nproc)
  4. make install
  5. ldconfig
复制代码


  其中,参数 -j$(nproc) 为变量 CPU 核心数。编译需等待数分钟至数小时(这取决于机器性能)。

5. 编译 qBittorrent
  由于上一步操作结束后工作目录还停留在 libtorrent-rasterbar-1.2.11 内,故先执行 cd ..  返回上一级,尔后依次执行以下命令:

  1. cd qBittorrent-release-4.3.1
  2. ./configure --disable-gui --disable-debug
  3. make -j$(nproc)
  4. make install
复制代码


  同样的,编译需等待数分钟至数小时(这取决于机器性能)。

收尾工作
6. 写入 systemd 文件
  复制以下代码块的全部内容并一次性粘贴至 SSH 窗口:

  1. cat << EOF > /etc/systemd/system/qbittorrent.service
  2. [Unit]
  3. Description=qBittorrent Daemon Service
  4. After=network.target

  5. [Service]
  6. LimitNOFILE=512000
  7. User=root
  8. ExecStart=/usr/local/bin/qbittorrent-nox
  9. ExecStop=/usr/bin/killall -w qbittorrent-nox

  10. [Install]
  11. WantedBy=multi-user.target

  12. EOF
复制代码




7. 初始化 qBittorrent 并开机启动
  执行 qbittorrent-nox ,输入 y 并回车以确认使用协议。然后使用 Ctrl + C 键退出。
  执行 systemctl enable qbittorrent 以使 qBittorrent 开机启动;
  执行 systemctl start qbittorrent 以使 qBittorrent 在后台运行。
  
  停止 qBittorrent 进程: systemctl stop qbittorrent;
  取消 qBittorrent 开机启动: systemctl disable qbittorrent。



  至此,qBittorrent 已经完全安装完成,关于 Web UI 的内容请阅读下方的“进阶用法”部分。

进阶用法
8. 访问 Web UI 并进行基础设置
  访问腾讯云后台,为你的那台轻量应用服务器添加一条防火墙规则:
  
设置项
协议TCP
端口8080
策略允许


  访问 http://服务器公网IP地址:8080/ ,输入 Web UI 的初始用户名 admin 和初始密码 adminadmin。



  为了保障您的数据安全和服务器安全,请修改 Web UI 的初始用户名和初始密码。

9. 反向代理 Web UI 端口
  反向代理可以实现使 Web UI 复用标准 Web 服务端口 (80, 443)、绑定域名防止端口扫描暴露服务和配置 HTTP 证书等,下面介绍在宝塔面板和 LNMP.org 一键包下使用 Nginx 反向代理 qBittorrent Web UI。本项配置完成后,可以在腾讯云后台将本服务器防火墙的 8080 端口开放的策略删除,防止被扫描。

9.1. 使用宝塔面板
  登录宝塔面板后台,添加一个站点。域名自定义;PHP 版本选择“静态”,单击确定。



  修改网站配置(可以先行设置 SSL 证书等),选择“反向代理”选项卡,代理名称自定义,目标URL填写 http://127.0.0.1:8080,单击提交。



  将域名解析到服务器并访问域名,效果如图:



9.2. 使用 LNMP.org 一键包
  使用 lnmp vhost add 命令添加一个站点,不用设置伪静态,按需设置 SSL 证书。完成后,修改 /usr/local/nginx/conf/vhost/对应的域名.conf,在 server 块内添加以下字段:

  1.         location /
  2.         {
  3.             proxy_pass http://127.0.0.1:8080;
  4.             proxy_set_header Host $host;
  5.             proxy_set_header X-Real-IP $remote_addr;
  6.             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  7.             proxy_set_header REMOTE-HOST $remote_addr;
  8.         }
复制代码




  执行 nginx -s reload 以应用更改。

鸣谢

- Ubuntu/Debian Linux編譯qBittorrent安裝指南 - https://npchk.info/ubuntu-debian-install-qbittorrent/
发表于 2021-7-10 19:41:30 | 显示全部楼层
说的好

我选择Transmission
发表于 2021-7-10 19:44:17 | 显示全部楼层
debian 最新的库 bullseye 是4.25版的 直接下
 楼主| 发表于 2021-7-10 19:49:34 | 显示全部楼层
lanlandezei 发表于 2021-7-10 19:44
debian 最新的库 bullseye 是4.25版的 直接下

部分 PT 站会禁止 4.25 等版本,自己会编译的化可以有效规避这些风险。
发表于 2021-7-10 19:51:03 | 显示全部楼层
厉害 技术贴必顶
发表于 2021-7-10 19:54:35 | 显示全部楼层
感谢分享!我选一键。
发表于 2021-7-10 20:04:23 | 显示全部楼层
iks 发表于 2021-7-10 19:49
部分 PT 站会禁止 4.25 等版本,自己会编译的化可以有效规避这些风险。

这个就不太清楚了,家里armbian盒子就是这样安装的,小站也有5 6 个没有什么问题。
发表于 2021-7-10 20:06:41 | 显示全部楼层
本帖最后由 Chriss 于 2021-7-10 20:09 编辑

感谢分享,我之前好像用的是大佬编译好的文件


edit:大佬,你咋就去喝茶了,mjj人均喝茶嘛
 楼主| 发表于 2021-7-10 20:33:04 | 显示全部楼层
本帖最后由 iks 于 2021-7-10 20:34 编辑
Chriss 发表于 2021-7-10 20:06
感谢分享,我之前好像用的是大佬编译好的文件

大佬编译好的文件
是荒岛的吧?



你咋就去喝茶了
不是我
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2021-9-23 22:48 , Processed in 0.063461 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表