1. 现在 qBittorrent 的官方 Wiki 写得比较完善了,我这个没什么时间能力更新了。
  2. 也有静态编译的可直接运行的二进制文件可用了,所以本文价值几乎没有了。
  3. 另外,Docker 也是一个很好的选择,例如 superng6/qbittorrentee 的 enhanced edition
  4. 仅仅是下载 BT 推荐使用 enhanced editon
  5. 这台机器已经出手很久了,现在用 x86 比较多,如果有问题可以评论或者发邮件admin@thris.me

前言

手痒,脑残入了一个矿渣我家云, 四核 A53 ARMV8 , 1GB 内存,带一个 USB HUB 转出来的 SATA3.0 能够接 3.5 寸硬盘,还带一个 USB 3.0 和 USB 2.0 ,刚好拿来当一个下载机,以及折腾
但终究是 arm 没有 x86 开放,固件能用的不多,有 OMV 和 ARMBIAN 我用的是 ARMBIAN,具体教程这里就不讲了,主要说说 qBittorrent 的问题。

目前大佬做的固件只有到 stretch ,部分包没有,相比 Buster。比如 qBittorrent 4.1 ,后者有优化过的 ui 以及有可以更换的 UI 特性 ,旧版的 UI 对移动端没有优化,毫无体验,那么想要在手机上用,只有自己编译,另外还要忍受着四核心的羸弱性能,或者折腾交叉编译我是不会交叉编译
(play 上有一个 qBitorrent 的 远程控制 app,我现在更加推荐另外一个 APP,me.fengmlo.qbRemoteFreeGithub 地址 兼容性更好,添加服务器更方便,我 Nginx 反代的 subfolder 也能正常使用,免费版本支持多服务器。)

关于 qBitorrent
qBitorrent 有两个版本,一个是需要显示器才能正常工作的 qBitorrent 和 一个不需要显示器的 qBitorrent-nox ,在小主机上就用后者了。
两者编译时候的参数不同。

正文

一切基于 Armbian stretch
Linux version 5.4.2-rockchip64 (root@wind-pc) (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36))) #19.11.3 SMP PREEMPT Mon Dec 9 23:39:24 CST 2019

(本文教程主要来自 官方仓库的 Wiki 和自己的摸索翻译。)

就只说说 qBitorrent-nox 编译的部分。

安装依赖

基础

sudo apt-get install build-essential pkg-config automake libtool git zlib1g-dev
sudo apt-get install libboost-dev libboost-system-dev libboost-chrono-dev libboost-random-dev libssl-dev libgeoip-dev

QT 库

qBitorrent 4.0-4.1.x 需要 Qt 5.5.1 ,4.2 以后就需要 Qt 5.9 以上了。

sudo apt-get install qtbase5-dev qttools5-dev-tools libqt5svg5-dev

(这里有一点就是, Debian 9 是无法兼容 Qt 5.7 以上的了,也就是说你无法编译最新版本的 qBitorrent 了,最多到 4.1 ,我目前主机上的就是 5.7.1 )

Python

sudo apt-get install python3

(当然 python3 应该都有了吧)

Libtorrent 库

直接通过包管理安装,方便快捷

sudo apt-get install libtorrent-rasterbar-dev

安装不成功可以尝试编译 libtorrent

克隆仓库

git clone https://github.com/arvidn/libtorrent.git
cd libtorrent

配置

./autotoll.sh
/configure --disable-debug --enable-encryption

编译安装

make && make install

sudo checkout可以把二进制文件打包成 deb 包,可以试试)

最后

sudo ldconfig

编译 qBittorent-nox

git clone -b v4_1_x https://github.com/qbittorrent/qBittorrent
cd qBittorrent
./configure --disable-gui --enable-systemd --with-boost-libdir=/usr/lib/arm-linux-gnueabihf
# 这里的 --disable-gui 就是禁用显示器支持。
make -j2

这里就等待编译完成就行了。
线程不建议开太多,死机就 gg。

可以使用 tmux 以防意外关掉终端。

tmux new

打开了“虚拟终端”
如果当前窗口意外关闭,编译还是会继续进行。

最后安装

sudo make install

到这了就安装结束了。

systemd 开机自启进程守护

编写文件 qbittorrent.service

[Unit]
Description=qBittorrent Daemon Service
Documentation=man:qbittorrent-nox(1)
Wants=network-online.targe
After=network-online.target nss-lookup.target

[Service] 
# if you have systemd >= 240, you probably want to use Type=exec instead
Environment=LD_LIBRARY_PATH=/usr/local/lib:${LD_LIBRARY_PATH}
Type=simple
#User=rikka
#Group= rikka
ExecStart=/usr/bin/qbittorrent-nox
TimeoutStopSec=infinity

[Install]
WantedBy=multi-user.target

放到 ~/.config/systemd/user
(这里是对当前用户的用户模式,命令需要加上 --user)
推崇的是单独新建一个用户,然后禁止其登陆,但我觉得怪麻烦的,就用了当前用户了(

systemctl enable qbittorrent.service --user
#允许开机自启
systemctl start qbittorrent.service --user
#运行
systemctl status qbittorrent.service --user
#查看状态,有**美妙的绿色**就说明没问题了。

当然也可以直接用系统用户,qbittorrent.services 放在 /etc/systemd/system/ 下就好,需要用 root 权限执行操作。

sudo systemctl enable qbittorrent.service 
sudo systemctl start qbittorrent.service

更换 UI

登录你的 webui,在选项中找到替换 UI 的选项,把你找到的静态文件地址填进去就 ojbk 了。
这里推荐一个

Last modification:December 19, 2021
If you think my article is useful to you, please feel free to appreciate