前言

以下是安装qBittorrent教学。

适用于CentOS7或更新版本

适用于qBittorrent4.1.5或更新版本

安裝須知

qBittorrent基于libtorrent,所以必须先安装libtorrent。但是需要说明的是,我安装时,libtorrent最新的版本为1.2.1 ,但是此版本qb暂未支持。

我们选择安装1.0.11或者1.1.12,相对而言1.0.11更加稳定,但1.1.12性能更为强劲,因为其支持了异步i/o.本文就以1.1.12为例,演示安装过程。


https://gcc.gnu.org/

GNU編譯器(GCC)是一套程式語言編譯器,需要用於編譯qBittorrent的源碼。

qBittorrent4.1.4需要C++14進行編譯

CentOS7自帶的GCC4.8.5只支援到C++11,所以稍後會透過SCL安裝GCC8.2 (支援C++14)

安裝libtorrent

先安裝依賴包:

yum groupinstall "Development Tools"
yum install qt-devel boost-devel openssl-devel qt5-qtbase-devel qt5-linguist

https://github.com/arvidn/libtorrent/releases 查看更新的版本来替换安装的版本

这里以安装的 1.1.12 为例

wget https://github.com/arvidn/libtorrent/releases/download/libtorrent_1_1_12/libtorrent-rasterbar-1.1.12.tar.gz
tar xf libtorrent-rasterbar-1.1.12.tar.gz
cd libtorrent-rasterbar-1.1.12
./configure --disable-debug --prefix=/usr CXXFLAGS=-std=c++11
make -j$(nproc)
make install
ln -s /usr/lib/pkgconfig/libtorrent-rasterbar.pc /usr/lib64/pkgconfig/libtorrent-rasterbar.pc
ln -s /usr/lib/libtorrent-rasterbar.so.9 /usr/lib64/libtorrent-rasterbar.so.9

安装qBittorrent

由于qBittorrent4.1.4+ 需要C++14进行编译,而centos7.x 默认自带的gcc版本为4.8.5只支持c++11,因此我们需要更新gcc版本,为了尽量保护系统环境不被破坏,我们选择适用scl安装高版本gcc。

通过scl构建gcc8.2环境

yum install centos-release-scl
yum install devtoolset-8-gcc*
scl enable devtoolset-8 bash

https://github.com/qbittorrent/qBittorrent/releases 可查看更新的版本来替换安装的版本

这里以 安装 qBittorrent 4.1.5 为例

cd ~
wget https://github.com/qbittorrent/qBittorrent/archive/release-4.1.5.tar.gz
tar xf release-4.1.5.tar.gz
cd qBittorrent-release-4.1.5
./configure --prefix=/usr --disable-gui CPPFLAGS=-I/usr/include/qt5
make -j$(nproc)
make install

退出SCL的GCC環境

exit

设置开机启动

vi /etc/systemd/system/qbittorrent.service

输入以下内容

[Unit]
Description=qBittorrent Daemon Service
After=network.target [Service]
LimitNOFILE=512000
User=root
ExecStart=/usr/bin/qbittorrent-nox
ExecStop=/usr/bin/killall -w qbittorrent-nox [Install]
WantedBy=multi-user.target

保存后退出编辑

载入配置启用以上設置

systemctl enable qbittorrent.service

初次运行设置

安装完成后请先启动一次qb。

qbittorrent-nox

初次启动需要同意其适用协议,按照其提示输入y回车即可。

使用ctrl+c退出

使用systemctl 让其后台运行 systemctl start qbittorrent.service

开始使用

访问http://ip:8080 进入webui,如果无法访问可能是防火墙问题,将在下一节说明。

默认用户名:admin
默认密码:adminadmin

修改webui密码:

头部菜单: 工具 --> 选项 --> Web 用户界面 --> 验证

工具栏: 选项(最后一个转轮图标) --> Web 用户界面 --> 验证

systemctl 相关控制命令:

systemctl start qbittorrent.service #开启qb
systemctl stop qbittorrent.service #关闭qb
systemctl restart qbittorrent.service #重启qb

防火墙设置

centos7 使用firewall防火墙

放行webui端口

firewall-cmd --permanent --add-port=8080/tcp

放行qb默认监听端口(8999)自行修改后请同步放行防火墙。

firewall-cmd --permanent --add-port=8999/tcp

启用配置

firewall-cmd --reload

创建下载文件夹和设置权限

mkdir -p /home/Downloads
chmod 777 /home/Downloads

把下载路径设置到 /home/Downloads就OK了!

References
  1. CentOS 7 編譯qBittorrent安裝指南
  2. centos7编译安装qBittorrent
  3. Centos7编译安装qbittorrent4.1.2

CentOS 7 編譯qBittorrent Web UI安裝指南的更多相关文章

  1. Flutter不完全安裝指南(AndroidStudio集成)

    Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面.真心無力吐槽這些所谓的中文站以及社区的文档,整理一下安装流程吧. 本人是android开发,基于此基础上 ...

  2. Archlinux安裝指南(uefi+gpt)

    1.系统安装前的一些准备 首先在Archlinux官网下载镜像文件,然后刻录到U盘或光盘上.在我的机器上刻录arch镜像文件到U盘后启动不了,因为时间问题我没做过多的探索,所以后面直接刻录到光盘,用光 ...

  3. FreeBSD利用 ports 來安裝軟體

    FreeBSD利用 ports 來安裝軟體   利用 ports 來安裝軟體 FreeBSD 的 ports 就是別人已經編譯過,安裝測試沒問題了,他們將軟體編譯時所需的組態設定.編譯程序及安裝程序, ...

  4. linux下nginx安裝

    1.yum安裝 yum安裝  http://nginx.org/packages/centos/7/noarch/RPMS/ 第一步: 安裝命令: yum localinstall http://ng ...

  5. Centos7編譯安裝LAMP平臺

    什麽是LAMP? 拆開看 L 就是Linux系統 A是Apache的縮寫 M.P則是MySQL和PHP的简写. 其实就是把Apache, MySQL以及PHP安装在Linux系统上,组成一个环境来运行 ...

  6. windows 安裝 gcc 編譯器 - MinGW

    MinGW 介紹 MinGW 全稱 Minimalist GNU For Windows,是個精簡的Windows平台C/C++.ADA及Fortran編譯器,相比Cygwin而言,體積要小很多,使用 ...

  7. 【转载】RHEL / CentOS 7 用 Yum 安裝 MySQL 5.6

    久久未更新... 换好工作出去玩耍了一趟, 现在安装机器啦~ 装一个mysql 到centos 7, 一次转载一篇文章, 记录下: 原文地址:http://www.phpini.com/mysql/r ...

  8. Apache Maven 3.0.3 (yum) 安裝 (CentOS 6.4 x64)

    介紹http://maven.apache.org/ Maven是一個專案的開發,管理和綜合工具. 下載http://maven.apache.org/download.cgi 參考http://ma ...

  9. 【转】編譯Ogre1.9 IOS Dependencies及Ogre Source步驟及相關注意事項…

    http://makedreamvsogre.blogspot.tw/2014/01/ios-dependenciesogre-source.html 可能有人會想問我為什麼要自行編譯IOS Depe ...

随机推荐

  1. vue全家桶(vue2.x+vue-router+axios+webpack)项目搭建

    参考博客文章 博主FungLeo的Vue2+VueRouter2+Webpack+Axios 构建项目实战2017重制版 注:原博主写的非常详细 本文章为根据原博主教程总结的自己的搭建流程 一.安装n ...

  2. mysql5.7问题:[Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer pool

    在关闭mysql5.7的时候发现问题,一直处于夯住状态 [root@localhost ~]# /etc/init.d/mysqld stop Shutting down MySQL......... ...

  3. Web前端/全栈核心(html5/css3/js/vue/react/angular/es6/node)观看笔记

    a标签中的超链接,需要加   http://    否则会出现页面找不到. iframe中添加a标签,a标签中的target属性可以控制即将打开的页面,在那个位置显示. _blank 在新窗口中打开被 ...

  4. CSP-S2019初赛游记

    考得不好,不过\(86.5\)分应该勉强能进. 比赛前 比赛前的一个星期是有点慌,因为初赛是必须要复习的.初赛和复赛很不一样,复赛可以得一等奖,初赛不一定能考得很好. 最恶心的当然是那些计算机的&qu ...

  5. go构造函数

    go构造函数 结构体没有构造函数,你可以创建一个函数返回一个相应类型的实例代替(类似一个工厂): func NewSaiyan(name string, power int) *Saiyan { re ...

  6. vue基础三

    1.模板语法 在底层的实现上, Vue 将模板编译成虚拟 DOM 渲染函数.如果你熟悉虚拟 DOM 并且偏爱 JavaScript 的原始力量,你也可以不用模板,直接写渲染(render)函数,使用可 ...

  7. 【LeetCode 13】罗马数字转整数

    题目链接 [题解] 就是上一题反过来的过程. 因为有说一般情况下后面的罗马数字是小于前面的罗马数字的. 如果前面的罗马数字小于后面的罗马数字了. 说明出现了4,9,40,90这些特殊情况. 那么就得判 ...

  8. Eclipse中安装插件的方法

    eclipse插件的安装方法大体有以下三种:  第一种:直接复制法:假设你的Eclipse的在(C:\eclipse), 解压你下载的 eclipse 插件或者安装eclipse 插件到指定目录AA( ...

  9. 解决(Missing artifact com.oracle:ojdbc14:jar:11.2.0.4.0)

    maven项目检索时报Missing artifact com.oracle:ojdbc14:jar:11.2.0.4.0 经过查阅资料知道原因为: Oracle 的 ojdbc.jar 是收费的,M ...

  10. delphi 下载

    获取网络文件大小 //delphi 获取网络文件大小 function GetUrlFileSize(aURL: string): integer; var FileSize: integer; va ...