动机
由于学习的需要,在国外某服务器厂商购买了vps服务(至于是哪个厂商就不说啦)。但是呢,就算用作梯子,一个月1T的流量总是用不完。最经觉得自己营养充足,想找点电影看看。
无奈现在百度网盘的速度真的感人,一年的百度网盘超级会员贵得不要不要的,并且百度的离线下载并不是真的离线,他只是把自己服务器上有的文件拉给你而已。如果想找点稀缺的资源,百度网盘就是个鸡肋啊,摔!
诶,那能不能利用vps来搭建自己的离线下载服务器呢?这样既能利用多余的带宽资源,又能提高下载速度,岂不美哉!带着这个疑问,我在某个寂寞的晚上,开始了搭建。
搭建过程
机器配置
发行版:CentOS 6.9
RAM: 512M
CPU: 单核
带宽: 1000Mbps
这个机器配置不算高,作为下载服务器也是绰绰有余了。
工具选择
经过一番搜索,选择了作为部署的工具 transmission + vsftpd + nginx + aria2c。
- transmission, transmission-daemon: 作为种子、磁力的客户端,作为离线下载的核心工具。
- vsftpd:用于搭建ftp, 来对文件下载文件进行管理(可怜的vps只有10G的磁盘空间 T_T)
- nginx :高性能的nginx用来作为静态文件服务器。
- aria2c:多线程下载器,从nginx的展示的文件列表中高速下载我们离线好的文件。
部署实践
1. 安装transmission,修改配置并启动服务
安装transmission及transmission-daemon
$ wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
$ rpm -ivh epel-release-6-8.noarch.rpm
$ yum -y upgrade
$ yum -y install transmission transmission-daemon
修改配置并启动transmission服务
在路径/var/lib/transmission/.config/transmission 下的 settings.json 文件就是transmission的配置文件
里面有一大堆配置.我们需要修改下面的配置,这样就可以使用远程软件对我们的tranmission进行操控
"rpc-authentication-required": true,
"rpc-enabled": true,
"rpc-password": "远程调用的密码",
"rpc-whitelist-enabled": false,
"rpc-username": "远程调用的用户名",
启动transmission服务
$ sudo service transmission-daemon start
于是我们就能够通过 http://host_ip:9091 进行访问transmission服务.进行了一下测试,速度还是可以的,峰值速度有30MB/s
另外我们还可以安装 Transmission-Remote-GUI 来对transmission进行操控,而不用访问页面, Linux(Mint)下在应用商店就能够下载. 操作方式和uTorrent类似UI界面:
2. vsftpd 搭建ftp服务器
搭建ftp服务器并不是用来下载文件的,通过ftp下载文件发现速度奇慢.所以ftp服务器的作用是用来对文件进行管理的, 一般来说就是删除操作.
安装vsftpd
$ yum install -y vsftpd
我们使用Linux用户来登录,不使用虚拟用户(因为要装数据库,麻烦)
因为vsftpd默认不允许使用root登录所以我们要添加用户
添加用户
$ useradd ftpuser
$ passwd ftpuser
修改ftpuser的home目录为transmission的下载目录
$ usermod -d /var/lib/transmission/Downloads ftpuser
$ rm -rf /home/ftpuser
修改vsftpd配置文件(/etc/vsftpd/vsftpd.conf)
对配置文件如下:
# generate using cat vsftpd.conf | grep -v "#"
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
ftpd_banner=Welcome to Private FTP service.
chroot_list_enable=NO
listen_ipv6=YESpam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
local_root=/var/lib/transmission/Downloads
其中的配置 chroot_list_enable=NO表明不允许用处切换出home目录.
启动vsftpd
sudo service vsftpd start
这样我们就能使用ftp对transmission下载的文件进行管理.
3. nginx 搭建静态文件服务器
利用nginx作为静态资源的服务器,提供已下载资源的展示
安装nginx的操作网上有一堆教程.作为后续的填充.
主要说一说配置
在nginx的配置文件下(/etc/nginx/conf.d/default.conf)这么进行修改
autoindex on; autoindex_exact_size on; autoindex_localtime on; server { listen 8090; listen [::]:8090; server_name localhost; charset utf-8; location / { root /var/lib/transmission/Downloads; index index.html index.htm; }
启动nginx服务就可以通过8090端口获得文件列表了.
4. aria2c 下载文件
aria2c 用于从服务器上下载文件, 安装于自己的机器上.
主要说一下怎么通过aria2c多线程加速下载
在aria2c中有几个参数和多线程下载有关
参数x : --max-connection-per-server=<NUM>, 每个服务器最大的连接数, 默认是1
参数s: --split=<N>, 指每个文件下载连接数,默认5,-s受限于-x,如果s默认 x大于5时, x也会受限与s
所以对于大文件来说,将x和s参数适当提高能提高下载速度.
参考链接:
How To Install Transmission BitTorrent Client on CentOS 6
Linux下搭建ftp服务器
VPS下载服务器
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
- 杨千嬅《如果大家都拥有海》寰亚 [WAV+CUE][998M]
- 孟庭苇.1994-1990-1994钻石精选集2CD(2022环球XRCD限量版)【上华】【WAV+CUE】
- 群星.1998-华纳好情歌精选17首【华纳】【WAV+CUE】
- 张敬轩王菀之.2006-903.ID.CLUB拉阔演奏厅LIVE.2CD【环球】【WAV+CUE】
- 《欢欣森活》存档方法
- 《炉石传说》2024新赛季上线更新内容问题汇总
- 《南瓜恐慌》进不去游戏解决方法
- 杨烁《杨烁唱唐诗》2024Hi-Res[WAV分轨]
- 杨烁《杨烁唱唐诗》2024Hi-Res[WAV分轨]
- 童丽《民歌童丽(HQCD)》【WAV+CUE】
- 童丽《绝对收藏》2022头版限量编号[WAV+CUE][1G]
- 腾格尔《出走天堂》MQA-UHQCD限量版[低速原抓WAV+CUE][1G]
- 田震《时光音乐会》纯银CD[低速原抓WAV+CUE][1G]
- 炉石传说11月初最强登顶卡组合集 炉石传说11月初登顶卡组分享
- lol炼金龙魂详细属性是什么 2024炼金龙魂详细属性介绍