把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上,实现本地脱机离线下载,也不失为好方法。

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


相关文章
|
28天前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
3月前
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
483 21
|
2月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
288 13
|
3月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
184 18
|
2月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
190 0
|
2月前
|
存储 安全 Linux
Linux服务器上安装配置GitLab的步骤。
按照以上步骤,一个基础的GitLab服务应该运行并可以使用。记得定期检查GitLab官方文档,因为GitLab的安装和配置步骤可能随着新版本而变化。
233 0
|
4月前
|
存储 安全 Ubuntu
从Linux到Windows:阿里云服务器系统镜像适配场景与选择参考
阿里云为用户提供了丰富多样的服务器操作系统选择,以满足不同场景下的应用需求。目前,云服务器的操作系统镜像主要分为公共镜像、自定义镜像、共享镜像、镜像市场和社区镜像五大类。以下是对这些镜像类型的详细介绍及选择云服务器系统时需要考虑的因素,以供参考。
|
3月前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
186 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
2月前
|
监控 Linux 网络安全
Linux命令大全:从入门到精通
日常使用的linux命令整理
641 13
|
3月前
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree