把Linux服务器做成一个下载器,实现远程下载

简介: 把Linux服务器做成一个下载器,实现远程下载

很多朋友购买了云服务器或家里自建有服务器或NAS主机,究极利用的其中一项目功能也是博主很青睐也经常使用的,那就是BT下载。

普通的BT下载,大家肯定不陌生,安装一个Windows操作系统,使用迅雷或IDM来挂机。这种方法倒也行,但是我们想实现的是远程下载,虽说使用远程桌面也可以哈,但终究不太方便,何况大家都是玩Linux的用户,这些软件就跑不起来了。


Transmission


其实Linux下的BT下载早就有了解决方案,也就是今天的主角Transmission。使用下面的命令部署在服务器上(需要安装docker):

# 创建文件夹存放数据
mkdir -p /opt/docker/transmission/data
# 部署transmission
docker run \
    -d \
    --name transmission \
    -p 9091:9091 \
    -p 51413:51413 \
    -v /opt/docker/transmission/data:/data \
    -e USERNAME=admin \
    -e PASSWORD=admin \
    gists/transmission

其中的USERNAME和PASSWORD为系统登录的账号密码,可自定义,默认用户名和密码为admin。另外需要把9091和51413 TCP端口放开。

部署完成后,使用网页http://ip:9091的形式访问,ip为你服务器的公网地址,内网下则是局域网ip。


image.png


后续只需要在网页上提交下载文件的种子文件,就能远程下载到服务器上了,如果服务器在家里,回到家就可以很方便取用的文件了。


aria2


Aria2是一款开源下载工具,可帮助简化不同设备和服务器之间的下载过程。它支持磁力链接、BT种子、http等类型的文件下载,与迅雷及QQ旋风相比,Aria2有着优秀的性能及较低的资源占用,架构本身非常轻巧,通常只需要4兆字节(HTTP下载)到9兆字节(用于BitTorrent交互)之间。最重要的一点是Aria2完全免费!

同样的,由于它支持Linux命令行工具,我们也可以将其打包发布到docker里,配合官方的插件工具实现远程下载功能。

# 创建文件夹存放数据
mkdir -p /opt/docker/aria2/data
docker run -d \
    --name aria2-pro \
    --restart unless-stopped \
    --network host \
    -e PUID=$UID \
    -e PGID=$GID \
    -e RPC_SECRET=12345 \
    -e RPC_PORT=6800 \
    -e LISTEN_PORT=6888 \
    -v /opt/docker/aria2/config:/config \
    -v /opt/docker/aria2/data:/downloads \
    p3terx/aria2-pro

同样的,部署完成后,需要开放TCP的6800端口,RPC_SECRET为访问密钥,可自定义,默认12345。

部署好后,需要在浏览器里下载这样一款插件,名字为Aria,也可以直接后台回复「114」发给你。


image.png


安装好后,进入配置项目设置远程下载地址(将其中的ip改成你的地址)和之前配置的访问密钥后保存。


image.png


进到插件主界面,如果显示为已连接,表示服务连接成功,接下来你就可以快乐的下载了,所有的内容都会存储到你的服务器上。


image.png


结语


这两种方式都可以实现文件的远程下载,即下载完成后文件存储在你的服务器上,建议部署在家庭服务器上,使用ddns或内网穿透技术实现。也可在部署在vps上,实现本地脱机离线下载,也不失为好方法。

哦,对了,它还可能部署在树莓派上。


相关文章
|
12月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
5989 77
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
790 18
|
Ubuntu Linux
Ubuntu Linux 20.04 LTS “Focal Fossa”测试版开放下载
u要知道有关新系统的更多信息,大家可以前往Ubuntu Wiki页面,其中包含Ubuntu 20.04的发行说明。
289 0
|
Ubuntu 安全 Linux
Linux系统-Ubuntu的下载和安装 软件大全
在庄子看来,生老病死就像四时交替,都只是自然现象而已,人不必有什么忧虑,也不必有什么痛苦。人源于自然,再回归自然,说到底,不过是正常的生死轮转,他依然在天地之间,只要怀着这样的想法,人又有什么好痛苦的呢。
|
Ubuntu Linux Windows
Ubuntu Linux 24.04 LTS 发行版现已开放下载
Ubuntu 24.04 采用了 Linux 6.8 内核,可利用 Netplan 在桌面上配置网络连接,还配备了现代化的桌面操作系统安装程序,还带来了新版 Ubuntu 字体以及各种性能优化以及大量新功能。
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
3812 0
|
数据挖掘 Linux 数据库
服务器数据恢复—Linux系统服务器数据恢复案例
服务器数据恢复环境: linux操作系统服务器中有一组由4块SAS接口硬盘组建的raid5阵列。 服务器故障: 服务器工作过程中突然崩溃。管理员将服务器操作系统进行了重装。 用户方需要恢复服务器中的数据库、办公文档、代码文件等。
|
JavaScript Linux Python
在Linux服务器中遇到的立即重启后的绑定错误:地址已被使用问题解决
总的来说,解决"地址已被使用"的问题需要理解Linux的网络资源管理机制,选择合适的套接字选项,以及合适的时间点进行服务重启。以上就是对“立即重启后的绑定错误:地址已被使用问题”的全面解答。希望可以帮你解决问题。
730 20